ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
|
Typedefs | |
typedef std::tuple< int, int, int, int > | key_tuple |
Functions | |
void | grid_prepare (const Grid_Technique >, Gint_Gamma &gint_gamma, Gint_k &gint_k, const UnitCell &ucell, const LCAO_Orbitals &orb, const ModulePW::PW_Basis &rhopw, const ModulePW::PW_Basis_Big &bigpw) |
prepare gird integration | |
template<typename T > | |
void | DeePKS_init (const UnitCell &ucell, Parallel_Orbitals &pv, const int &nks, const LCAO_Orbitals &orb, LCAO_Deepks< T > &ld, std::ofstream &ofs) |
template void | DeePKS_init< double > (const UnitCell &ucell, Parallel_Orbitals &pv, const int &nks, const LCAO_Orbitals &orb, LCAO_Deepks< double > &ld, std::ofstream &ofs) |
template void | DeePKS_init< std::complex< double > > (const UnitCell &ucell, Parallel_Orbitals &pv, const int &nks, const LCAO_Orbitals &orb, LCAO_Deepks< std::complex< double > > &ld, std::ofstream &ofs) |
void | init_basis_lcao (Parallel_Orbitals &pv, const double &onsite_radius, const double &lcao_ecut, const double &lcao_dk, const double &lcao_dr, const double &lcao_rmax, UnitCell &ucell, TwoCenterBundle &two_center_bundle, LCAO_Orbitals &orb) |
void | build_Nonlocal_mu_new (const Parallel_Orbitals &pv, ForceStressArrays &fsr, double *HlocR, const bool &calc_deri, const UnitCell &ucell, const LCAO_Orbitals &orb, const TwoCenterIntegrator &intor_orb_beta, const Grid_Driver *GridD) |
void | set_force (const Parallel_Orbitals &pv, const int &iw1_all, const int &iw2_all, const double &vx, const double &vy, const double &vz, const char &dtype, double *dsloc_x, double *dsloc_y, double *dsloc_z, double *dhloc_fixed_x, double *dhloc_fixed_y, double *dhloc_fixed_z) |
set the elements of force-related matrices in LCAO method | |
void | set_stress (const Parallel_Orbitals &pv, const int &iw1_all, const int &iw2_all, const double &vx, const double &vy, const double &vz, const char &dtype, const ModuleBase::Vector3< double > &dtau, double *dsloc_11, double *dsloc_12, double *dsloc_13, double *dsloc_22, double *dsloc_23, double *dsloc_33, double *dhloc_fixed_11, double *dhloc_fixed_12, double *dhloc_fixed_13, double *dhloc_fixed_22, double *dhloc_fixed_23, double *dhloc_fixed_33) |
set the elements of stress-related matrices in LCAO method | |
void | single_overlap (const LCAO_Orbitals &orb, const TwoCenterBundle &two_center_bundle, const Parallel_Orbitals &pv, const UnitCell &ucell, const int nspin, const bool cal_stress, const int iw1_all, const int iw2_all, const int m1, const int m2, const char &dtype, const int T1, const int L1, const int N1, const int T2, const int L2, const int N2, const ModuleBase::Vector3< double > &dtau, const ModuleBase::Vector3< double > &tau1, const ModuleBase::Vector3< double > &tau2, const int npol, const int jj, const int jj0, const int kk, const int kk0, int &nnr, int &total_nnr, double *olm, double *HSloc) |
set each element without derivatives | |
void | single_derivative (ForceStressArrays &fsr, const LCAO_Orbitals &orb, const TwoCenterBundle &two_center_bundle, const Parallel_Orbitals &pv, const UnitCell &ucell, const int nspin, const bool cal_stress, const int iw1_all, const int iw2_all, const int m1, const int m2, const char &dtype, const int T1, const int L1, const int N1, const int T2, const int L2, const int N2, const ModuleBase::Vector3< double > &dtau, const ModuleBase::Vector3< double > &tau1, const ModuleBase::Vector3< double > &tau2, const int npol, const int jj, const int jj0, const int kk, const int kk0, int &nnr, int &total_nnr, double *olm) |
set each element of T matrices | |
void | build_ST_new (ForceStressArrays &fsr, const char &dtype, const bool &cal_deri, const bool &cal_stress, const UnitCell &ucell, const LCAO_Orbitals &orb, const Parallel_Orbitals &pv, const TwoCenterBundle &two_center_bundle, const Grid_Driver *GridD, double *SHlocR, bool cal_syns=false, double dmax=0.0) |
set the elements of S and T matrices | |
void | zeros_HSR (const char &mtype, LCAO_HS_Arrays &HS_arrays) |
set zeros for HSR matrices | |
template<typename T > | |
void | set_mat2d (const int &global_ir, const int &global_ic, const T &v, const Parallel_Orbitals &pv, T *mat) |
template void | set_mat2d< double > (const int &global_ir, const int &global_ic, const double &v, const Parallel_Orbitals &pv, double *HSloc) |
template void | set_mat2d< std::complex< double > > (const int &global_ir, const int &global_ic, const std::complex< double > &v, const Parallel_Orbitals &pv, std::complex< double > *HSloc) |
once the GlobalC::exx_info has been deleted, this include can be gone mohan note 2024-07-21
typedef std::tuple<int, int, int, int> LCAO_domain::key_tuple |
void LCAO_domain::build_Nonlocal_mu_new | ( | const Parallel_Orbitals & | pv, |
ForceStressArrays & | fsr, | ||
double * | HlocR, | ||
const bool & | calc_deri, | ||
const UnitCell & | ucell, | ||
const LCAO_Orbitals & | orb, | ||
const TwoCenterIntegrator & | intor_orb_beta, | ||
const Grid_Driver * | GridD | ||
) |
calc_deri
calc_deri
void LCAO_domain::build_ST_new | ( | ForceStressArrays & | fsr, |
const char & | dtype, | ||
const bool & | cal_deri, | ||
const bool & | cal_stress, | ||
const UnitCell & | ucell, | ||
const LCAO_Orbitals & | orb, | ||
const Parallel_Orbitals & | pv, | ||
const TwoCenterBundle & | two_center_bundle, | ||
const Grid_Driver * | GridD, | ||
double * | SHlocR, | ||
bool | cal_syns = false , |
||
double | dmax = 0.0 |
||
) |
set the elements of S and T matrices
void LCAO_domain::DeePKS_init | ( | const UnitCell & | ucell, |
Parallel_Orbitals & | pv, | ||
const int & | nks, | ||
const LCAO_Orbitals & | orb, | ||
LCAO_Deepks< T > & | ld, | ||
std::ofstream & | ofs | ||
) |
template void LCAO_domain::DeePKS_init< double > | ( | const UnitCell & | ucell, |
Parallel_Orbitals & | pv, | ||
const int & | nks, | ||
const LCAO_Orbitals & | orb, | ||
LCAO_Deepks< double > & | ld, | ||
std::ofstream & | ofs | ||
) |
template void LCAO_domain::DeePKS_init< std::complex< double > > | ( | const UnitCell & | ucell, |
Parallel_Orbitals & | pv, | ||
const int & | nks, | ||
const LCAO_Orbitals & | orb, | ||
LCAO_Deepks< std::complex< double > > & | ld, | ||
std::ofstream & | ofs | ||
) |
void LCAO_domain::grid_prepare | ( | const Grid_Technique & | gt, |
Gint_Gamma & | gint_gamma, | ||
Gint_k & | gint_k, | ||
const UnitCell & | ucell, | ||
const LCAO_Orbitals & | orb, | ||
const ModulePW::PW_Basis & | rhopw, | ||
const ModulePW::PW_Basis_Big & | bigpw | ||
) |
prepare gird integration
void LCAO_domain::init_basis_lcao | ( | Parallel_Orbitals & | pv, |
const double & | onsite_radius, | ||
const double & | lcao_ecut, | ||
const double & | lcao_dk, | ||
const double & | lcao_dr, | ||
const double & | lcao_rmax, | ||
UnitCell & | ucell, | ||
TwoCenterBundle & | two_center_bundle, | ||
LCAO_Orbitals & | orb | ||
) |
void LCAO_domain::set_force | ( | const Parallel_Orbitals & | pv, |
const int & | iw1_all, | ||
const int & | iw2_all, | ||
const double & | vx, | ||
const double & | vy, | ||
const double & | vz, | ||
const char & | dtype, | ||
double * | dsloc_x, | ||
double * | dsloc_y, | ||
double * | dsloc_z, | ||
double * | dhloc_fixed_x, | ||
double * | dhloc_fixed_y, | ||
double * | dhloc_fixed_z | ||
) |
set the elements of force-related matrices in LCAO method
void LCAO_domain::set_mat2d | ( | const int & | global_ir, |
const int & | global_ic, | ||
const T & | v, | ||
const Parallel_Orbitals & | pv, | ||
T * | mat | ||
) |
template void LCAO_domain::set_mat2d< double > | ( | const int & | global_ir, |
const int & | global_ic, | ||
const double & | v, | ||
const Parallel_Orbitals & | pv, | ||
double * | HSloc | ||
) |
template void LCAO_domain::set_mat2d< std::complex< double > > | ( | const int & | global_ir, |
const int & | global_ic, | ||
const std::complex< double > & | v, | ||
const Parallel_Orbitals & | pv, | ||
std::complex< double > * | HSloc | ||
) |
void LCAO_domain::set_stress | ( | const Parallel_Orbitals & | pv, |
const int & | iw1_all, | ||
const int & | iw2_all, | ||
const double & | vx, | ||
const double & | vy, | ||
const double & | vz, | ||
const char & | dtype, | ||
const ModuleBase::Vector3< double > & | dtau, | ||
double * | dsloc_11, | ||
double * | dsloc_12, | ||
double * | dsloc_13, | ||
double * | dsloc_22, | ||
double * | dsloc_23, | ||
double * | dsloc_33, | ||
double * | dhloc_fixed_11, | ||
double * | dhloc_fixed_12, | ||
double * | dhloc_fixed_13, | ||
double * | dhloc_fixed_22, | ||
double * | dhloc_fixed_23, | ||
double * | dhloc_fixed_33 | ||
) |
set the elements of stress-related matrices in LCAO method
void LCAO_domain::single_derivative | ( | ForceStressArrays & | fsr, |
const LCAO_Orbitals & | orb, | ||
const TwoCenterBundle & | two_center_bundle, | ||
const Parallel_Orbitals & | pv, | ||
const UnitCell & | ucell, | ||
const int | nspin, | ||
const bool | cal_stress, | ||
const int | iw1_all, | ||
const int | iw2_all, | ||
const int | m1, | ||
const int | m2, | ||
const char & | dtype, | ||
const int | T1, | ||
const int | L1, | ||
const int | N1, | ||
const int | T2, | ||
const int | L2, | ||
const int | N2, | ||
const ModuleBase::Vector3< double > & | dtau, | ||
const ModuleBase::Vector3< double > & | tau1, | ||
const ModuleBase::Vector3< double > & | tau2, | ||
const int | npol, | ||
const int | jj, | ||
const int | jj0, | ||
const int | kk, | ||
const int | kk0, | ||
int & | nnr, | ||
int & | total_nnr, | ||
double * | olm | ||
) |
set each element of T matrices
void LCAO_domain::single_overlap | ( | const LCAO_Orbitals & | orb, |
const TwoCenterBundle & | two_center_bundle, | ||
const Parallel_Orbitals & | pv, | ||
const UnitCell & | ucell, | ||
const int | nspin, | ||
const bool | cal_stress, | ||
const int | iw1_all, | ||
const int | iw2_all, | ||
const int | m1, | ||
const int | m2, | ||
const char & | dtype, | ||
const int | T1, | ||
const int | L1, | ||
const int | N1, | ||
const int | T2, | ||
const int | L2, | ||
const int | N2, | ||
const ModuleBase::Vector3< double > & | dtau, | ||
const ModuleBase::Vector3< double > & | tau1, | ||
const ModuleBase::Vector3< double > & | tau2, | ||
const int | npol, | ||
const int | jj, | ||
const int | jj0, | ||
const int | kk, | ||
const int | kk0, | ||
int & | nnr, | ||
int & | total_nnr, | ||
double * | olm, | ||
double * | HSloc | ||
) |
set each element without derivatives
void LCAO_domain::zeros_HSR | ( | const char & | mtype, |
LCAO_HS_Arrays & | HS_arrays | ||
) |
set zeros for HSR matrices