Green's Function calculation: Superconducting
In this module ed_gf_superc
the interacting impurity Green's
functions \(\hat{G}(z)\) are evaluated for ed_mode
=
superc
.
Briefly, for any eigenstate \(|n\rangle\) in the state_list
contributing to
the low energy part of the Hamiltonian spectrum the normal Green's functions:
and the anomalous ones
are evaluated using dynamical Lanczos method: a) the partial tridiagonalization of the sector Hamiltonian \(H\) with quantum numbers \(\vec{Q}=S_z = N_\uparrow-N\downarrow\) on the Krylov basis of \(c|n\rangle\) or \(c^\dagger|n\rangle\) is obtained; b) the resulting tridiagonal matrix is further diagonalized to obtained excitations amplitudes or weights \(\langle m | c_{a\sigma} | n \rangle\) or \(\langle m | c^\dagger_{a\sigma} | n \rangle\) for any state \(| m \rangle\) in the spectrum (without knowing the state itself ) and the excitations energies \(\delta E = E_m - E_n\) or poles; c) an controlled approximation to the Kallen-Lehmann sum is constructed for any value of \(z\in{\mathbb C}\) and \(a,b=1,\dots,N_{\rm orb}\), \(\sigma=\uparrow,\downarrow\).
A similar procedure is employed to evaluate the phonons Green's functions:
where \(x = (b+b^\dagger)\) and \(b\) (\(b^\dagger\)) is the phonon destruction (creation) operator.
While the Green's functions are evaluated in a given set of Matsubara
impgmats
, impdmats
and Real-axis points
impgreal
, impdreal
, the weights and the poles
obtained in this calculation are stored in a dedicated data
structure gfmatrix
for a fast recalculation on any given
intervals of frequencies in the complex plane.
Finally, the self-energy functions are constructed using impurity Dyson equation \(\hat{\hat{\Sigma}}(z) = \hat{\hat{G}}^{-1}_0(z) - \hat{\hat{G}}^{-1}(z)\), where the \(\hat{\hat{}}\) symbol indicates matrices in the orbital and Nambu space, i.e.
Quick access
- Routines:
build_impg_superc()
,get_impd_superc()
,get_impf_superc()
,get_impg_superc()
,get_self_superc()
,get_sigma_superc()
Used modules
ed_input_vars
: User-accessible input variablesed_vars_global
: Global variable accessible throughout the codeed_aux_funx
: Assortment of auxiliary procedures required throughout the codeed_eigenspace
: Data types for the eigenspaceed_bath
: Routines for bath creation and manipulationed_setup
: Routines for solver environment initialization and finalizationed_sector
: Routines for Fock space sectors creation and manipulationed_hamiltonian_superc
: Routines for Hamiltonian construction,SUPERC
case
External modules
Subroutines and functions
- subroutine ed_gf_superc/build_impg_superc()
- Use :
- function ed_gf_superc/get_impg_superc(zeta[, axis])
- function ed_gf_superc/get_impf_superc(zeta[, axis])
- function ed_gf_superc/get_impd_superc(zeta[, axis])
- Parameters:
zeta (•) [complex, in]
- Options:
axis [character(len=*)] – only for self-consistency, not used here
- Result:
g (size(zeta)) [complex]
- Use :
- function ed_gf_superc/get_sigma_superc(zeta[, axis])
- function ed_gf_superc/get_self_superc(zeta[, axis])