18 #include "common/setmemory.h" 20 #include "wrapperMPI.h" 33 static unsigned long int mfint[7];
59 unsigned long int i = 0;
60 unsigned long int j = 0;
61 unsigned long int k = 0;
110 unsigned int ipivot, iarrayJ, ispin;
161 unsigned long int j = 0;
162 unsigned long int idim_maxMPI;
169 list_1buf = lui_1d_allocate(idim_maxMPI + 1);
187 v2 = cd_1d_allocate(1);
190 v1buf = cd_1d_allocate(idim_maxMPI + 1);
193 vg = cd_1d_allocate(1);
238 if (
Ham[j] == NULL ||
L_vec[j] == NULL) {
265 int **InterAllOffDiagonal,
266 double complex *ParaInterAllOffDiagonal,
267 int **InterAllDiagonal,
268 double *ParaInterAllDiagonal,
271 InterAllOffDiagonal = i_2d_allocate(NInterAll, 8);
272 ParaInterAllOffDiagonal = cd_1d_allocate(NInterAll);
273 InterAllDiagonal = i_2d_allocate(NInterAll, 4);
274 ParaInterAllDiagonal = d_1d_allocate(NInterAll);
298 case HubbardNConserved:
unsigned int NTETimeSteps
double * all_num_down
[CheckList::idim_max+1] Number of spin-down electrons for FullDiag and LOBPCG. malloc in setmem_large...
unsigned int NSingleExcitationOperator
Number of single excitaion operator for spectrum.
unsigned int * NTEInterAllOffDiagonal
double * all_s2
[CheckList::idim_max+1] for FullDiag and LOBPCG. malloc in setmem_large().
struct DefineList Def
Definision of system (Hamiltonian) etc.
unsigned int NHundCoupling
Number of Hund coupling.
int * EDSpinChemi
[DefineList::Nsite]
unsigned int NTEInterAllMax
unsigned long int idim_max
The dimension of the Hilbert space of this process.
int ** ExchangeCoupling
[DefineList::NExchangeCoupling][2] Index of exchange term. malloc in setmem_def().
double * ParaInterAll_Diagonal
[DefineList::NInterAll_Diagonal] Coupling constant of diagonal inter-all term. malloc in setmem_def()...
int *** TETransferDiagonal
long unsigned int * list_1buf
struct LargeList Large
Variables for Matrix-Vector product.
int * LocSpn
[DefineList::NLocSpn] Flag (and size) of the local spin. malloc in setmem_def().
int ** CisAjtCkuAlvDC
[DefineList::NCisAjtCkuAlvDC][4] Indices of two-body correlation function. malloc in setmem_def()...
int ** EDGeneralTransfer
Index of transfer integrals for calculation. malloc in setmem_def(). Data Format [DefineList::NTransf...
long unsigned int num_pivot
struct PhysList Phys
Physical quantities.
long int SizeOflist_2_1
Size of list_2_1.
double complex * ParaInterAll_OffDiagonal
[DefineList::NInterAll_OffDiagonal] Coupling constant of off-diagonal inter-all term. malloc in setmem_def().
unsigned int NPairLiftCoupling
Number of pair-lift term.
void setmem_def(struct BindStruct *X, struct BoostList *xBoost)
Set size of memories for Def and Phys in BindStruct.
unsigned int nvec
Read from Calcmod in readdef.h.
double complex ** ParaTETransfer
int setmem_large(struct BindStruct *X)
Set size of memories for Hamiltonian (Ham, L_vec), vectors(vg, v0, v1, v2, vec, alpha, beta), lists (list_1, list_2_1, list_2_2, list_Diagonal) and Phys(BindStruct.PhysList) struct in the case of Full Diag mode.
unsigned int * NTETransfer
unsigned long int sdim
Dimension for Ogata-Lin ???
int ** InterAll_OffDiagonal
[DefineList::NinterAll_OffDiagonal][8] Interacted quartet
int ** InterAll_Diagonal
[DefineList::NinterAll_Diagonal][4] Interacted quartet
double * loc_spin_z
Malloc, but Not used ???
int ** GeneralTransfer
Index of transfer integrals obtained by a def file. malloc in setmem_def(). Data Format [DefineList::...
long unsigned int * OrgTpow
[2 * DefineList::NsiteMPI] malloc in setmem_def().
int ** PairHopping
[DefineList::NPairHopping][2] Index of pair-hopping. malloc in setmem_def().
double ** ParaTETransferDiagonal
int ** PairLiftCoupling
[DefineList::NPairHopping][2] Index of pair-lift term. malloc in setmem_def().
int ** HundCoupling
[DefineList::NHundCoupling][2] Index of Hund coupling. malloc in setmem_def().
double complex ** ParaTEInterAll
double complex * ParaInterAll
[DefineList::NInterAll] Coupling constant of inter-all term. malloc in setmem_def().
double complex * ParaGeneralTransfer
Value of general transfer integrals by a def file. malloc in setmem_def(). Data Format [DefineList::N...
double * ParaExchangeCoupling
[DefineList::NExchangeCoupling] Coupling constant of exchange term. malloc in setmem_def().
unsigned int Nsite
Number of sites in the INTRA process region.
double * ParaCoulombInter
[DefineList::NCoulombInter]Coupling constant of off-site Coulomb interaction. malloc in setmem_def()...
double complex * EDParaGeneralTransfer
Value of general transfer integrals by a def file. malloc in setmem_def(). Data Format [DefineList::N...
double * ParaPairLiftCoupling
[DefineList::NPairHopping] Coupling constant of pair-lift term. malloc in setmem_def().
long unsigned int * Tpow
[2 * DefineList::NsiteMPI] malloc in setmem_def().
double complex * ParaPairExcitationOperator
[DefineList::NPairExcitationOperator] Coefficient of pair excitaion operator for spectrum. malloc in setmem_def().
unsigned int NCoulombIntra
double complex *** arrayJ
double complex ** ParaTEInterAllOffDiagonal
unsigned int NIsingCoupling
Number of Ising term.
const char * cProFinishAlloc
int ** SingleExcitationOperator
[DefineList::NSingleExcitationOperator][3] Indices of single excitaion operator for spectrum...
unsigned long int MaxMPI_li(unsigned long int idim)
MPI wrapper function to obtain maximum unsigned long integer across processes.
long unsigned int * list_2_1
static unsigned long int mfint[7]
double * EDParaChemi
[DefineList::Nsite] On-site potential parameter. malloc in setmem_def().
void setmem_HEAD(struct BindStruct *X)
Set size of memories headers of output files.
double * all_doublon
[CheckList::idim_max+1] Doublon for FullDiag and LOBPCG. malloc in setmem_large().
int GetlistSize(struct BindStruct *X)
Set size of lists for the canonical ensemble.
char * CParaFileHead
Read from Calcmod in readdef.h. It is not used. Just for the compatibility to mVMC.
unsigned int NExchangeCoupling
Number of exchange term.
int iFlgGeneralSpin
Flag for the general (Sz/=1/2) spin.
long unsigned int * list_1
unsigned int NCisAjtCkuAlvDC
Number of indices of two-body correlation function.
unsigned int NPairHopping
Number of pair-hopping term.
unsigned int NCisAjt
Number of indices of two-body correlation function.
unsigned int NPairExcitationOperator
Number of pair excitaion operator for spectrum.
long int * SiteToBit
[DefineList::NsiteMPI] Similar to DefineList::Tpow. For general spin.
long unsigned int * list_2_2
unsigned int * NTEInterAllDiagonal
int ** CisAjt
[DefineList::NCisAjt][4] Indices of one-body correlation function. malloc in setmem_def().
double ** ParaTEInterAllDiagonal
int ** PairExcitationOperator
[DefineList::NPairExcitationOperator][5] Indices of pair excitaion operator for spectrum. malloc in setmem_def().
double * ParaPairHopping
[DefineList::NPairHopping] Coupling constant of pair-hopping term. malloc in setmem_def().
unsigned int NInterAll
Total Number of Interacted quartet.
unsigned int NTransfer
Number of transfer integrals obtained by a def file.
double * charge_real_cor
Malloc, but Not used ???
double * ParaHundCoupling
[DefineList::NHundCoupling] Hund coupling constant. malloc in setmem_def().
double * spin_real_cor
Malloc, but Not used ???
int LanczosTarget
Which eigenstate is used to check convergence. Read from Calcmod in readdef.h.
double * all_sz
[CheckList::idim_max+1] for FullDiag and LOBPCG. malloc in setmem_large().
int iCalcModel
Switch for model. 0:Hubbard, 1:Spin, 2:Kondo, 3:HubbardGC, 4:SpinGC, 5:KondoGC, 6:HubbardNConserved.
int *** TEInterAllOffDiagonal
unsigned int NCoulombInter
Number of off-site Coulomb interaction.
double * ParaCoulombIntra
unsigned int EDNChemi
Number of on-site term.
void setmem_IntAll_Diagonal(int **InterAllOffDiagonal, double complex *ParaInterAllOffDiagonal, int **InterAllDiagonal, double *ParaInterAllDiagonal, const int NInterAll)
Set the size of memories for InterAllDiagonal and InterAllOffDiagonal arrays.
int *** TEInterAllDiagonal
int iFlgCalcSpec
Input parameter CalcSpec in teh CalcMod file.
double complex * ParaSingleExcitationOperator
[DefineList::NSingleExcitationOperator] Coefficient of single excitaion operator for spectrum...
int ** InterAll
[DefineList::NinterAll][8] Interacted quartet
long int SizeOflistjb
Used for computing Sz.
int * EDChemi
[DefineList::Nsite] Chemical potential. malloc in setmem_def().
unsigned int NTETransferMax
unsigned int * NTEInterAll
struct CheckList Check
Size of the Hilbert space.
unsigned int * NTETransferDiagonal
char * CDataFileHead
Read from Calcmod in readdef.h. Header of output file such as Green's function.
long int SizeOflist_2_2
Size of list_2_2.
double * all_num_up
[CheckList::idim_max+1] Number of spin-up electrons for FullDiag and LOBPCG. malloc in setmem_large()...
unsigned int Lanczos_max
Maximum number of iterations.
int iCalcType
Switch for calculation type. 0:Lanczos, 1:TPQCalc, 2:FullDiag.
FILE * stdoutMPI
File pointer to the standard output defined in InitializeMPI()
double * all_energy
[CheckList::idim_max+1] Energy for FullDiag and LOBPCG. malloc in setmem_large(). ...
unsigned int k_exct
Read from Calcmod in readdef.h.