Skip to content

W90 parser fix + new user options#34

Open
GuiJanone wants to merge 11 commits into
xatu-code:masterfrom
GuiJanone:master
Open

W90 parser fix + new user options#34
GuiJanone wants to merge 11 commits into
xatu-code:masterfrom
GuiJanone:master

Conversation

@GuiJanone

Copy link
Copy Markdown
Contributor
  • This pull request addresses issue degeneracy #33 about the degeneracy in fock matrices off the _tb.dat wannier90 hamiltonian.
    Now the parser adjusts accordingly, just like Wannier90 does itself with fockMatrices.slice(i) /= Degen(i);.

  • This pull request also includes the same features as in pull request Energy cutoff for exporting BSE eigensystem #32:
    Implements a CLI flag -t, --encut that enhances the previous -n, --states flag, allowing the user to choose the number of excitons written in .eigval and .states based on their energy, instead of index.

  • This pull request also solves an issue with kubo_w.f90 that previously broke when the kubo_w.in file was not present in the folder.
    Now, when using the -a flag, the code checks if kubo_w.in exists, and if not it writes the full BSE hamiltoinian eigenvalues and oscillator strengths as described in the documentation

En Re(Vx) Im(Vx) Re(Vy) Im(Vy) Re(Vz) Im(Vz)

  • Lastly, the tests.cpp was updates since the parser changed, thus changing the expected hashes.

mauricioquintela and others added 9 commits February 13, 2026 10:16
Implements a CLI flag "-t" or "--encut" that enhances the previous
--states flag for setting a number of states to export by exporting the
eigensystem up to an energy set via this flag. Energy cutoff takes
priority over number of states cutoff, making it easier to export the
states needed to study optical response up to a specific frequency.
Energy cutoff for exporting BSE eigensystem
dielectric constant of material parameter
@mauricioquintela

mauricioquintela commented Jun 2, 2026

Copy link
Copy Markdown
Member

Had to add the kubo fixes in this PR, it would simply fail and output NaN if the system was 1D (or 2D oriented in any other plane than xy). Now the volume of the cell is computed correctly based on the dimensionality of the system, plus the "finite direction" is treated correctly if not set along z.

All tests pass as the computation remains the same for 2D systems

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants