Exciton Susceptibility

In ed_chi_exct we evaluate the impurity exciton-exciton susceptibility, defined as:

\[\chi^{X}_{ab}(\omega) = \langle {X}^\dagger_{ab}(\omega) X_{ab}(\omega) \rangle = \frac{1}{\cal Z}\sum_m e^{-\beta E_m} \langle m | X^\dagger_{ab} [\omega-H]^{-1} X_{ab} | m \rangle\]

where \(X_{ab}=S_{ab},T^x_{ab},T^y_{ab},T^z_{ab}\) are, respectively, the singlet and triplet \(x,y,z\) exciton operators:

\[\begin{split}S_{ab} & = \sum_{rs} c^\dagger_{ar} \sigma^0_{rs} c_{bs}\\ T^x_{ab} & = \sum_{rs} c^\dagger_{ar} \sigma^x_{rs} c_{bs}\\ T^y_{ab} & = \sum_{rs} c^\dagger_{ar} \sigma^y_{rs} c_{bs}\\ T^z_{ab} & = \sum_{rs} c^\dagger_{ar} \sigma^z_{rs} c_{bs}\end{split}\]

and \(\omega \in {\mathbb C}\). As for the Green’s functions, the susceptibility is evaluated using the dynamical Lanczos method: a) the partial tridiagonalization of the sector Hamiltonian \(H\) with quantum numbers \(\vec{Q}=[\vec{N}_\uparrow,\vec{N}_\downarrow]\) on the Krylov basis of \(X_{ab}|m\rangle\) is obtained; b) the resulting tridiagonal matrix is further diagonalized to obtained excitations amplitudes or weights \(\langle p | X_{ab} | m \rangle\) for any state \(| p \rangle\) in the spectrum (without knowing the state itself ) and the excitations energies \(\delta E = E_p - E_m\) or poles; c) an controlled approximation to the Kallen-Lehmann sum is constructed for \(a,b=1,\dots,N_{\rm orb}\).

Description

Evaluates the impurity excitonc susceptibility.

Quick access

Routines:

build_chi_exct_normal()

Used modules

  • sf_constants

    • one()

    • xi()

    • zero

    • pi()

  • sf_timer

  • sf_iotools

  • sf_linalg

  • sf_sp_linalg

    • sp_lanc_tridiag()

  • ed_input_vars: Contains all global input variables which can be set by the user through the input file. A specific preocedure ed_read_input() should be called to read the input file using parse_input_variable() procedure from SciFortran. All variables are automatically set to a default, looked for and updated by reading into the file and, sequentially looked for and updated from command line (std.input) using the notation variable_name=variable_value(s) (case independent).

  • ed_vars_global: Contains all variables, arrays and derived types instances shared throughout the code. Specifically, it contains definitions of the effective_bath, the gfmatrix and the sector data structures.

  • ed_io: Contains a set of routines that retrieve quantities such as Green’s functions, self-energies (see ed_greens_functions ) and observables (from ed_observables ) and pass them to the user, as well ass routines to read and store Green’s function and self-energies.

  • ed_eigenspace: A class implementing a data structure to efficiently store the low part of the Fock space spectrum, automatically spreading and retrieving the eigenstates among/from MPI threads.

  • ed_bath: Contains routines for setting, accessing, manipulating and clearing the bath of the Impurity problem.

  • ed_setup: Contains procedures to set up the Exact Diagonalization calculation, executing all internal consistency checks and allocation of the global memory.

  • ed_sector: Contains procedures to construct the symmetry sectors corresponding to a given set of quantum numbers \(\vec{Q}\), in particular it allocated and build the sector_map connecting the states of a given sector with the corresponding Fock ones.

  • ed_hamiltonian_normal: Setup and build the sector Hamiltonian, returns the correct dimension of the vectors in the Arpack/Lanczos procedure in each thread and provides an interface to Tri-Diagonalize the Hamiltonian on a Krylov basis given a starting vector.

  • ed_aux_funx: Hosts a number of auxiliary procedures required in different parts of the code. Specifically, it implements: creation/annihilation fermionic operators, binary decomposition of integer representation of Fock states and setup the local impurity Hamiltonian

Subroutines and functions

subroutine  ed_chi_exct/build_chi_exct_normal()

Evaluates the impurity exciton-exciton susceptibility \(\chi^{X}_{ab}=\langle T_\tau X^\dagger_{ab}(\tau) X_{ab}\rangle\) in the Matsubara \(i\omega_n\) and Real \(\omega\) frequency axis, the imaginary time \(\tau\) as well as the singlet and triplet components of the operator.

As for the Green’s function, the off-diagonal component of the the susceptibility is determined using an algebraic manipulation to ensure use of Hermitian operator in the dynamical Lanczos.