Bath data structure
In ED_VARS_GLOBAL
we implemented a suitable data structure to encapsulate the effective bath of the quantum impurity problem.
Description
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.
Quick access
- Types:
- Variables:
Used modules
-
ed_sparse_matrix
: This class defines a data structure to efficiently store sparse matrices into dedicated CSR matrices, featuring support to MPI parallel storage, so that each matrix is spread across the threads.ed_input_vars
: Contains all global input variables which can be set by the user through the input file. A specific preocedureed_read_input()
should be called to read the input file usingparse_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).mpi
Types
- type ed_vars_global/effective_bath_component
Effective bath component for the replica/general bath. Each istance of this type defines the parameters \(\vec{\lambda}\) and the amplitudes \(\vec{V}\). The first is used to decompose the Hamiltonian of each element of the bath \(H_p=\sum_{i=1}^{N_{basis}} \lambda_i(p) O_i\), the latter describes the hopping from/to the impurity.
- Type fields:
lambda (•) [real, allocatable] – [
nsym
]v [real]
vg (•) [real, allocatable]
- type ed_vars_global/effective_bath
This structure describes the (effective) discretized bath used in the contruct the Hamiltonian of the quantum impurity system. Each element of this structure is allocated and used according the value of
ed_mode
=normal,superc,nonsu2
andbath_type
=normal,hybrid,replica,general
.- Type fields:
d (•, •, •) [real, allocatable] – SC amplitues [
nspin
][norb
][nbath
]/[norb
][1
][norb
]e (•, •, •) [real, allocatable] – local energies [
nspin
][norb
][bath
]/[nspin
][1
][nspin
]item (•) [effective_bath_component, allocatable] – [
nbath
] Replica/General bath components, V includednbasis [integer] – The replica/general Matrix basis dimension
status [logical, optional/default=.false.]
u (•, •, •) [real, allocatable] – spin-flip hyb. [
nspin
][norb
][nbath
] fored_mode
=nonsu2
v (•, •, •) [real, allocatable] – spin-keep hyb. [
nspin
][norb
][nbath
]
Variables
- ed_vars_global/dmft_bath [effective_bath]
instance of
effective_bath
used to store the quantum impurity effective bath in the rest of the code