Main program for HPhi.
187 if (mode == STANDARD_DRY_MODE) {
210 strcpy(cFileListName, argv[2]);
212 if(mode==STANDARD_MODE || mode == STANDARD_DRY_MODE){
214 strcpy(cFileListName,
"namelist.def");
215 if (mode == STANDARD_DRY_MODE){
216 fprintf(stdout,
"Dry run is Finished. \n\n");
301 fprintf(
stdoutMPI,
"Error: Full Diagonalization by LAPACK is only allowed for one process.\n");
void exitMPI(int errorcode)
MPI Abortation wrapper.
struct DefineList Def
Definision of system (Hamiltonian) etc.
void StartTimer(int n)
function for initializing elapse time [start]
int JudgeDefType(const int argc, char *argv[], int *mode)
function of judging a type of define files.
const char * cReadDefStart
void SetConvergenceFactor(struct DefineList *X)
function to set convergence factors
int sz(struct BindStruct *X, long unsigned int *list_1_, long unsigned int *list_2_1_, long unsigned int *list_2_2_)
generating Hilbert space
void StopTimer(int n)
function for calculating elapse time [elapse time=StartTimer-StopTimer]
int CalcByTEM(const int ExpecInterval, struct EDMainCalStruct *X)
main function of time evolution calculation
int ReadDefFileIdxPara(struct DefineList *X, struct BoostList *xBoost)
function of reading def files to get keyword index
void setmem_def(struct BindStruct *X, struct BoostList *xBoost)
Set size of memories for Def and Phys in BindStruct.
int CalcByLanczos(struct EDMainCalStruct *X)
A main function to calculate eigenvalues and eigenvectors by Lanczos method.
int iFlgScaLAPACK
ScaLAPACK mode ( only for FullDiag )
unsigned int nvec
Read from Calcmod in readdef.h.
int ReadDefFileNInt(char *xNameListFile, struct DefineList *X, struct BoostList *xBoost)
Function of reading information about "ModPara" file and total number of parameters from other def fi...
int check(struct BindStruct *X)
A program to check size of dimension for Hilbert-space.
int CalcByLOBPCG(struct EDMainCalStruct *X)
Driver routine for LOB(P)CG method.
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.
const char * cReadDefFinish
void InitTimer()
function for initializing Timer[]
int iErrCodeMem
Error Message in HPhiMain.c.
void splash()
Print logo mark and version number.
int nproc
Number of processors, defined in InitializeMPI()
int CalcByFullDiag(struct EDMainCalStruct *X)
Parent function for FullDiag mode.
int diagonalcalc(struct BindStruct *X)
Calculate diagonal components and obtain the list, list_diagonal.
int CalcByTPQ(const int NumAve, const int ExpecInterval, struct EDMainCalStruct *X)
A main function to calculate physical quqntities by TPQ method.
struct BoostList Boost
For Boost.
long unsigned int * list_2_1
void setmem_HEAD(struct BindStruct *X)
Set size of memories headers of output files.
void OutputTimer(struct BindStruct *X)
function for outputting elapse time for each function
void FinalizeMPI()
MPI Finitialization wrapper.
int CalcSpectrum(struct EDMainCalStruct *X)
A main function to calculate spectrum.
long unsigned int * list_1
const char * cProFinishDefCheck
const char * cFileNameTimeKeep
long unsigned int * list_2_2
const char * cProFinishDefFiles
int WRITE
It is ALWAYS 0 ???
const char * cParentOutputFolder
int myrank
Process ID, defined in InitializeMPI()
int iFlgCalcSpec
Input parameter CalcSpec in teh CalcMod file.
int HPhiTrans(struct BindStruct *X)
Function of checking transfers not to count the same type of operators. .
int output_list(struct BindStruct *X)
Output list_1 for canonical ensembles.
void StdFace_main(char *fname)
Main routine for the standard mode.
void InitializeMPI(int argc, char *argv[])
MPI initialization wrapper Process ID (myrank), Number of processes (nproc), Number of threads (nthre...
struct BindStruct Bind
Binded struct.
int TimeKeeper(struct BindStruct *X, const char *cFileName, const char *cTimeKeeper_Message, const char *cWriteType)
Functions for writing a time log.
int iCalcType
Switch for calculation type. 0:Lanczos, 1:TPQCalc, 2:FullDiag.
FILE * stdoutMPI
File pointer to the standard output defined in InitializeMPI()
unsigned int k_exct
Read from Calcmod in readdef.h.