HPhi++
3.1.0
|
Functions for Hubbard hamiltonian (Core) More...
#include <bitcalc.hpp>
#include "xsetmem.hpp"
#include "wrapperMPI.hpp"
#include "mltplyCommon.hpp"
#include "mltplyHubbardCore.hpp"
Go to the source code of this file.
Functions | |
int | child_general_hopp_GetInfo (struct BindStruct *X, long int isite1, long int isite2, long int sigma1, long int sigma2) |
Compute mask for bit operation of hopping term. More... | |
int | child_general_int_GetInfo (struct BindStruct *X, long int isite1, long int isite2, long int isite3, long int isite4, long int sigma1, long int sigma2, long int sigma3, long int sigma4, std::complex< double > tmp_V) |
Compute mask for bit operation of general interaction term. More... | |
int | child_pairhopp_GetInfo (int iPairHopp, struct BindStruct *X) |
Compute mask for bit operation of pairhop term. More... | |
int | child_exchange_GetInfo (int iExchange, struct BindStruct *X) |
Compute mask for bit operation of exchange term. More... | |
void | GC_CisAis (long int j, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, long int is1_spin, std::complex< double > tmp_trans) |
Operation of \(t c_{i\sigma}^\dagger c_{i\sigma}\) (Grandcanonical) More... | |
void | GC_AisCis (long int j, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, long int is1_spin, std::complex< double > tmp_trans) |
Operation of \(t c_{i\sigma} c_{i\sigma}^\dagger\) (Grandcanonical) More... | |
int | X_CisAis (long int list_1_j, long int is1_spin) |
\(c_{is}\\dagger c_{is}\) term in Hubbard (canonical) More... | |
void | CisAjt (long int j, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, struct BindStruct *X, long int is1_spin, long int is2_spin, long int sum_spin, long int diff_spin, std::complex< double > tmp_V) |
\(c_{is}^\dagger c_{jt}\) term for canonical Hubbard More... | |
void | GC_CisAjt (long int j, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, long int is1_spin, long int is2_spin, long int sum_spin, long int diff_spin, std::complex< double > tmp_V, long int *tmp_off) |
\(c_{is}^\dagger c_{jt}\) term for grandcanonical Hubbard More... | |
int | X_CisAjt (long int list_1_j, struct BindStruct *X, long int is1_spin, long int is2_spin, long int sum_spin, long int diff_spin, long int *tmp_off) |
Compute index of wavefunction of final state. More... | |
int | X_GC_CisAjt (long int list_1_j, long int is1_spin, long int is2_spin, long int sum_spin, long int diff_spin, long int *tmp_off) |
Compute index of wavefunction of final state. More... | |
void | child_exchange_element (long int j, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, struct BindStruct *X, long int *tmp_off) |
Compute exchange term of canonical-Hubbard. More... | |
void | child_pairhopp_element (long int j, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, struct BindStruct *X, long int *tmp_off) |
Compute pairhopp term of canonical Hubbard system. More... | |
void | GC_child_exchange_element (long int j, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, struct BindStruct *X, long int *tmp_off) |
Compute exchange term of grandcanonical Hubbard system. More... | |
void | GC_child_pairhopp_element (long int j, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, struct BindStruct *X, long int *tmp_off) |
Compute pairhopp term of grandcanonical Hubbard system. More... | |
void | child_CisAisCisAis_element (long int j, long int isite1, long int isite3, std::complex< double > tmp_V, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1) |
Compute \(c_{is}^\dagger c_{is} c_{is}^\dagger c_{is}\) term of canonical Hubbard system. More... | |
void | child_CisAisCjtAku_element (long int j, long int isite1, long int isite3, long int isite4, long int Bsum, long int Bdiff, std::complex< double > tmp_V, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, struct BindStruct *X, long int *tmp_off) |
Compute \(c_{is}^\dagger c_{is} c_{jt}^\dagger c_{ku}\) term of canonical Hubbard system. More... | |
void | child_CisAjtCkuAku_element (long int j, long int isite1, long int isite2, long int isite3, long int Asum, long int Adiff, std::complex< double > tmp_V, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, struct BindStruct *X, long int *tmp_off) |
Compute \(c_{is}^\dagger c_{jt} c_{ku}^\dagger c_{ku}\) term of canonical Hubbard system. More... | |
void | child_CisAjtCkuAlv_element (long int j, long int isite1, long int isite2, long int isite3, long int isite4, long int Asum, long int Adiff, long int Bsum, long int Bdiff, std::complex< double > tmp_V, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, struct BindStruct *X, long int *tmp_off_2) |
Compute \(c_{is}^\dagger c_{jt} c_{ku}^\dagger c_{lv}\) term of canonical Hubbard system. More... | |
void | GC_child_CisAisCisAis_element (long int j, long int isite1, long int isite3, std::complex< double > tmp_V, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1) |
Compute \(c_{is}^\dagger c_{is} c_{is}^\dagger c_{is}\) term of grandcanonical Hubbard system. More... | |
void | GC_child_CisAisCjtAku_element (long int j, long int isite1, long int isite3, long int isite4, long int Bsum, long int Bdiff, std::complex< double > tmp_V, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, long int *tmp_off) |
Compute \(c_{is}^\dagger c_{is} c_{jt}^\dagger c_{ku}\) term of grandcanonical Hubbard system. More... | |
void | GC_child_CisAjtCkuAku_element (long int j, long int isite1, long int isite2, long int isite3, long int Asum, long int Adiff, std::complex< double > tmp_V, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, long int *tmp_off) |
Compute \(c_{is}^\dagger c_{jt} c_{ku}^\dagger c_{ku}\) term of grandcanonical Hubbard system. More... | |
void | GC_child_CisAjtCkuAlv_element (long int j, long int isite1, long int isite2, long int isite3, long int isite4, long int Asum, long int Adiff, long int Bsum, long int Bdiff, std::complex< double > tmp_V, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, long int *tmp_off_2) |
Compute \(c_{is}^\dagger c_{jt} c_{ku}^\dagger c_{lv}\) term of grandcanonical Hubbard system. More... | |
void | GC_Cis (long int j, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, long int is1_spin, std::complex< double > tmp_V, long int *tmp_off) |
Compute \(c_{is}^\dagger\) term of grandcanonical Hubbard system. More... | |
void | GC_Ajt (long int j, int nstate, std::complex< double > **tmp_v0, std::complex< double > **tmp_v1, long int is1_spin, std::complex< double > tmp_V, long int *tmp_off) |
Compute \(c_{jt}\) term of grandcanonical Hubbard system. More... | |
int | X_Cis (long int j, long int is1_spin, long int *tmp_off, long int *list_1_org, long int *list_2_1_target, long int *list_2_2_target, long int _irght, long int _ilft, long int _ihfbit) |
Compute index of final wavefunction associatesd to \(c_{is}^\dagger\) term of canonical Hubbard system. More... | |
int | X_Ajt (long int j, long int is1_spin, long int *tmp_off, long int *list_1_org, long int *list_2_1_target, long int *list_2_2_target, long int _irght, long int _ilft, long int _ihfbit) |
Compute index of final wavefunction associatesd to \(c_{jt}\) term of canonical Hubbard system. More... | |
Functions for Hubbard hamiltonian (Core)
Definition in file mltplyHubbardCore.cpp.
void child_CisAisCisAis_element | ( | long int | j, |
long int | isite1, | ||
long int | isite3, | ||
std::complex< double > | tmp_V, | ||
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1 | ||
) |
Compute \(c_{is}^\dagger c_{is} c_{is}^\dagger c_{is}\) term of canonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | isite1 | Site 1 |
[in] | isite3 | Site 3 |
[in] | tmp_V | Coupling constant |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
Definition at line 629 of file mltplyHubbardCore.cpp.
References list_1, and X_CisAis().
Referenced by child_general_int(), and expec_cisajscktalt_Hubbard().
void child_CisAisCjtAku_element | ( | long int | j, |
long int | isite1, | ||
long int | isite3, | ||
long int | isite4, | ||
long int | Bsum, | ||
long int | Bdiff, | ||
std::complex< double > | tmp_V, | ||
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
struct BindStruct * | X, | ||
long int * | tmp_off | ||
) |
Compute \(c_{is}^\dagger c_{is} c_{jt}^\dagger c_{ku}\) term of canonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | isite1 | Site 1 |
[in] | isite3 | Site 3 |
[in] | isite4 | Site 4 |
[in] | Bsum | Bit mask for hopping |
[in] | Bdiff | Bit mask for Fermion sign |
[in] | tmp_V | Coupling constant |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[in,out] | X | |
[out] | tmp_off | Index of final wavefunction |
Definition at line 651 of file mltplyHubbardCore.cpp.
References list_1, X_CisAis(), and X_CisAjt().
Referenced by child_general_int(), and expec_cisajscktalt_Hubbard().
void child_CisAjtCkuAku_element | ( | long int | j, |
long int | isite1, | ||
long int | isite2, | ||
long int | isite3, | ||
long int | Asum, | ||
long int | Adiff, | ||
std::complex< double > | tmp_V, | ||
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
struct BindStruct * | X, | ||
long int * | tmp_off | ||
) |
Compute \(c_{is}^\dagger c_{jt} c_{ku}^\dagger c_{ku}\) term of canonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | isite1 | Site 1 |
[in] | isite2 | Site 2 |
[in] | isite3 | Site 3 |
[in] | Asum | Bit mask for hopping |
[in] | Adiff | Bit mask for Fermion sign |
[in] | tmp_V | Coupling constant |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[in,out] | X | |
[out] | tmp_off | Index of final wavefunction |
Definition at line 682 of file mltplyHubbardCore.cpp.
References list_1, X_CisAis(), and X_CisAjt().
Referenced by child_general_int(), and expec_cisajscktalt_Hubbard().
void child_CisAjtCkuAlv_element | ( | long int | j, |
long int | isite1, | ||
long int | isite2, | ||
long int | isite3, | ||
long int | isite4, | ||
long int | Asum, | ||
long int | Adiff, | ||
long int | Bsum, | ||
long int | Bdiff, | ||
std::complex< double > | tmp_V, | ||
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
struct BindStruct * | X, | ||
long int * | tmp_off_2 | ||
) |
Compute \(c_{is}^\dagger c_{jt} c_{ku}^\dagger c_{lv}\) term of canonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | isite1 | Site 1 |
[in] | isite2 | Site 2 |
[in] | isite3 | Site 3 |
[in] | isite4 | Site 4 |
[in] | Asum | Bit mask for hopping |
[in] | Adiff | Bit mask for Fermion sign |
[in] | Bsum | Bit mask for hopping |
[in] | Bdiff | Bit mask for Fermion sign |
[in] | tmp_V | Coupling constant |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[in,out] | X | |
[out] | tmp_off_2 | Index of final wavefunction |
Definition at line 713 of file mltplyHubbardCore.cpp.
References list_1, X_CisAjt(), and X_GC_CisAjt().
Referenced by child_general_int(), and expec_cisajscktalt_Hubbard().
void child_exchange_element | ( | long int | j, |
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
struct BindStruct * | X, | ||
long int * | tmp_off | ||
) |
Compute exchange term of canonical-Hubbard.
[in] | j | Index of initial wavefunction |
[in,out] | tmp_v0 | \(v_0 = H v_1\) |
[in] | tmp_v1 | Vector to be producted |
[in,out] | X | |
tmp_off | [off] Index of wavefunction of final state |
Definition at line 442 of file mltplyHubbardCore.cpp.
References GetOffComp(), LargeList::ihfbit, LargeList::ilft, LargeList::irght, LargeList::is1_down, LargeList::is1_up, LargeList::is2_down, LargeList::is2_up, BindStruct::Large, list_1, list_2_1, list_2_2, and LargeList::tmp_J.
Referenced by child_exchange().
int child_exchange_GetInfo | ( | int | iExchange, |
struct BindStruct * | X | ||
) |
Compute mask for bit operation of exchange term.
Copy coupling constant (LargeList::tmp_J)
Compute mask for checking occupations of \((i_1,\uparrow)\) (LargeList::is1_up), \((i_1,\downarrow)\) (LargeList::is1_down) \((i_2,\uparrow)\) (LargeList::is2_up), \((i_2,\downarrow)\) (LargeList::is2_down)
[in] | iExchange | Index of exchange interaction |
[in,out] | X |
Definition at line 196 of file mltplyHubbardCore.cpp.
References BindStruct::Def, DefineList::ExchangeCoupling, LargeList::is1_down, LargeList::is1_up, LargeList::is2_down, LargeList::is2_up, BindStruct::Large, DefineList::ParaExchangeCoupling, LargeList::tmp_J, and DefineList::Tpow.
Referenced by mltplyHubbard(), and mltplyHubbardGC().
int child_general_hopp_GetInfo | ( | struct BindStruct * | X, |
long int | isite1, | ||
long int | isite2, | ||
long int | sigma1, | ||
long int | sigma2 | ||
) |
Compute mask for bit operation of hopping term.
Compute mask for checking occupations of \((i_1,\sigma_1)\) (LargeList::is1_spin) and \((i_2,\sigma_2)\) (LargeList::is2_spin)
Compute mask for Fermion sign (LargeList::A_spin)
Compute mask for hopping (LargeList::isA_spin)
[in,out] | X | |
[in] | isite1 | Site index |
[in] | isite2 | Site index |
[in] | sigma1 | Spin index |
[in] | sigma2 | Spin index |
Definition at line 34 of file mltplyHubbardCore.cpp.
References LargeList::A_spin, BindStruct::Def, LargeList::is1_spin, LargeList::is2_spin, LargeList::isA_spin, BindStruct::Large, and DefineList::Tpow.
Referenced by expec_cisajs_Hubbard(), expec_cisajs_HubbardGC(), GetPairExcitedStateHubbard(), GetPairExcitedStateHubbardGC(), mltplyHalfSpinGC(), mltplyHubbard(), and mltplyHubbardGC().
int child_general_int_GetInfo | ( | struct BindStruct * | X, |
long int | isite1, | ||
long int | isite2, | ||
long int | isite3, | ||
long int | isite4, | ||
long int | sigma1, | ||
long int | sigma2, | ||
long int | sigma3, | ||
long int | sigma4, | ||
std::complex< double > | tmp_V | ||
) |
Compute mask for bit operation of general interaction term.
Compute mask for checking occupations of \((i_1,\sigma_1)\) (LargeList::is1_spin) and \((i_2,\sigma_2)\) (LargeList::is2_spin)
Compute mask for Fermion sign (LargeList::A_spin)
Compute mask for checking occupations of \((i_3,\sigma_3)\) (LargeList::is3_spin) and \((i_4,\sigma_4)\) (LargeList::is4_spin)
Compute mask for Fermion sign (LargeList::B_spin)
Compute mask for hopping (LargeList::isA_spin, LargeList::isB_spin)
Copy coupling constant (LargeList::tmp_V)
[in,out] | X | |
[in] | isite1 | Site index |
[in] | isite2 | Site index |
[in] | isite3 | Site index |
[in] | isite4 | Site index |
[in] | sigma1 | Spin index |
[in] | sigma2 | Spin index |
[in] | sigma3 | Spin index |
[in] | sigma4 | Spin index |
[in] | tmp_V | Coupling constant |
Definition at line 76 of file mltplyHubbardCore.cpp.
References LargeList::A_spin, LargeList::B_spin, BindStruct::Def, LargeList::is1_spin, LargeList::is2_spin, LargeList::is3_spin, LargeList::is4_spin, LargeList::isA_spin, LargeList::isB_spin, LargeList::isite1, LargeList::isite2, LargeList::isite3, LargeList::isite4, BindStruct::Large, LargeList::tmp_V, and DefineList::Tpow.
Referenced by expec_cisajscktalt_Hubbard(), expec_cisajscktalt_HubbardGC(), mltplyHubbard(), and mltplyHubbardGC().
void child_pairhopp_element | ( | long int | j, |
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
struct BindStruct * | X, | ||
long int * | tmp_off | ||
) |
Compute pairhopp term of canonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[in,out] | X | |
[out] | tmp_off | Index of final wavefunction |
Definition at line 494 of file mltplyHubbardCore.cpp.
References GetOffComp(), LargeList::ihfbit, LargeList::ilft, LargeList::irght, LargeList::is1_down, LargeList::is1_up, LargeList::is2_down, LargeList::is2_up, BindStruct::Large, list_1, list_2_1, list_2_2, and LargeList::tmp_J.
Referenced by child_pairhopp().
int child_pairhopp_GetInfo | ( | int | iPairHopp, |
struct BindStruct * | X | ||
) |
Compute mask for bit operation of pairhop term.
Copy coupling constant (LargeList::tmp_J)
Compute mask for checking occupations of \((i_1,\uparrow)\) (LargeList::is1_up), \((i_1,\downarrow)\) (LargeList::is1_down) \((i_2,\uparrow)\) (LargeList::is2_up), \((i_2,\downarrow)\) (LargeList::is2_down)
[in] | iPairHopp | Index of pairhopp interaction |
[in,out] | X |
Definition at line 168 of file mltplyHubbardCore.cpp.
References BindStruct::Def, LargeList::is1_down, LargeList::is1_up, LargeList::is2_down, LargeList::is2_up, BindStruct::Large, DefineList::PairHopping, DefineList::ParaPairHopping, LargeList::tmp_J, and DefineList::Tpow.
Referenced by mltplyHubbard(), and mltplyHubbardGC().
void CisAjt | ( | long int | j, |
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
struct BindStruct * | X, | ||
long int | is1_spin, | ||
long int | is2_spin, | ||
long int | sum_spin, | ||
long int | diff_spin, | ||
std::complex< double > | tmp_V | ||
) |
\(c_{is}^\dagger c_{jt}\) term for canonical Hubbard
[in] | j | Index of wavefunction |
[in,out] | tmp_v0 | \(v_0 = H v_1\) |
[in] | tmp_v1 | Vector to be producted |
[in,out] | X | |
[in] | is1_spin | Mask for occupation of (is) |
[in] | is2_spin | Mask for occupation of (jt) |
[in] | sum_spin | Mask for hopping |
[in] | diff_spin | Mask for Fermion sign |
[in] | tmp_V | Hopping integral |
Definition at line 291 of file mltplyHubbardCore.cpp.
References GetOffComp(), LargeList::ihfbit, LargeList::ilft, LargeList::irght, BindStruct::Large, list_1, list_2_1, list_2_2, and SgnBit().
Referenced by child_general_hopp(), X_child_CisAjtCkuAku_Hubbard_MPI(), and X_child_CisAjtCkuAlv_Hubbard_MPI().
void GC_AisCis | ( | long int | j, |
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
long int | is1_spin, | ||
std::complex< double > | tmp_trans | ||
) |
Operation of \(t c_{i\sigma} c_{i\sigma}^\dagger\) (Grandcanonical)
[in] | j | Index of element of wavefunction |
[in,out] | tmp_v0 | Result vector |
[in] | tmp_v1 | Input producted vector |
[in] | is1_spin | Mask for occupation of \((i \sigma)\) |
[in] | tmp_trans | Transfer integral |
Definition at line 253 of file mltplyHubbardCore.cpp.
Referenced by GetPairExcitedStateHubbardGC().
void GC_Ajt | ( | long int | j, |
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
long int | is1_spin, | ||
std::complex< double > | tmp_V, | ||
long int * | tmp_off | ||
) |
Compute \(c_{jt}\) term of grandcanonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[in] | is1_spin | Bit mask |
[in] | tmp_V | Coupling constant |
[in] | tmp_off | Index of final wavefunction |
Definition at line 919 of file mltplyHubbardCore.cpp.
References myrank, and SgnBit().
Referenced by GetSingleExcitedStateHubbardGC().
void GC_child_CisAisCisAis_element | ( | long int | j, |
long int | isite1, | ||
long int | isite3, | ||
std::complex< double > | tmp_V, | ||
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1 | ||
) |
Compute \(c_{is}^\dagger c_{is} c_{is}^\dagger c_{is}\) term of grandcanonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | isite1 | Site 1 |
[in] | isite3 | Site 3 |
[in] | tmp_V | Coupling constant |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
Definition at line 751 of file mltplyHubbardCore.cpp.
References X_CisAis().
Referenced by expec_cisajscktalt_HubbardGC(), and GC_child_general_int().
void GC_child_CisAisCjtAku_element | ( | long int | j, |
long int | isite1, | ||
long int | isite3, | ||
long int | isite4, | ||
long int | Bsum, | ||
long int | Bdiff, | ||
std::complex< double > | tmp_V, | ||
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
long int * | tmp_off | ||
) |
Compute \(c_{is}^\dagger c_{is} c_{jt}^\dagger c_{ku}\) term of grandcanonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | isite1 | Site 1 |
[in] | isite3 | Site 3 |
[in] | isite4 | Site 4 |
[in] | Bsum | Bit mask for hopping |
[in] | Bdiff | Bit mask for Fermion sign |
[in] | tmp_V | Coupling constant |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[out] | tmp_off | Index of final wavefunction |
Definition at line 775 of file mltplyHubbardCore.cpp.
References X_CisAis(), and X_GC_CisAjt().
Referenced by expec_cisajscktalt_HubbardGC(), and GC_child_general_int().
void GC_child_CisAjtCkuAku_element | ( | long int | j, |
long int | isite1, | ||
long int | isite2, | ||
long int | isite3, | ||
long int | Asum, | ||
long int | Adiff, | ||
std::complex< double > | tmp_V, | ||
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
long int * | tmp_off | ||
) |
Compute \(c_{is}^\dagger c_{jt} c_{ku}^\dagger c_{ku}\) term of grandcanonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | isite1 | Site 1 |
[in] | isite2 | Site 2 |
[in] | isite3 | Site 3 |
[in] | Asum | Bit mask for hopping |
[in] | Adiff | Bit mask for Fermion sign |
[in] | tmp_V | Coupling constant |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[out] | tmp_off | Index of final wavefunction |
Definition at line 805 of file mltplyHubbardCore.cpp.
References X_CisAis(), and X_GC_CisAjt().
Referenced by expec_cisajscktalt_HubbardGC(), and GC_child_general_int().
void GC_child_CisAjtCkuAlv_element | ( | long int | j, |
long int | isite1, | ||
long int | isite2, | ||
long int | isite3, | ||
long int | isite4, | ||
long int | Asum, | ||
long int | Adiff, | ||
long int | Bsum, | ||
long int | Bdiff, | ||
std::complex< double > | tmp_V, | ||
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
long int * | tmp_off_2 | ||
) |
Compute \(c_{is}^\dagger c_{jt} c_{ku}^\dagger c_{lv}\) term of grandcanonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | isite1 | Site 1 |
[in] | isite2 | Site 2 |
[in] | isite3 | Site 3 |
[in] | isite4 | Site 4 |
[in] | Asum | Bit mask for hopping |
[in] | Adiff | Bit mask for Fermion sign |
[in] | Bsum | Bit mask for hopping |
[in] | Bdiff | Bit mask for Fermion sign |
[in] | tmp_V | Coupling constant |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[out] | tmp_off_2 | Index of final wavefunction |
Definition at line 835 of file mltplyHubbardCore.cpp.
References X_GC_CisAjt().
Referenced by expec_cisajscktalt_HubbardGC(), and GC_child_general_int().
void GC_child_exchange_element | ( | long int | j, |
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
struct BindStruct * | X, | ||
long int * | tmp_off | ||
) |
Compute exchange term of grandcanonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[in,out] | X | |
[out] | tmp_off | Index of final wavefunction |
Definition at line 537 of file mltplyHubbardCore.cpp.
References LargeList::is1_down, LargeList::is1_up, LargeList::is2_down, LargeList::is2_up, BindStruct::Large, and LargeList::tmp_J.
Referenced by GC_child_exchange().
void GC_child_pairhopp_element | ( | long int | j, |
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
struct BindStruct * | X, | ||
long int * | tmp_off | ||
) |
Compute pairhopp term of grandcanonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in,out] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[in,out] | X | |
[out] | tmp_off | Index of final wavefunction |
Definition at line 586 of file mltplyHubbardCore.cpp.
References LargeList::is1_down, LargeList::is1_up, LargeList::is2_down, LargeList::is2_up, BindStruct::Large, and LargeList::tmp_J.
Referenced by GC_child_pairhopp().
void GC_Cis | ( | long int | j, |
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
long int | is1_spin, | ||
std::complex< double > | tmp_V, | ||
long int * | tmp_off | ||
) |
Compute \(c_{is}^\dagger\) term of grandcanonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | tmp_v0 | Resulting wavefunction |
[in] | tmp_v1 | Wavefunction to be multiplied |
[in] | is1_spin | Bit mask |
[in] | tmp_V | Coupling constant |
[in] | tmp_off | Index of final wavefunction |
Definition at line 872 of file mltplyHubbardCore.cpp.
References myrank, and SgnBit().
Referenced by GetSingleExcitedStateHubbardGC().
void GC_CisAis | ( | long int | j, |
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
long int | is1_spin, | ||
std::complex< double > | tmp_trans | ||
) |
Operation of \(t c_{i\sigma}^\dagger c_{i\sigma}\) (Grandcanonical)
[in] | j | Index of element of wavefunction |
[in,out] | tmp_v0 | Result vector |
[in] | tmp_v1 | Input producted vector |
[in] | is1_spin | Mask for occupation of \((i \sigma)\) |
[in] | tmp_trans | Transfer integral |
Definition at line 231 of file mltplyHubbardCore.cpp.
Referenced by GC_child_general_hopp().
void GC_CisAjt | ( | long int | j, |
int | nstate, | ||
std::complex< double > ** | tmp_v0, | ||
std::complex< double > ** | tmp_v1, | ||
long int | is1_spin, | ||
long int | is2_spin, | ||
long int | sum_spin, | ||
long int | diff_spin, | ||
std::complex< double > | tmp_V, | ||
long int * | tmp_off | ||
) |
\(c_{is}^\dagger c_{jt}\) term for grandcanonical Hubbard
[in] | j | Index of wavefunction |
[in] | tmp_v0 | \(v_0 = H v_1\) |
[in] | tmp_v1 | Vector to be producted |
[in] | is1_spin | Mask for occupation of (is) |
[in] | is2_spin | Mask for occupation of (jt) |
[in] | sum_spin | Mask for hopping |
[in] | diff_spin | Mask for Fermion sign |
[in] | tmp_V | Hopping |
[in] | tmp_off | Index of wavefunction of final state |
Definition at line 330 of file mltplyHubbardCore.cpp.
References SgnBit().
Referenced by GC_child_general_hopp(), X_GC_child_CisAjtCkuAku_Hubbard_MPI(), and X_GC_child_CisAjtCkuAlv_Hubbard_MPI().
int X_Ajt | ( | long int | j, |
long int | is1_spin, | ||
long int * | tmp_off, | ||
long int * | list_1_org, | ||
long int * | list_2_1_target, | ||
long int * | list_2_2_target, | ||
long int | _irght, | ||
long int | _ilft, | ||
long int | _ihfbit | ||
) |
Compute index of final wavefunction associatesd to \(c_{jt}\) term of canonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | is1_spin | Bit mask |
[out] | tmp_off | Index of final wavefunction |
[in] | list_1_org | Similar to list_1 |
[in] | list_2_1_target | Similar to list_2_1 |
[in] | list_2_2_target | Similar to list_2_2 |
[in] | _irght | Similar to LargeList::irght |
[in] | _ilft | Similar to LargeList::ilft |
[in] | _ihfbit | Similar to LargeList::ihfbit |
Definition at line 1020 of file mltplyHubbardCore.cpp.
References GetOffComp(), myrank, and SgnBit().
Referenced by GetSingleExcitedStateHubbard().
int X_Cis | ( | long int | j, |
long int | is1_spin, | ||
long int * | tmp_off, | ||
long int * | list_1_org, | ||
long int * | list_2_1_target, | ||
long int * | list_2_2_target, | ||
long int | _irght, | ||
long int | _ilft, | ||
long int | _ihfbit | ||
) |
Compute index of final wavefunction associatesd to \(c_{is}^\dagger\) term of canonical Hubbard system.
[in] | j | Index of initial wavefunction |
[in] | is1_spin | Bit mask |
[out] | tmp_off | Index of final wavefunction |
[in] | list_1_org | Similar to list_1 |
[in] | list_2_1_target | Similar to list_2_1 |
[in] | list_2_2_target | Similar to list_2_2 |
[in] | _irght | Similar to LargeList::irght |
[in] | _ilft | Similar to LargeList::ilft |
[in] | _ihfbit | Similar to LargeList::ihfbit |
Definition at line 966 of file mltplyHubbardCore.cpp.
References GetOffComp(), myrank, and SgnBit().
Referenced by GetSingleExcitedStateHubbard().
int X_CisAis | ( | long int | list_1_j, |
long int | is1_spin | ||
) |
\(c_{is}\\dagger c_{is}\) term in Hubbard (canonical)
Definition at line 276 of file mltplyHubbardCore.cpp.
Referenced by child_CisAisCisAis_element(), child_CisAisCjtAku_element(), child_CisAjtCkuAku_element(), GC_child_CisAisCisAis_element(), GC_child_CisAisCjtAku_element(), GC_child_CisAjtCkuAku_element(), and X_child_CisAis_Hubbard_MPI().
int X_CisAjt | ( | long int | list_1_j, |
struct BindStruct * | X, | ||
long int | is1_spin, | ||
long int | is2_spin, | ||
long int | sum_spin, | ||
long int | diff_spin, | ||
long int * | tmp_off | ||
) |
Compute index of wavefunction of final state.
[in] | list_1_j | Similer to list_1 ? |
[in] | X | |
[in] | is1_spin | Mask for occupation of (is) |
[in] | is2_spin | Mask for occupation of (jt) |
[in] | sum_spin | Mask for hopping |
[in] | diff_spin | Mask for Fermion sign |
[in] | tmp_off | Index of wavefunction of final state |
Definition at line 371 of file mltplyHubbardCore.cpp.
References GetOffComp(), LargeList::ihfbit, LargeList::ilft, LargeList::irght, BindStruct::Large, list_2_1, list_2_2, and X_GC_CisAjt().
Referenced by child_CisAisCjtAku_element(), child_CisAjtCkuAku_element(), child_CisAjtCkuAlv_element(), and GetPairExcitedStateHubbard().
int X_GC_CisAjt | ( | long int | list_1_j, |
long int | is1_spin, | ||
long int | is2_spin, | ||
long int | sum_spin, | ||
long int | diff_spin, | ||
long int * | tmp_off | ||
) |
Compute index of wavefunction of final state.
[in] | list_1_j | list_1 ? |
[in] | is1_spin | Mask for occupation of (is) |
[in] | is2_spin | Mask for occupation of (jt) |
[in] | sum_spin | Mask for hopping |
[in] | diff_spin | Mask for Fermion sign |
[out] | tmp_off | Index of wavefunction of final state |
Definition at line 403 of file mltplyHubbardCore.cpp.
References SgnBit().
Referenced by child_CisAjtCkuAlv_element(), GC_child_CisAisCjtAku_element(), GC_child_CisAjtCkuAku_element(), GC_child_CisAjtCkuAlv_element(), GetSgnInterAll(), X_child_CisAjtCkuAlv_Hubbard_MPI(), X_CisAjt(), and X_GC_child_CisAjtCkuAlv_Hubbard_MPI().