9template <
typename FPTYPE,
typename Device>
13#ifdef __ENABLE_FLOAT_FFTW
29 psi::Psi<std::complex<FPTYPE>, Device>* p_psi_in,
49 void decide_nche(
const FPTYPE dt,
const FPTYPE cond_thr,
const int&
fd_nche, FPTYPE try_emin, FPTYPE try_emax);
62 void sKG(
const int& smear_type,
68 const int& npart_sto);
90 const psi::Psi<std::complex<lowTYPE>, Device>& kspsi_all,
91 const psi::Psi<std::complex<lowTYPE>, Device>& vkspsi,
94 std::complex<FPTYPE>* leftfact,
95 std::complex<FPTYPE>* rightfact,
96 psi::Psi<std::complex<lowTYPE>, Device>& leftchi,
97 psi::Psi<std::complex<lowTYPE>, Device>& rightchi,
98 psi::Psi<std::complex<lowTYPE>, Device>& left_hchi,
99 psi::Psi<std::complex<lowTYPE>, Device>& right_hchi,
100 psi::Psi<std::complex<lowTYPE>, Device>& batch_vchi,
101 psi::Psi<std::complex<lowTYPE>, Device>& batch_vhchi,
103 psi::Psi<std::complex<lowTYPE>, Device>& chi_all,
104 psi::Psi<std::complex<lowTYPE>, Device>& hchi_all,
106 void* gatherinfo_sto,
108 const int& bsize_psi,
109 std::complex<lowTYPE>* j1,
110 std::complex<lowTYPE>* j2,
111 std::complex<lowTYPE>* tmpj,
114 const std::complex<lowTYPE>& factor,
115 const int bandinfo[6]);
Special pw_basis class. It includes different k-points.
Definition pw_basis_k.h:57
Definition sto_elecond.h:11
Stochastic_WF< std::complex< FPTYPE >, Device > * p_stowf
pointer to the stochastic wavefunctions
Definition sto_elecond.h:77
Sto_Func< FPTYPE > stofunc
functions
Definition sto_elecond.h:78
hamilt::Hamilt< std::complex< FPTYPE >, Device > * p_hamilt
pointer to the Hamiltonian
Definition sto_elecond.h:76
void decide_nche(const FPTYPE dt, const FPTYPE cond_thr, const int &fd_nche, FPTYPE try_emin, FPTYPE try_emax)
Set the N order of Chebyshev expansion for conductivities It will change class member : fd_nche,...
Definition sto_elecond.cpp:46
~Sto_EleCond()
Definition sto_elecond.h:34
hamilt::HamiltSdftPW< std::complex< lowTYPE >, Device > * hamilt_sto_
pointer to the Hamiltonian for sDFT
Definition sto_elecond.h:81
void sKG(const int &smear_type, const double &fwhmin, const double &wcut, const double &dw_in, const double &dt_in, const bool &nonlocal, const int &npart_sto)
calculate Stochastic Kubo-Greenwood
Definition sto_elecond.cpp:477
hamilt::HamiltSdftPW< std::complex< FPTYPE >, Device > * p_hamilt_sto
pointer to the Hamiltonian for sDFT
Definition sto_elecond.h:80
void cal_jmatrix(hamilt::HamiltSdftPW< std::complex< lowTYPE >, Device > *hamilt, const psi::Psi< std::complex< lowTYPE >, Device > &kspsi_all, const psi::Psi< std::complex< lowTYPE >, Device > &vkspsi, const double *en, const double *en_all, std::complex< FPTYPE > *leftfact, std::complex< FPTYPE > *rightfact, psi::Psi< std::complex< lowTYPE >, Device > &leftchi, psi::Psi< std::complex< lowTYPE >, Device > &rightchi, psi::Psi< std::complex< lowTYPE >, Device > &left_hchi, psi::Psi< std::complex< lowTYPE >, Device > &right_hchi, psi::Psi< std::complex< lowTYPE >, Device > &batch_vchi, psi::Psi< std::complex< lowTYPE >, Device > &batch_vhchi, psi::Psi< std::complex< lowTYPE >, Device > &chi_all, psi::Psi< std::complex< lowTYPE >, Device > &hchi_all, void *gatherinfo_ks, void *gatherinfo_sto, const int &bsize_psi, std::complex< lowTYPE > *j1, std::complex< lowTYPE > *j2, std::complex< lowTYPE > *tmpj, hamilt::Velocity< lowTYPE, Device > &velop, const int &ik, const std::complex< lowTYPE > &factor, const int bandinfo[6])
calculate Jmatrix <leftv|J|rightv>
Definition sto_elecond.cpp:147
lowTYPE low_emax_
Emax of the Hamiltonian for sDFT.
Definition sto_elecond.h:83
int nbands_sto
number of stochastic bands
Definition sto_elecond.h:72
double lowTYPE
Definition sto_elecond.h:16
lowTYPE low_emin_
Emin of the Hamiltonian for sDFT.
Definition sto_elecond.h:82
int fd_nche
number of Chebyshev orders for Fermi-Dirac function
Definition sto_elecond.h:74
int cond_nche
number of Chebyshev orders for conductivities
Definition sto_elecond.h:73
std::complex< lowTYPE > lcomplex
Definition sto_elecond.h:18
int nbands_ks
number of KS bands
Definition sto_elecond.h:71
int cond_dtbatch
number of time steps in a batch
Definition sto_elecond.h:75
Definition elecstate.h:15
Definition hamilt_sdft_pw.h:11
Definition velocity_pw.h:13
Definition VNL_in_pw.h:21
base device SOURCES math_dngvd_test cpp endif() if(ENABLE_GOOGLEBENCH) AddTest(TARGET PERF_MODULE_HSOLVER_KERNELS LIBS parameter $
Definition CMakeLists.txt:10
Definition memory_op.h:61
Definition memory_op.h:77
Definition memory_op.h:17
Definition memory_op.h:45