Bath Dimension routines
Description
Returns or check the dimensions to which the user should allocate the bath array.
Quick access
- Routines:
Used modules
-
-
-
-
-
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).ed_vars_global
: Contains all variables, arrays and derived types instances shared throughout the code. Specifically, it contains definitions of theeffective_bath
, thegfmatrix
and thesector
data structures.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 Hamiltonianed_bath_aux
: Implements a number of auxiliary procedures used to construct replica/general bath
Subroutines and functions
- interface ed_bath_dim/get_bath_dimension(nsym[, h_nn])
Returns the dimension
bath_size
to which the user should allocate the user bath array to contains all the parameters according to the provided input variables. The value is obtained counting all the electronic levels of the system compatible with the operational modeed_mode
, the bath topology specified bybath_type
, the values ofnorb
,nbath
andnspin
.If
bath_type
is replica/general then a input matrixh_nn
can be used to count the number of parameters, corresponding to its non-zero elements. In alternative the bath size can be estimated by the number of parameters in the linear decomposition of the bath local Hamiltoniannsym
such that \(h^p=\sum_{i=1}^{N_{sym}}\lambda^{p}_{i} O_{i}\).
- function ed_bath_dim/check_bath_dimension(bath_)
Checks the user bath
bath_
on input has the correct dimensions according to the choice of input parameters for the calculations.- Parameters:
bath_ (•) [real] – user-accessible bath array
- Return:
bool [logical]