BSE

Parameters for a calculation solving the Bethe-Salpeter equation (BSE) for electronic excitations. The full BSE \(\left( \begin{array}{cc}A & B\\B & A\end{array} \right)\) \(\left( \begin{array}{cc}\mathbf{X}^{(n)}\\\mathbf{Y}^{(n)}\end{array} \right) = \Omega^{(n)}\left(\begin{array}{cc}1&0\\0&-1\end{array}\right)\) \(\left(\begin{array}{cc}\mathbf{X}^{(n)}\\\mathbf{Y}^{(n)}\end{array}\right)\) enables, for example, the computation of electronic excitation energies \(\Omega^{(n)}\) as well as optical properties. The BSE can be solved by diagonalizing the full ABBA-matrix or by setting B=0, i.e. within the Tamm-Dancoff approximation (TDA). Preliminary reference: Eq. (35) in PRB 92, 045209 (2015); http://dx.doi.org/10.1103/PhysRevB.92.045209 [Edit on GitHub]

Keywords

Keyword descriptions

SECTION_PARAMETERS: logical = F

Lone keyword: T

Usage: &BSE .TRUE.

Activates BSE calculations. [Edit on GitHub]

BSE_DEBUG_PRINT: logical = F

Lone keyword: T

Usage: BSE_DEBUG_PRINT .TRUE.

Activates debug print statements in the BSE calculation. [Edit on GitHub]

BSE_DIAG_METHOD: enum = FULLDIAG

Usage: BSE_DIAG_METHOD FULLDIAG

Valid values:

  • FULLDIAG Fully diagonalizes the BSE matrices within the chosen level of approximation.

  • ITERDIAG Iterative diagonalization has not been implemented yet.

Method for BSE calculations. Choose between full or iterative diagonalization. [Edit on GitHub]

ENERGY_CUTOFF_EMPTY: real = -2.72113839E+001 [eV]

Usage: ENERGY_CUTOFF_EMPTY 10.0

Remove all orbitals with indices a,b from A_ia,jb and B_ia,jb with energy difference to LUMO level larger than the given energy cutoff, i.e. \(\varepsilon_a\in[\varepsilon_{a=\text{LUMO}}^{GW},\varepsilon_{a=\text{LUMO}}^{GW}+E_\text{cut}^\text{empty}]\). Can be used to accelerate runtime and reduce memory consumption. [Edit on GitHub]

ENERGY_CUTOFF_OCC: real = -2.72113839E+001 [eV]

Usage: ENERGY_CUTOFF_OCC 10.0

Remove all orbitals with indices i,j from A_ia,jb and B_ia,jb with energy difference to HOMO level larger than the given energy cutoff, i.e. \(\varepsilon_i\in[\varepsilon_{i=\text{HOMO}}^{GW}-E_\text{cut}^\text{occ},\varepsilon_{i=\text{HOMO}}^{GW}]\). Can be used to accelerate runtime and reduce memory consumption. [Edit on GitHub]

EPS_X: real = 1.00000000E-001

Usage: EPS_X 0.1

Threshold for printing contributions of singleparticle transitions, i.e. elements of the eigenvectors \(X_{ia}^{(n)}\) and \(Y_{ia}^{(n)}\). [Edit on GitHub]

NUM_PRINT_EXC: integer = 25

Usage: NUM_PRINT_EXC 25

Number of printed excitation levels with respective energies and oscillator strengths. Does not affect computation time. [Edit on GitHub]

NUM_PRINT_EXC_DESCR: integer = 0

Usage: NUM_PRINT_EXC_DESCR 5

Number of excitation levels for which the exciton descriptors are computed. Negative or too large NUM_PRINT_EXC_DESCR defaults to NUM_PRINT_EXC. [Edit on GitHub]

PRINT_DIRECTIONAL_EXC_DESCR: logical = F

Lone keyword: T

Usage: PRINT_DIRECTIONAL_EXC_DESCR .TRUE.

Activates printing of exciton descriptors per direction. [Edit on GitHub]

SPIN_CONFIG: enum = SINGLET

Usage: SPIN_CONFIG TRIPLET

Valid values:

  • SINGLET Computes singlet excitations.

  • TRIPLET Computes triplet excitations.

Choose between calculation of singlet or triplet excitation (cf. given Reference above). [Edit on GitHub]

TDA: enum = ON

Usage: TDA ON

Valid values:

  • ON The TDA is applied, i.e. B=0.

  • OFF The ABBA-matrix is diagonalized, i.e. the TDA is not applied.

  • TDA+ABBA The BSE is solved within the TDA (B=0) as well as for the full ABBA-matrix.

Level of approximation applied to BSE calculations. Choose between Tamm Dancoff approximation (TDA) and/or diagonalization of the full ABBA-matrix. [Edit on GitHub]

USE_KS_ENERGIES: logical = F

Lone keyword: T

Usage: USE_KS_ENERGIES .TRUE.

Uses KS energies instead of GW quasiparticle energies. [Edit on GitHub]