HΦ
3.2.0
|
File for calculating total spin. More...
#include <bitcalc.h>
#include "mltplyCommon.h"
#include "mltplySpinCore.h"
#include "wrapperMPI.h"
#include "mltplyMPISpin.h"
#include "mltplyMPISpinCore.h"
#include "expec_totalspin.h"
Go to the source code of this file.
Functions | |
int | expec_totalspin (struct BindStruct *X, double complex *vec) |
Parent function of calculation of total spin. More... | |
void | totalspin_Hubbard (struct BindStruct *X, double complex *vec) |
function of calculating totalspin for Hubbard model More... | |
void | totalspin_HubbardGC (struct BindStruct *X, double complex *vec) |
function of calculating totalspin for Hubbard model in grand canonical ensemble More... | |
void | totalspin_Spin (struct BindStruct *X, double complex *vec) |
function of calculating totalspin for spin model More... | |
void | totalspin_SpinGC (struct BindStruct *X, double complex *vec) |
function of calculating totalspin for spin model in grand canonical ensemble More... | |
int | expec_totalSz (struct BindStruct *X, double complex *vec) |
void | totalSz_HubbardGC (struct BindStruct *X, double complex *vec) |
function of calculating totalSz for Hubbard model in grand canonical ensemble More... | |
void | totalSz_SpinGC (struct BindStruct *X, double complex *vec) |
function of calculating totalSz for Spin model in grand canonical ensemble More... | |
File for calculating total spin.
modify to treat the case of general spin
Definition in file expec_totalspin.c.
int expec_totalspin | ( | struct BindStruct * | X, |
double complex * | vec | ||
) |
Parent function of calculation of total spin.
[in,out] | X | data list of calculation parameters |
[in] | vec | eigenvector |
0 | calculation is normally finished |
Definition at line 50 of file expec_totalspin.c.
References BindStruct::Def, DefineList::iCalcModel, BindStruct::Large, LargeList::mode, BindStruct::Phys, PhysList::s2, PhysList::Sz, DefineList::Total2SzMPI, totalspin_Hubbard(), totalspin_HubbardGC(), totalspin_Spin(), and totalspin_SpinGC().
Referenced by phys().
int expec_totalSz | ( | struct BindStruct * | X, |
double complex * | vec | ||
) |
Definition at line 649 of file expec_totalspin.c.
References BindStruct::Def, DefineList::iCalcModel, BindStruct::Large, LargeList::mode, BindStruct::Phys, PhysList::Sz, DefineList::Total2SzMPI, totalSz_HubbardGC(), and totalSz_SpinGC().
Referenced by CalcByLanczos().
void totalspin_Hubbard | ( | struct BindStruct * | X, |
double complex * | vec | ||
) |
function of calculating totalspin for Hubbard model
[in,out] | X | data list of calculation parameters |
vec | eigenvector |
Definition at line 88 of file expec_totalspin.c.
References BindStruct::Check, BindStruct::Def, GetOffComp(), GetSplitBitByModel(), DefineList::iCalcModel, CheckList::idim_max, list_1, list_2_1, list_2_2, DefineList::Nsite, DefineList::NsiteMPI, BindStruct::Phys, PhysList::s2, PhysList::Sz, and DefineList::Tpow.
Referenced by expec_totalspin().
void totalspin_HubbardGC | ( | struct BindStruct * | X, |
double complex * | vec | ||
) |
function of calculating totalspin for Hubbard model in grand canonical ensemble
[in,out] | X | data list of calculation parameters |
vec | eigenvector |
Definition at line 161 of file expec_totalspin.c.
References BindStruct::Check, BindStruct::Def, CheckList::idim_max, DefineList::NsiteMPI, BindStruct::Phys, PhysList::s2, PhysList::Sz, and DefineList::Tpow.
Referenced by expec_totalspin().
void totalspin_Spin | ( | struct BindStruct * | X, |
double complex * | vec | ||
) |
function of calculating totalspin for spin model
[in,out] | X | data list of calculation parameters |
vec | eigenvector |
modify for hybrid parallel
Definition at line 233 of file expec_totalspin.c.
References BindStruct::Check, ConvertToList1GeneralSpin(), BindStruct::Def, FALSE, GetBitGeneral(), GetLocal2Sz(), GetOffComp(), GetOffCompGeneralSpin(), GetSplitBitByModel(), DefineList::iCalcModel, CheckList::idim_max, DefineList::iFlgGeneralSpin, list_1, list_2_1, list_2_2, myrank, DefineList::Nsite, DefineList::NsiteMPI, BindStruct::Phys, PhysList::s2, CheckList::sdim, DefineList::SiteToBit, SumMPI_dc(), PhysList::Sz, DefineList::Tpow, TRUE, X_child_general_int_spin_MPIsingle(), X_child_general_int_spin_TotalS_MPIdouble(), and X_SpinGC_CisAis().
Referenced by expec_totalspin().
void totalspin_SpinGC | ( | struct BindStruct * | X, |
double complex * | vec | ||
) |
function of calculating totalspin for spin model in grand canonical ensemble
[in,out] | X | data list of calculation parameters |
vec | eigenvector |
add function to treat a calculation of total spin for general spin
Definition at line 424 of file expec_totalspin.c.
References BindStruct::Check, BindStruct::Def, FALSE, GetBitGeneral(), GetLocal2Sz(), GetOffCompGeneralSpin(), CheckList::idim_max, DefineList::iFlgGeneralSpin, BindStruct::Large, LargeList::mode, myrank, DefineList::Nsite, DefineList::NsiteMPI, BindStruct::Phys, PhysList::s2, DefineList::SiteToBit, SumMPI_dc(), PhysList::Sz, DefineList::Tpow, X_GC_child_CisAitCiuAiv_spin_MPIdouble(), X_GC_child_CisAitCiuAiv_spin_MPIsingle(), and X_SpinGC_CisAis().
Referenced by expec_totalspin().
void totalSz_HubbardGC | ( | struct BindStruct * | X, |
double complex * | vec | ||
) |
function of calculating totalSz for Hubbard model in grand canonical ensemble
[in,out] | X | data list of calculation parameters |
vec | eigenvector |
Definition at line 688 of file expec_totalspin.c.
References BindStruct::Check, BindStruct::Def, CheckList::idim_max, myrank, DefineList::Nsite, DefineList::NsiteMPI, BindStruct::Phys, SumMPI_dc(), PhysList::Sz, totalSz_SpinGC(), and DefineList::Tpow.
Referenced by expec_totalSz().
void totalSz_SpinGC | ( | struct BindStruct * | X, |
double complex * | vec | ||
) |
function of calculating totalSz for Spin model in grand canonical ensemble
[in,out] | X | data list of calculation parameters |
vec | eigenvector |
Definition at line 747 of file expec_totalspin.c.
References BindStruct::Check, BindStruct::Def, FALSE, GetLocal2Sz(), CheckList::idim_max, DefineList::iFlgGeneralSpin, BindStruct::Large, LargeList::mode, myrank, DefineList::Nsite, DefineList::NsiteMPI, BindStruct::Phys, DefineList::SiteToBit, SumMPI_dc(), PhysList::Sz, and DefineList::Tpow.
Referenced by expec_totalSz(), and totalSz_HubbardGC().