ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
|
Typedefs | |
using | TAC = std::pair< int, std::array< int, 3 > > |
Functions | |
void | cal_dH (const UnitCell &ucell, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_Arrays, const Grid_Driver &grid, const TwoCenterBundle &two_center_bundle, const LCAO_Orbitals &orb, const int ¤t_spin, const double &sparse_thr, const ModuleBase::matrix &v_eff, Gint_k &gint_k) |
void | cal_dS (const UnitCell &ucell, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_Arrays, const Grid_Driver &grid, const TwoCenterBundle &two_center_bundle, const LCAO_Orbitals &orb, const double &sparse_thr) |
void | set_R_range (std::set< Abfs::Vector3_Order< int > > &all_R_coor, const Grid_Driver &grid) |
void | cal_dSTN_R (const UnitCell &ucell, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_Arrays, ForceStressArrays &fsr, const Grid_Driver &grid, const std::vector< double > &orb_cutoff, const int ¤t_spin, const double &sparse_thr) |
void | destroy_dH_R_sparse (LCAO_HS_Arrays &HS_Arrays) |
void | sync_all_R_coor (std::set< Abfs::Vector3_Order< int > > &all_R_coor, MPI_Comm comm) |
template<typename T > | |
std::set< Abfs::Vector3_Order< int > > | get_R_range (const hamilt::HContainer< T > &hR) |
void | cal_HSR (const UnitCell &ucell, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_Arrays, const Grid_Driver &grid, const int ¤t_spin, const double &sparse_thr, const int(&nmp)[3], hamilt::Hamilt< std::complex< double > > *p_ham) |
void | cal_HContainer_d (const Parallel_Orbitals &pv, const int ¤t_spin, const double &sparse_threshold, const hamilt::HContainer< double > &hR, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, double > > > &target) |
void | cal_HContainer_cd (const Parallel_Orbitals &pv, const int ¤t_spin, const double &sparse_threshold, const hamilt::HContainer< std::complex< double > > &hR, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > &target) |
void | cal_HContainer_td (const Parallel_Orbitals &pv, const int ¤t_spin, const double &sparse_threshold, const hamilt::HContainer< double > &hR, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > &target) |
void | clear_zero_elements (LCAO_HS_Arrays &HS_Arrays, const int ¤t_spin, const double &sparse_thr) |
void | destroy_HS_R_sparse (LCAO_HS_Arrays &HS_Arrays) |
void | cal_SR (const Parallel_Orbitals &pv, std::set< Abfs::Vector3_Order< int > > &all_R_coor, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, double > > > &SR_sparse, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > &SR_soc_sparse, const Grid_Driver &grid, const double &sparse_thr, hamilt::Hamilt< std::complex< double > > *p_ham) |
calculate overlap matrix with lattice vector R | |
void | cal_TR (const UnitCell &ucell, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_arrays, const Grid_Driver &grid, const TwoCenterBundle &two_center_bundle, const LCAO_Orbitals &orb, const double &sparse_thr) |
calculate kinetic matrix with lattice vector R | |
void | cal_STN_R_for_T (const UnitCell &ucell, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_arrays, const Grid_Driver &grid, const std::vector< double > &orb_cutoff, const double &sparse_thr) |
cal_STN_R_for_T is only called by cal_TR | |
void | destroy_T_R_sparse (LCAO_HS_Arrays &HS_Arrays) |
void | cal_HR_dftu (const Parallel_Orbitals &pv, std::set< Abfs::Vector3_Order< int > > &all_R_coor, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, double > > > &SR_sparse, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, double > > > *HR_sparse, const int ¤t_spin, const double &sparse_thr) |
void | cal_HR_dftu_soc (const Parallel_Orbitals &pv, std::set< Abfs::Vector3_Order< int > > &all_R_coor, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > &SR_soc_sparse, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > &HR_soc_sparse, const int ¤t_spin, const double &sparse_thr) |
using sparse_format::TAC = typedef std::pair<int, std::array<int, 3> > |
void sparse_format::cal_dH | ( | const UnitCell & | ucell, |
const Parallel_Orbitals & | pv, | ||
LCAO_HS_Arrays & | HS_Arrays, | ||
const Grid_Driver & | grid, | ||
const TwoCenterBundle & | two_center_bundle, | ||
const LCAO_Orbitals & | orb, | ||
const int & | current_spin, | ||
const double & | sparse_thr, | ||
const ModuleBase::matrix & | v_eff, | ||
Gint_k & | gint_k | ||
) |
void sparse_format::cal_dS | ( | const UnitCell & | ucell, |
const Parallel_Orbitals & | pv, | ||
LCAO_HS_Arrays & | HS_Arrays, | ||
const Grid_Driver & | grid, | ||
const TwoCenterBundle & | two_center_bundle, | ||
const LCAO_Orbitals & | orb, | ||
const double & | sparse_thr | ||
) |
void sparse_format::cal_dSTN_R | ( | const UnitCell & | ucell, |
const Parallel_Orbitals & | pv, | ||
LCAO_HS_Arrays & | HS_Arrays, | ||
ForceStressArrays & | fsr, | ||
const Grid_Driver & | grid, | ||
const std::vector< double > & | orb_cutoff, | ||
const int & | current_spin, | ||
const double & | sparse_thr | ||
) |
void sparse_format::cal_HContainer_cd | ( | const Parallel_Orbitals & | pv, |
const int & | current_spin, | ||
const double & | sparse_threshold, | ||
const hamilt::HContainer< std::complex< double > > & | hR, | ||
std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > & | target | ||
) |
void sparse_format::cal_HContainer_d | ( | const Parallel_Orbitals & | pv, |
const int & | current_spin, | ||
const double & | sparse_threshold, | ||
const hamilt::HContainer< double > & | hR, | ||
std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, double > > > & | target | ||
) |
void sparse_format::cal_HContainer_td | ( | const Parallel_Orbitals & | pv, |
const int & | current_spin, | ||
const double & | sparse_threshold, | ||
const hamilt::HContainer< double > & | hR, | ||
std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > & | target | ||
) |
void sparse_format::cal_HR_dftu | ( | const Parallel_Orbitals & | pv, |
std::set< Abfs::Vector3_Order< int > > & | all_R_coor, | ||
std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, double > > > & | SR_sparse, | ||
std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, double > > > * | HR_sparse, | ||
const int & | current_spin, | ||
const double & | sparse_thr | ||
) |
void sparse_format::cal_HR_dftu_soc | ( | const Parallel_Orbitals & | pv, |
std::set< Abfs::Vector3_Order< int > > & | all_R_coor, | ||
std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > & | SR_soc_sparse, | ||
std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > & | HR_soc_sparse, | ||
const int & | current_spin, | ||
const double & | sparse_thr | ||
) |
void sparse_format::cal_HSR | ( | const UnitCell & | ucell, |
const Parallel_Orbitals & | pv, | ||
LCAO_HS_Arrays & | HS_Arrays, | ||
const Grid_Driver & | grid, | ||
const int & | current_spin, | ||
const double & | sparse_thr, | ||
const int(&) | nmp[3], | ||
hamilt::Hamilt< std::complex< double > > * | p_ham | ||
) |
void sparse_format::cal_SR | ( | const Parallel_Orbitals & | pv, |
std::set< Abfs::Vector3_Order< int > > & | all_R_coor, | ||
std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, double > > > & | SR_sparse, | ||
std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > & | SR_soc_sparse, | ||
const Grid_Driver & | grid, | ||
const double & | sparse_thr, | ||
hamilt::Hamilt< std::complex< double > > * | p_ham | ||
) |
calculate overlap matrix with lattice vector R
void sparse_format::cal_STN_R_for_T | ( | const UnitCell & | ucell, |
const Parallel_Orbitals & | pv, | ||
LCAO_HS_Arrays & | HS_arrays, | ||
const Grid_Driver & | grid, | ||
const std::vector< double > & | orb_cutoff, | ||
const double & | sparse_thr | ||
) |
cal_STN_R_for_T is only called by cal_TR
void sparse_format::cal_TR | ( | const UnitCell & | ucell, |
const Parallel_Orbitals & | pv, | ||
LCAO_HS_Arrays & | HS_arrays, | ||
const Grid_Driver & | grid, | ||
const TwoCenterBundle & | two_center_bundle, | ||
const LCAO_Orbitals & | orb, | ||
const double & | sparse_thr | ||
) |
calculate kinetic matrix with lattice vector R
void sparse_format::clear_zero_elements | ( | LCAO_HS_Arrays & | HS_Arrays, |
const int & | current_spin, | ||
const double & | sparse_thr | ||
) |
void sparse_format::destroy_dH_R_sparse | ( | LCAO_HS_Arrays & | HS_Arrays | ) |
void sparse_format::destroy_HS_R_sparse | ( | LCAO_HS_Arrays & | HS_Arrays | ) |
void sparse_format::destroy_T_R_sparse | ( | LCAO_HS_Arrays & | HS_Arrays | ) |
std::set< Abfs::Vector3_Order< int > > sparse_format::get_R_range | ( | const hamilt::HContainer< T > & | hR | ) |
void sparse_format::set_R_range | ( | std::set< Abfs::Vector3_Order< int > > & | all_R_coor, |
const Grid_Driver & | grid | ||
) |
void sparse_format::sync_all_R_coor | ( | std::set< Abfs::Vector3_Order< int > > & | all_R_coor, |
MPI_Comm | comm | ||
) |