EDIpack Fortran-C interface: Functionsο
The following is a list of EDIpack functions which are accessible from the C interface
Functions
-
void read_input(char *instr)ο
This function reads the input. Interfaces to
ed_read_input()- Parameters:
instr β the input file name
-
void ed_set_Hloc_single_N2(std::complex<double> *Hloc, std::complex<double> *Hloc_anomalous, int64_t *d)ο
This function sets the local Hamiltonian. Interfaces to
ed_aux_funx/ed_set_Hloc(). Rank-2 array variant for single-site DMFT- Parameters:
Hloc β the local Hamiltonian
Hloc_anomalous β the local anomalous Hamiltonian (for SC)
d β array of dimensions of the local Hamiltonian
-
void ed_set_Hloc_single_N4(std::complex<double> *Hloc, std::complex<double> *Hloc_anomalous, int64_t *d)ο
This function sets the local Hamiltonian. Interfaces to
ed_aux_funx/ed_set_Hloc(). Rank-4 array variant for single-site DMFT.- Parameters:
Hloc β the local Hamiltonian
Hloc_anomalous β the local anomalous Hamiltonian (for SC)
d β array of dimensions of the local Hamiltonian
-
void ed_set_Hloc_lattice_N2(std::complex<double> *Hloc, std::complex<double> *Hloc_anomalous, int64_t *d, int Nlat)ο
This function sets the local Hamiltonian. Interfaces to
e2i_aux_funx/ed_set_Hloc(). Rank-2 array variant for real-space DMFT.- Parameters:
Hloc β the local Hamiltonian
Hloc_anomalous β the local anomalous Hamiltonian (for SC)
d β array of dimensions of the local Hamiltonian
Nlat β number of inequivalent sites
-
void ed_set_Hloc_lattice_N3(std::complex<double> *Hloc, std::complex<double> *Hloc_anomalous, int64_t *d, int Nlat)ο
This function sets the local Hamiltonian. Interfaces to
e2i_aux_funx/ed_set_Hloc(). Rank-3 array variant for real-space DMFT.- Parameters:
Hloc β the local Hamiltonian
Hloc_anomalous β the local anomalous Hamiltonian (for SC)
d β array of dimensions of the local Hamiltonian
Nlat β number of inequivalent sites
-
void ed_set_Hloc_lattice_N5(std::complex<double> *Hloc, std::complex<double> *Hloc_anomalous, int64_t *d, int Nlat)ο
This function sets the local Hamiltonian. Interfaces to
e2i_aux_funx/ed_set_Hloc(). Rank-5 array variant for real-space DMFT.- Parameters:
Hloc β the local Hamiltonian
Hloc_anomalous β the local anomalous Hamiltonian (for SC)
d β array of dimensions of the local Hamiltonian
Nlat β number of inequivalent sites
-
int get_bath_dimension_direct(void)ο
This function gets the dimension of the user-accessible bath array. Interfaces to
get_bath_dimension().- Returns:
the dimension of the bath array
-
int get_bath_dimension_symmetries(int Nsym)ο
This function gets the dimension of the user-accessible bath array. Specific for replica and general baths. Interfaces to
get_bath_dimension().- Parameters:
Nsym β the number of components of the replica matrix linear combination
- Returns:
the dimension of the bath array
-
void search_variable(double *var, double *ntmp, int64_t *converged)ο
This function updates a variable (usually the chemical potential) trying to achieve a desired density set by
nread. Interfaces toed_search_variable().- Parameters:
var β the variable to be adjusted
ntmp β the density value at a given iteration
converged β the DMFT loop convergence status.
-
void ed_set_A_ph(double *A_new)ο
This function sets the phonon displacement field. Interfaces to
ed_set_A_ph().- Parameters:
A_new β the new displacement field
-
void ed_set_G_ph(std::complex<double> *G_new)ο
This function sets the electron-phonon coupling. Interfaces to
ed_set_G_ph().- Parameters:
G_new β the new coupling matrix
-
void init_Hreplica_symmetries_d3(std::complex<double> *Hvec, int64_t *d_hvec, double *lambdavec, int64_t *d_lambdavec)ο
This function sets the replica bath H. Interfaces to
ed_bath_replica/set_hreplica(). Rank-3 array case for single-site DMFT.- Parameters:
Hvec β array of matrices summing up to the replica H
d_hvec β dimensions of the array of matrices
lambdavec β array of coefficients of the array linear combination
d_lambdavec β dimensions of the array of coefficients
-
void init_Hreplica_symmetries_d5(std::complex<double> *Hvec, int64_t *d_hvec, double *lambdavec, int64_t *d_lambdavec)ο
This function sets the replica bath H. Interfaces to
ed_bath_replica/set_hreplica(). Rank-5 array case for single-site DMFT.- Parameters:
Hvec β array of matrices summing up to the replica H
d_hvec β dimensions of the array of matrices
lambdavec β array of coefficients of the array linear combination
d_lambdavec β dimensions of the array of coefficients
-
void init_Hgeneral_symmetries_d3(std::complex<double> *Hvec, int64_t *d_hvec, double *lambdavec, int64_t *d_lambdavec)ο
This function sets the general bath H. Interfaces to
ed_bath_replica/set_hgeneral(). Rank-3 array case for single-site DMFT.- Parameters:
Hvec β array of matrices summing up to the general H
d_hvec β dimensions of the array of matrices
lambdavec β array of coefficients of the array linear combination
d_lambdavec β dimensions of the array of coefficients
-
void init_Hgeneral_symmetries_d5(std::complex<double> *Hvec, int64_t *d_hvec, double *lambdavec, int64_t *d_lambdavec)ο
This function sets the general bath H. Interfaces to
ed_bath_replica/set_hgeneral(). Rank-5 array case for single-site DMFT.- Parameters:
Hvec β array of matrices summing up to the general H
d_hvec β dimensions of the array of matrices
lambdavec β array of coefficients of the array linear combination
d_lambdavec β dimensions of the array of coefficients
-
void init_Hreplica_symmetries_lattice_d3(std::complex<double> *Hvec, int64_t *d_hvec, double *lambdavec, int64_t *d_lambdavec)ο
This function sets the replica bath H. Interfaces to
e2i_bath_replica/set_hreplica(). Rank-3 array case for real-space DMFT.- Parameters:
Hvec β array of matrices summing up to the replica H
d_hvec β dimensions of the array of matrices
lambdavec β array of coefficients of the array linear combination
d_lambdavec β dimensions of the array of coefficients
-
void init_Hreplica_symmetries_lattice_d5(std::complex<double> *Hvec, int64_t *d_hvec, double *lambdavec, int64_t *d_lambdavec)ο
This function sets the replica bath H. Interfaces to
e2i_bath_replica/set_hreplica(). Rank-5 array case for real-space DMFT.- Parameters:
Hvec β array of matrices summing up to the replica H
d_hvec β dimensions of the array of matrices
lambdavec β array of coefficients of the array linear combination
d_lambdavec β dimensions of the array of coefficients
-
void init_Hgeneral_symmetries_lattice_d3(std::complex<double> *Hvec, int64_t *d_hvec, double *lambdavec, int64_t *d_lambdavec)ο
This function sets the general bath H. Interfaces to
e2i_bath_replica/set_hgeneral(). Rank-3 array case for real-space DMFT.- Parameters:
Hvec β array of matrices summing up to the general H
d_hvec β dimensions of the array of matrices
lambdavec β array of coefficients of the array linear combination
d_lambdavec β dimensions of the array of coefficients
-
void init_Hgeneral_symmetries_lattice_d5(std::complex<double> *Hvec, int64_t *d_hvec, double *lambdavec, int64_t *d_lambdavec)ο
This function sets the general bath H. Interfaces to
e2i_bath_replica/set_hgeneral(). Rank-5 array case for real-space DMFT.- Parameters:
Hvec β array of matrices summing up to the general H
d_hvec β dimensions of the array of matrices
lambdavec β array of coefficients of the array linear combination
d_lambdavec β dimensions of the array of coefficients
-
void break_symmetry_bath_site(double *bath, int64_t *dim_bath, double field, double sgn, int sav)ο
This function breaks the bath symmetry. Interfaces to
ed_bath_user/break_symmetry_bath(). Single-site DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
field β symmetry breaking field
sgn β sign of the symmetry breaking field
sav β integer flag to save the output bath.
1if true,0if false.
-
void break_symmetry_bath_ineq(double *bath, int64_t *dim_bath, double field, double *sgn, int sav)ο
This function breaks the bath symmetry. Interfaces to
e2i_bath_user/break_symmetry_bath(). Real-space DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath and sign array
field β symmetry breaking field
sgn β array of signs of the symmetry breaking field
sav β integer flag to save the output bath.
1if true,0if false.
-
void spin_symmetrize_bath_site(double *bath, int64_t *dim_bath, int sav)ο
This function enforces a paramagnetic bath Interfaces to
ed_bath_user/spin_symmetrize_bath(). Single-site DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath and sign array
sav β integer flag to save the output bath.
1if true,0if false.
-
void spin_symmetrize_bath_ineq(double *bath, int64_t *dim_bath, int sav)ο
This function enforces a paramagnetic bath Interfaces to
e2i_bath_user/spin_symmetrize_bath(). Real-space DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
sav β integer flag to save the output bath.
1if true,0if false.
-
void orb_symmetrize_bath_site(double *bath, int64_t *dim_bath, int orb1, int orb2, int sav)ο
This function enforces an orbital-symmetric bath. Interfaces to
ed_bath_user/orb_symmetrize_bath(). Single-site DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
orb1 β first orbital to symmetrize
orb2 β second orbital to symmetrize
sav β integer flag to save the output bath.
1if true,0if false.
-
void orb_symmetrize_bath_ineq(double *bath, int64_t *dim_bath, int orb1, int orb2, int sav)ο
This function enforces an orbital-symmetric bath. Interfaces to
e2i_bath_user/orb_symmetrize_bath(). Real-space DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
orb1 β first orbital to symmetrize
orb2 β second orbital to symmetrize
sav β integer flag to save the output bath.
1if true,0if false.
-
void orb_equality_bath_site(double *bath, int64_t *dim_bath, int indx, int sav)ο
This function enforces an orbita-symmetric bath. Interfaces to
ed_bath_user/orb_symmetrize_bath(). Single-site DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
indx β index of the orbital to copy
sav β integer flag to save the output bath.
1if true,0if false.
-
void orb_equality_bath_ineq(double *bath, int64_t *dim_bath, int indx, int sav)ο
This function enforces an orbita-symmetric bath. Interfaces to
e2i_bath_user/orb_symmetrize_bath(). Real-space DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
indx β index of the orbital to copy
sav β integer flag to save the output bath.
1if true,0if false.
-
void ph_symmetrize_bath_site(double *bath, int64_t *dim_bath, int sav)ο
This function enforces a particle-hole symmetric bath. Interfaces to
ed_bath_user/ph_symmetrize_bath(). Single-site DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
sav β integer flag to save the output bath.
1if true,0if false.
-
void ph_symmetrize_bath_ineq(double *bath, int64_t *dim_bath, int sav)ο
This function enforces a particle-hole symmetric bath. Interfaces to
e2i_bath_user/ph_symmetrize_bath(). Real-space DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
sav β integer flag to save the output bath.
1if true,0if false.
-
void save_array_as_bath_site(double *bath, int64_t *dim_bath)ο
This function saves the bath array in a properly formatted file. Interfaces to
ed_bath_user/save_array_as_bath(). Single-site DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
-
void save_array_as_bath_ineq(double *bath, int64_t *dim_bath)ο
This function saves the bath array in a properly formatted file. Interfaces to
e2i_bath_user/save_array_as_bath(). Real-space DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
-
void chi2_fitgf_single_normal_n3(std::complex<double> *g, int64_t *dim_g, double *bath, int64_t *dim_bath, int ispin, int iorb, int fmpi)ο
This function fits the Weiss field or hybridization function. Interfaces to
ed_bath_fit/ed_chi2_fitgf(). Single-site DMFT variant forED_MODE=NORMAL/NONSU2and rank-3 arrays.- Parameters:
g β function to fit
dim_g β dimensions of the function to fit
bath β user-accessible bath array
dim_bath β dimensions of the bath array
ispin β spin index
iorb β orbital index. If
0, the fortran function is called withoutiorbfmpi β integer flag to enable mpi.
1forTrue,0forFalse
-
void chi2_fitgf_single_normal_n5(std::complex<double> *g, int64_t *dim_g, double *bath, int64_t *dim_bath, int ispin, int iorb, int fmpi)ο
This function fits the Weiss field or hybridization function. Interfaces to
ed_bath_fit/ed_chi2_fitgf(). Single-site DMFT variant forED_MODE=NORMAL/NONSU2and rank-5 arrays.- Parameters:
g β function to fit
dim_g β dimensions of the function to fit
bath β user-accessible bath array
dim_bath β dimensions of the bath array
ispin β spin index
iorb β orbital index. If
0, the fortran function is called withoutiorbfmpi β integer flag to enable mpi.
1forTrue,0forFalse
-
void chi2_fitgf_single_superc_n3(std::complex<double> *g, int64_t *dim_g, std::complex<double> *f, int64_t *dim_f, double *bath, int64_t *dim_bath, int ispin, int iorb, int fmpi)ο
This function fits the Weiss field or hybridization function. Interfaces to
ed_bath_fit/ed_chi2_fitgf(). Single-site DMFT variant forED_MODE=SUPERCand rank-3 arrays.- Parameters:
g β function to fit, normal component
dim_g β dimensions of the function to fit, normal component
f β function to fit, anomalous component
dim_f β dimensions of the function to fit, anomalous component
bath β user-accessible bath array
dim_bath β dimensions of the bath array
ispin β spin index
iorb β orbital index. If
0, the fortran function is called withoutiorbfmpi β integer flag to enable mpi.
1forTrue,0forFalse
-
void chi2_fitgf_single_superc_n5(std::complex<double> *g, int64_t *dim_g, std::complex<double> *f, int64_t *dim_f, double *bath, int64_t *dim_bath, int ispin, int iorb, int fmpi)ο
This function fits the Weiss field or hybridization function. Interfaces to
ed_bath_fit/ed_chi2_fitgf(). Single-site DMFT variant forED_MODE=SUPERCand rank-5 arrays.- Parameters:
g β function to fit, normal component
dim_g β dimensions of the function to fit, normal component
f β function to fit, anomalous component
dim_f β dimensions of the function to fit, anomalous component
bath β user-accessible bath array
dim_bath β dimensions of the bath array
ispin β spin index
iorb β orbital index. If
0, the fortran function is called withoutiorbfmpi β integer flag to enable mpi.
1forTrue,0forFalse
-
void chi2_fitgf_lattice_normal_n3(std::complex<double> *g, int64_t *dim_g, double *bath, int64_t *dim_bath, int ispin)ο
This function fits the Weiss field or hybridization function. Interfaces to
e2i_bath_fit/ed_chi2_fitgf(). Real-space DMFT variant forED_MODE=NORMAL/NONSU2and rank-3 arrays.- Parameters:
g β function to fit
dim_g β dimensions of the function to fit
bath β user-accessible bath array
dim_bath β dimensions of the bath array
ispin β spin index
-
void chi2_fitgf_lattice_normal_n4(std::complex<double> *g, int64_t *dim_g, double *bath, int64_t *dim_bath, int ispin)ο
This function fits the Weiss field or hybridization function. Interfaces to
e2i_bath_fit/ed_chi2_fitgf(). Real-space DMFT variant forED_MODE=NORMAL/NONSU2and rank-4 arrays.- Parameters:
g β function to fit
dim_g β dimensions of the function to fit
bath β user-accessible bath array
dim_bath β dimensions of the bath array
ispin β spin index
-
void chi2_fitgf_lattice_normal_n6(std::complex<double> *g, int64_t *dim_g, double *bath, int64_t *dim_bath, int ispin)ο
This function fits the Weiss field or hybridization function. Interfaces to
e2i_bath_fit/ed_chi2_fitgf(). Real-space DMFT variant forED_MODE=NORMAL/NONSU2and rank-6 arrays.- Parameters:
g β function to fit
dim_g β dimensions of the function to fit
bath β user-accessible bath array
dim_bath β dimensions of the bath array
ispin β spin index
-
void chi2_fitgf_lattice_superc_n3(std::complex<double> *g, int64_t *dim_g, std::complex<double> *f, int64_t *dim_f, double *bath, int64_t *dim_bath, int ispin)ο
This function fits the Weiss field or hybridization function. Interfaces to
e2i_bath_fit/ed_chi2_fitgf(). Real-space DMFT variant forED_MODE=SUPERCand rank-3 arrays.- Parameters:
g β function to fit
dim_g β dimensions of the function to fit
f β function to fit, anomalous component
dim_f β dimensions of the function to fit, anomalous component
bath β user-accessible bath array
dim_bath β dimensions of the bath array
ispin β spin index
-
void chi2_fitgf_lattice_superc_n4(std::complex<double> *g, int64_t *dim_g, std::complex<double> *f, int64_t *dim_f, double *bath, int64_t *dim_bath, int ispin)ο
This function fits the Weiss field or hybridization function. Interfaces to
e2i_bath_fit/ed_chi2_fitgf(). Real-space DMFT variant forED_MODE=SUPERCand rank-4 arrays.- Parameters:
g β function to fit
dim_g β dimensions of the function to fit
f β function to fit, anomalous component
dim_f β dimensions of the function to fit, anomalous component
bath β user-accessible bath array
dim_bath β dimensions of the bath array
ispin β spin index
-
void chi2_fitgf_lattice_superc_n6(std::complex<double> *g, int64_t *dim_g, std::complex<double> *f, int64_t *dim_f, double *bath, int64_t *dim_bath, int ispin)ο
This function fits the Weiss field or hybridization function. Interfaces to
e2i_bath_fit/ed_chi2_fitgf(). Real-space DMFT variant forED_MODE=SUPERCand rank-6 arrays.- Parameters:
g β function to fit
dim_g β dimensions of the function to fit
f β function to fit, anomalous component
dim_f β dimensions of the function to fit, anomalous component
bath β user-accessible bath array
dim_bath β dimensions of the bath array
ispin β spin index
-
void ed_get_dens_n1(std::complex<double> *self)ο
This function obtains the density. Interfaces to
ed_io/ed_get_dens(). Single-site DMFT version- Parameters:
self β orbitally-resolved density array
-
void ed_get_dens_n2(std::complex<double> *self, int Nlat)ο
This function obtains the density. Interfaces to
e2i_io/ed_get_dens(). Real-space DMFT version- Parameters:
self β density array
Nlat β number of inequivalent sites
-
void ed_get_mag_n2(std::complex<double> *self)ο
This function obtains the magnetization. Interfaces to
ed_io/ed_get_mag(). Single-site DMFT version- Parameters:
self β magnetization array
-
void ed_get_mag_n3(std::complex<double> *self, int Nlat)ο
This function obtains the magnetization. Interfaces to
e2i_io/ed_get_mag(). Real-space DMFT version- Parameters:
self β magnetization array
Nlat β number of inequivalent sites
-
void ed_get_docc_n1(std::complex<double> *self)ο
This function obtains the double-occupation. Interfaces to
ed_io/ed_get_docc(). Single-site DMFT version- Parameters:
self β double-occupation array
-
void ed_get_docc_n2(std::complex<double> *self, int Nlat)ο
This function obtains the double occupation. Interfaces to
e2i_io/ed_get_docc(). Real-space DMFT version- Parameters:
self β double-occupation array
Nlat β number of inequivalent sites
-
void ed_get_phisc_n2(std::complex<double> *self)ο
This function obtains the superconductive order parameter modulus. Interfaces to
ed_io/ed_get_phi(). Single-site DMFT version- Parameters:
self β superconductive order parameter modulus array
-
void ed_get_phisc_n3(std::complex<double> *self, int Nlat)ο
This function obtains the superconductive order parameter modulus. Interfaces to
e2i_io/ed_get_phi(). Real-space DMFT version- Parameters:
self β superconductive order parameter modulus array
Nlat β number of inequivalent sites
-
void ed_get_argsc_n2(std::complex<double> *self)ο
This function obtains the superconductive order parameter argument. Interfaces to
ed_io/ed_get_argphi(). Single-site DMFT version- Parameters:
self β superconductive order parameter argument array
-
void ed_get_argsc_n3(std::complex<double> *self, int Nlat)ο
This function obtains the superconductive order parameter argument. Interfaces to
e2i_io/ed_get_argphi(). Real-space DMFT version- Parameters:
self β superconductive order parameter argument array
Nlat β number of inequivalent sites
-
void ed_get_eimp_n1(std::complex<double> *self)ο
This function obtains the local energy. Interfaces to
ed_io/ed_get_eimp(). Single-site DMFT version- Parameters:
self β energy array
-
void ed_get_eimp_n2(std::complex<double> *self, int Nlat)ο
This function obtains the local energy. Interfaces to
e2i_io/ed_get_eimp(). Real-space DMFT version- Parameters:
self β energy array
Nlat β number of inequivalent sites
-
void ed_get_phon(std::complex<double> *self)ο
This function obtains the phononic observables. Interfaces to
ed_io/ed_get_phon(). Single-site DMFT version- Parameters:
self β energy array
-
void ed_get_ephon(std::complex<double> *self)ο
This function obtains the phononic contributions to the energy. Interfaces to
ed_io/ed_get_ephon(). Single-site DMFT version- Parameters:
self β energy array
-
void get_sigma_site_n3(std::complex<double> *self, int axis, int typ, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the self-energy. Interfaces to
ed_io/ed_get_sigma()for a rank-3 array. Single-site DMFT variant.- Parameters:
self β the self-energy array
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisenzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_sigma_site_n5(std::complex<double> *self, int axis, int typ, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the self-energy. Interfaces to
ed_io/ed_get_sigma()for a rank-5 array. Single-site DMFT variant.- Parameters:
self β the self-energy array
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisenzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_sigma_lattice_n3(std::complex<double> *self, int Nineq, int axis, int typ, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the self-energy. Interfaces to
e2i_io/ed_get_sigma()for a rank-3 array. Real-space DMFT variant.- Parameters:
self β the self-energy array
Nineq β numer of inequivalent sites
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisenzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_sigma_lattice_n4(std::complex<double> *self, int Nineq, int axis, int typ, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the self-energy. Interfaces to
e2i_io/ed_get_sigma()for a rank-4 array. Real-space DMFT variant.- Parameters:
self β the self-energy array
Nineq β numer of inequivalent sites
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisenzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_sigma_lattice_n6(std::complex<double> *self, int Nineq, int axis, int typ, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the self-energy. Interfaces to
e2i_io/ed_get_sigma()for a rank-6 array. Real-space DMFT variant.- Parameters:
self β the self-energy array
Nineq β numer of inequivalent sites
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisenzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_gimp_site_n3(std::complex<double> *gimp, int axis, int typ, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the impurity Green's function. Interfaces to
ed_io/ed_get_gimp()for a rank-3 array. Single-site DMFT variant.- Parameters:
gimp β the impurity Green's function array
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisenzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_gimp_site_n5(std::complex<double> *gimp, int axis, int typ, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the impurity Green's function. Interfaces to
ed_io/ed_get_gimp()for a rank-5 array. Single-site DMFT variant.- Parameters:
gimp β the impurity Green's function array
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisenzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_gimp_lattice_n3(std::complex<double> *gimp, int Nineq, int axis, int typ, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the impurity Green's function. Interfaces to
e2i_io/ed_get_gimp()for a rank-3 array. Real-space DMFT variant.- Parameters:
gimp β the impurity Green's function array
Nineq β numer of inequivalent sites
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisenzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_gimp_lattice_n4(std::complex<double> *gimp, int Nineq, int axis, int typ, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the impurity Green's function. Interfaces to
e2i_io/ed_get_gimp()for a rank-4 array. Real-space DMFT variant.- Parameters:
gimp β the impurity Green's function array
Nineq β numer of inequivalent sites
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisenzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_gimp_lattice_n6(std::complex<double> *gimp, int Nineq, int axis, int typ, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the impurity Green's function. Interfaces to
e2i_io/ed_get_gimp()for a rank-6 array. Real-space DMFT variant.- Parameters:
gimp β the impurity Green's function array
Nineq β numer of inequivalent sites
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisenzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_dimp_site_n1(std::complex<double> *dimp, int axis, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the phonon Green's function. Interfaces to
ed_io/ed_get_dimp()for a rank-1 array. Single-site DMFT variant.- Parameters:
dimp β the impurity Green's function array
axis β integer flag for axis:
1=r, otherwisemzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_dimp_lattice_n2(std::complex<double> *dimp, int Nineq, int axis, std::complex<double> *zeta, int dz, int zflag)ο
This function obtains the phonon Green's function. Interfaces to
e2i_io/ed_get_dimp()for a rank-2 array. Real-space DMFT variant.- Parameters:
dimp β the impurity Green's function array
Nineq β numer of inequivalent sites
axis β integer flag for axis:
1=r, otherwisemzeta β frequency array
dz β dimension of the frequency array
zflag β flag to set (
1) or not (0) calculation with internal frequency array
-
void get_g0and_n3(std::complex<double> *warray, int64_t *dim_warray, double *bath, int dim_bath, std::complex<double> *G0and, int64_t *dim_g0and, char *axis, char *typ)ο
This function obtains the Weiss field. Interfaces to
ed_io/ed_get_g0and()for a rank-3 array. Single-site DMFT variant.- Parameters:
warray β Array of frequencies
dim_warray β Dimension of the array of frequencies
bath β User-accessible bath array
dim_bath β Dimension of the bath array
G0and β the Weiss field array
dim_g0and β the dimensions of the Weiss field array
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisen
-
void get_g0and_n5(std::complex<double> *warray, int64_t *dim_warray, double *bath, int dim_bath, std::complex<double> *G0and, int64_t *dim_g0and, char *axis = (char*)"m", char *typ = (char*)"n")ο
This function obtains the Weiss field. Interfaces to
ed_io/ed_get_g0and()for a rank-5 array. Single-site DMFT variant.- Parameters:
warray β Array of frequencies
dim_warray β Dimension of the array of frequencies
bath β User-accessible bath array
dim_bath β Dimension of the bath array
G0and β the Weiss field array
dim_g0and β the dimensions of the Weiss field array
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisen
-
void get_delta_n3(std::complex<double> *warray, int64_t *dim_warray, double *bath, int dim_bath, std::complex<double> *Delta, int64_t *dim_delta, char *axis, char *typ)ο
This function obtains the hybridization function. Interfaces to
ed_io/ed_get_delta()for a rank-3 array. Single-site DMFT variant.- Parameters:
warray β Array of frequencies
dim_warray β Dimension of the array of frequencies
bath β User-accessible bath array
dim_bath β Dimension of the bath array
Delta β the Weiss field array
dim_delta β the dimensions of the Weiss field array
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisen
-
void get_delta_n5(std::complex<double> *warray, int64_t *dim_warray, double *bath, int dim_bath, std::complex<double> *Delta, int64_t *dim_delta, char *axis, char *typ)ο
This function obtains the hybridization function. Interfaces to
ed_io/ed_get_delta()for a rank-5 array. Single-site DMFT variant.- Parameters:
warray β Array of frequencies
dim_warray β Dimension of the array of frequencies
bath β User-accessible bath array
dim_bath β Dimension of the bath array
Delta β the Weiss field array
dim_delta β the dimensions of the Weiss field array
axis β integer flag for axis:
1=r, otherwisemtyp β integer flag for type:
1=a, otherwisen
-
void ed_get_spinchi(std::complex<double> *self, std::complex<double> *zeta, int dim_zeta, int zetaflag, char *axis, int Nsites, int latticeflag)ο
This function obtains the spin susceptibility. Interfaces to
ed_io/ed_spinchi()ore2i_io/ed_spinchi().- Parameters:
self β susceptibility array
zeta β frequency array
dim_zeta β dimension of the frequency array
zetaflag β flag to set (
1) or not (0) calculation with internal frequency/time arrayaxis β flag for axis
Nsites β number of inequivalent sites (
1for single-impurity)latticeflag β flag to set (
1) or not (0) calculation with real-space DMFT
-
void ed_get_denschi(std::complex<double> *self, std::complex<double> *zeta, int dim_zeta, int zetaflag, char *axis, int Nsites, int latticeflag)ο
This function obtains the charge susceptibility. Interfaces to
ed_io/ed_denschi()ore2i_io/ed_denschi().- Parameters:
self β susceptibility array
zeta β frequency array
dim_zeta β dimension of the frequency array
zetaflag β flag to set (
1) or not (0) calculation with internal frequency/time arrayaxis β flag for axis
Nsites β number of inequivalent sites (
1for single-impurity)latticeflag β flag to set (
1) or not (0) calculation with real-space DMFT
-
void ed_get_pairchi(std::complex<double> *self, std::complex<double> *zeta, int dim_zeta, int zetaflag, char *axis, int Nsites, int latticeflag)ο
This function obtains the pairing susceptibility. Interfaces to
ed_io/ed_pairchi()ore2i_io/ed_pairchi().- Parameters:
self β susceptibility array
zeta β frequency array
dim_zeta β dimension of the frequency array
zetaflag β flag to set (
1) or not (0) calculation with internal frequency/time arrayaxis β flag for axis
Nsites β number of inequivalent sites (
1for single-impurity)latticeflag β flag to set (
1) or not (0) calculation with real-space DMFT
-
void ed_get_exctchi(std::complex<double> *self, std::complex<double> *zeta, int dim_zeta, int zetaflag, char *axis, int Nsites, int latticeflag)ο
This function obtains the excitonic susceptibility. Interfaces to
ed_io/ed_exctchi()ore2i_io/ed_exctchi().- Parameters:
self β susceptibility array
zeta β frequency array
dim_zeta β dimension of the frequency array
zetaflag β flag to set (
1) or not (0) calculation with internal frequency/time arrayaxis β flag for axis
Nsites β number of inequivalent sites (
1for single-impurity)latticeflag β flag to set (
1) or not (0) calculation with real-space DMFT
-
void ed_get_impurity_rdm(std::complex<double> *rdm, int doprint)ο
This function obtains the impurity reduced density matrix. Interfaces to
ed_io/ed_get_impurity_rdm().- Parameters:
rdm β impurity reduced density matrix
doprint β flag to print to file (
1) or not (0) the RDM
-
void ed_get_denmat_n2(std::complex<double> *denmat, int64_t *dimdenmat, int doprint)ο
This function obtains the 1-body density matrix. Interfaces to
ed_io/ed_get_denmat(). Rank-2 version.- Parameters:
denmat β 1-body density matrix
dimdenmat β dimensions of the 1-body density matrix
doprint β flag to print to file (
1) or not (0) the density matrix
-
void ed_get_denmat_n4(std::complex<double> *denmat, int64_t *dimdenmat, int doprint)ο
This function obtains the 1-body density matrix. Interfaces to
ed_io/ed_get_denmat(). Rank-4 version.- Parameters:
denmat β 1-body density matrix
dimdenmat β dimensions of the 1-body density matrix
doprint β flag to print to file (
1) or not (0) the density matrix
-
void init_solver_site(double *bath, int64_t *dim_bath)ο
This function initializes the solver. Interfaces to
ed_main/ed_init_solver(). Single-site DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
-
void init_solver_site_nobath()ο
This function initializes the solver for an isolated impurity. Interfaces to
ed_main/ed_init_solver(). Single-site DMFT variant.
-
void init_solver_ineq(double *bath, int64_t *dim_bath)ο
This function initializes the solver. Interfaces to
ed_main/ed_init_solver(). Real-space DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
-
void init_solver_ineq_nobath(int Nlat)ο
This function initializes the solver for an isolated impurity. Interfaces to
ed_main/ed_init_solver(). Real-space DMFT variant.- Parameters:
Nlat β number of inequivalent sites
-
void solve_site(double *bath, int64_t *dim_bath, int flag_gf, int flag_mpi)ο
Solves the impurity problem. Interfaces to
ed_main/solve(). Single-site DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
flag_gf β Green's function calculation flag (
1=True,0=False)flag_mpi β mpi setting flag (
1=True,0=False)
-
void solve_site_nobath(int flag_gf, int flag_mpi)ο
This function solves the impurity problem for the case of an isolated impurity. Interfaces to
ed_main/solve(). Single-site DMFT variant.- Parameters:
flag_gf β Green's function calculation flag (
1=True,0=False)flag_mpi β mpi setting flag (
1=True,0=False)
-
void solve_ineq(double *bath, int64_t *dim_bath, int flag_gf, int mpi_lanc)ο
This function solves the impurity problem. Interfaces to
e2i_main/solve(). Real-space DMFT variant.- Parameters:
bath β user-accessible bath array
dim_bath β dimensions of the bath array
flag_gf β Green's function calculation flag (
1=True,0=False)mpi_lanc β parallelization setting flag (
1=True,0=False)
-
void solve_ineq_nobath(int Nlat, int flag_gf, int mpi_lanc)ο
This function solves the impurity problem for the case of an isolated impuirty. Interfaces to
e2i_main/solve(). Real-space DMFT variant.- Parameters:
Nlat β number of inequivalent sites
flag_gf β Green's function calculation flag (
1=True,0=False)mpi_lanc β parallelization setting flag (
1=True,0=False)
-
void finalize_solver(int Nineq)ο
This function finalizes the solver. Interfaces to
ed_main/finalize_solver()ande2i_main/finalize_solver().- Parameters:
Nineq β number of inequivalent sites. Set to
0for single-site DMFT.
-
void reset_umatrix()ο
This function resets the interaction coefficients and user-provided terms Interfaces to
ed_parse_umatrix/reset_umatrix().
-
void add_twobody_operator(int o1, int s1, int o2, int s2, int o3, int s3, int o4, int s4, double U)ο
This function sets the a two-body interaction term Interfaces to
ed_parse_umatrix/add_twobody_operator().- Parameters:
o1 β orbital index of first creation operator
s1 β spin index of first creation operator
o2 β orbital index of second creation operator
s2 β spin index of second creation operator
o3 β orbital index of first annihilation operator
s3 β spin index of first annihilation operator
o4 β orbital index of second annihilation operator
s4 β spin index of second annihilation operator
U β interaction coefficient