pengWann

**pengWann** is a lightweight Python package designed to bridge the gap between abstract Wannier functions and chemical intuition. It post-processes **Wannier90** outputs to extract quantitative descriptors of chemical bonding and local…

4. TIGHT-BINDING 4.1 Wannier Ecosystem VERIFIED
Back to Mind Map Official Website

Overview

**pengWann** is a lightweight Python package designed to bridge the gap between abstract Wannier functions and chemical intuition. It post-processes **Wannier90** outputs to extract quantitative descriptors of chemical bonding and local electronic structure, such as bond populations and orbital indices. By treating Wannier functions as a localized basis, it allows for "Löwdin-like" population analysis on plane-wave DFT results without the basis set spilling issues associated with projection onto

Reference Papers

Reference papers are not yet linked for this code.

Full Documentation

Official Resources

  • Homepage: https://pengwann.readthedocs.io/
  • Repository: https://github.com/PatrickJTaylor/pengwann
  • License: Open Source (GPL or MIT check repo).
  • Developers: Patrick J. Taylor et al.

Overview

pengWann is a lightweight Python package designed to bridge the gap between abstract Wannier functions and chemical intuition. It post-processes Wannier90 outputs to extract quantitative descriptors of chemical bonding and local electronic structure, such as bond populations and orbital indices. By treating Wannier functions as a localized basis, it allows for "Löwdin-like" population analysis on plane-wave DFT results without the basis set spilling issues associated with projection onto atomic orbitals.

Scientific domain: Computational chemistry, solid-state physics, chemical bonding analysis. Target user community: Chemists and physicists interested in bonding origins, bond strengths, and local environments in solids.

Theoretical Methods

  • Wannier Basis Representation: Uses Maximally Localized Wannier Functions (MLWFs) as the basis $\phi_i(r)$.
  • COHP/COBI Analogues:
    • WOHP (Wannier Orbital Hamilton Population): Energy-resolved analysis of bonding/antibonding interactions.
    • WOBI (Wannier Orbital Bond Index): Integrated measure of bond strength between Wannier orbitals.
    • pDOS (Projected Density of States): Projected onto Wannier centers.
  • Löwdin Charges: Population analysis based on the orthogonal Wannier basis (where overlap $S=I$).

Capabilities

  • Bond Analysis: Quantify the strength and character (bonding/antibonding) of interactions between specific Wannier functions (e.g., representing bonds or lone pairs).
  • Population Analysis: Calculate effective charges and populations of Wannier orbitals.
  • Spilling-Free: Unlike LOBSTER (which projects PW to atom-centered orbitals), pengWann operates directly in the Wannier basis, so no information is lost ("spilling is strictly zero") for the computed bands.
  • Visualization: Plot energy-resolved WOHP curves to identify stabilizing/destabilizing interactions.

Key Strengths

  • Accuracy: Zero projection error (spilling) because MLWFs span the exact Hilbert space of the selected bands.
  • Chemical Intuition: Translates delocalized Bloch states into chemically meaningful local bond descriptors.
  • Ease of Use: Pure Python package with simple installation via pip.
  • Wannier90 Integration: Works directly with standard _hr.dat and _centres.xyz outputs.

Inputs & Outputs

  • Inputs:
    • wannier90_hr.dat (Hamiltonian in real space).
    • wannier90.wout (Output file with centers/spreads).
    • wannier90.eig (Eigenvalues).
  • Outputs:
    • WOHP / WOBI data files.
    • Plots of bonding populations vs energy.
    • Löwdin charge analysis reports.

Interfaces & Ecosystem

  • Wannier90: The primary engine providing the input quantities.
  • Python: Fully scriptable in Python, allowing integration into high-throughput workflows.

Performance Characteristics

  • Speed: Calculation of WOHP/WOBI involves summation over k-points and matrix operations; generally very fast for standard unit cells.
  • Parallelism: Efficient implementation (often serial or threaded via NumPy) sufficient for post-processing.

Comparison with Other Codes

  • vs [LOBSTER](file:///home/niel/git/Indranil2020.github.io/scientific_tools_consolidated/TightBinding/4.1_Wannier_Ecosystem/LOBSTER.md): LOBSTER projects plane waves onto atomic orbitals (pCOHP) which has "spilling" error; pengWann uses Wannier orbitals (WOHP) which has zero spilling but requires generating MLWFs first.
  • vs [Wannier90](file:///home/niel/git/Indranil2020.github.io/scientific_tools_consolidated/TightBinding/4.1_Wannier_Ecosystem/Wannier90.md): Wannier90 generates the functions; pengWann analyzes the interactions between them.

Application Areas

  • Materials Design: Understanding bond strengthening/weakening mechanism under strain or doping.
  • Catalysis: Analyzing active site orbital interactions.
  • Phase Transitions: Monitoring changes in bonding character across structural transitions (e.g., Peierls distortion).

Verification & Sources

  • Primary Source: pengWann Documentation
  • Citation: (Refer to repository for latest publication status).
  • Verification Status: ✅ VERIFIED.

Related Tools in 4.1 Wannier Ecosystem