#include <Matrix_Orbs22.h>
|
enum class | Matrix_Order {
A1A2B1B2
, A1A2B2B1
, A1B1A2B2
, A1B1B2A2
,
A1B2A2B1
, A1B2B1A2
, A2A1B1B2
, A2A1B2B1
,
A2B1A1B2
, A2B1B2A1
, A2B2A1B1
, A2B2B1A1
,
B1A1A2B2
, B1A1B2A2
, B1A2A1B2
, B1A2B2A1
,
B1B2A1A2
, B1B2A2A1
, B2A1A2B1
, B2A1B1A2
,
B2A2A1B1
, B2A2B1A1
, B2B1A1A2
, B2B1A2A1
} |
|
|
void | init (const int mode, const UnitCell &ucell, const LCAO_Orbitals &orb, const double kmesh_times, const double rmax, int &Lmax) |
|
void | init_radial (const std::vector< std::vector< std::vector< Numerical_Orbital_Lm > > > &orb_A1, const std::vector< std::vector< std::vector< Numerical_Orbital_Lm > > > &orb_A2, const std::vector< std::vector< std::vector< Numerical_Orbital_Lm > > > &orb_B1, const std::vector< std::vector< std::vector< Numerical_Orbital_Lm > > > &, const ORB_gaunt_table &MGT) |
|
void | init_radial (const LCAO_Orbitals &orb_A1, const LCAO_Orbitals &orb_A2, const LCAO_Orbitals &orb_B1, const LCAO_Orbitals &orb_B2, const ORB_gaunt_table &MGT) |
|
void | init_radial_table () |
|
void | init_radial_table (const std::map< size_t, std::map< size_t, std::set< double > > > &Rs) |
|
template<typename Tdata > |
RI::Tensor< Tdata > | cal_overlap_matrix (const size_t TA, const size_t TB, const ModuleBase::Vector3< double > &tauA, const ModuleBase::Vector3< double > &tauB, const ModuleBase::Element_Basis_Index::IndexLNM &index_A1, const ModuleBase::Element_Basis_Index::IndexLNM &index_A2, const ModuleBase::Element_Basis_Index::IndexLNM &index_B1, const ModuleBase::Element_Basis_Index::IndexLNM &index_B2, const Matrix_Order &matrix_order) const |
|
template<typename Tdata > |
std::array< RI::Tensor< Tdata >, 3 > | cal_grad_overlap_matrix (const size_t TA, const size_t TB, const ModuleBase::Vector3< double > &tauA, const ModuleBase::Vector3< double > &tauB, const ModuleBase::Element_Basis_Index::IndexLNM &index_A1, const ModuleBase::Element_Basis_Index::IndexLNM &index_A2, const ModuleBase::Element_Basis_Index::IndexLNM &index_B1, const ModuleBase::Element_Basis_Index::IndexLNM &index_B2, const Matrix_Order &matrix_order) const |
|
template<typename Tdata > |
std::map< size_t, std::map< size_t, std::map< size_t, std::map< size_t, RI::Tensor< Tdata > > > > > | cal_overlap_matrix_all (const UnitCell &ucell, const ModuleBase::Element_Basis_Index::IndexLNM &index_A1, const ModuleBase::Element_Basis_Index::IndexLNM &index_A2, const ModuleBase::Element_Basis_Index::IndexLNM &index_B1, const ModuleBase::Element_Basis_Index::IndexLNM &index_B2) const |
|
|
ModuleBase::Sph_Bessel_Recursive::D2 * | psb_ = nullptr |
|
const double | lcao_dr_ = 0.01 |
|
double * | lat0 = nullptr |
|
std::map< size_t, std::map< size_t, std::map< int, std::map< size_t, std::map< int, std::map< size_t, std::map< int, std::map< size_t, std::map< int, std::map< size_t, Center2_Orb::Orb22 > > > > > > > > > > | center2_orb22_s |
|
◆ Matrix_Order
Enumerator |
---|
A1A2B1B2 | |
A1A2B2B1 | |
A1B1A2B2 | |
A1B1B2A2 | |
A1B2A2B1 | |
A1B2B1A2 | |
A2A1B1B2 | |
A2A1B2B1 | |
A2B1A1B2 | |
A2B1B2A1 | |
A2B2A1B1 | |
A2B2B1A1 | |
B1A1A2B2 | |
B1A1B2A2 | |
B1A2A1B2 | |
B1A2B2A1 | |
B1B2A1A2 | |
B1B2A2A1 | |
B2A1A2B1 | |
B2A1B1A2 | |
B2A2A1B1 | |
B2A2B1A1 | |
B2B1A1A2 | |
B2B1A2A1 | |
◆ cal_grad_overlap_matrix()
template<typename Tdata >
◆ cal_overlap_matrix()
template<typename Tdata >
◆ cal_overlap_matrix_all()
template<typename Tdata >
◆ init()
void Matrix_Orbs22::init |
( |
const int |
mode, |
|
|
const UnitCell & |
ucell, |
|
|
const LCAO_Orbitals & |
orb, |
|
|
const double |
kmesh_times, |
|
|
const double |
rmax, |
|
|
int & |
Lmax |
|
) |
| |
◆ init_radial() [1/2]
◆ init_radial() [2/2]
◆ init_radial_table() [1/2]
void Matrix_Orbs22::init_radial_table |
( |
| ) |
|
◆ init_radial_table() [2/2]
void Matrix_Orbs22::init_radial_table |
( |
const std::map< size_t, std::map< size_t, std::set< double > > > & |
Rs | ) |
|
◆ center2_orb22_s
std::map< size_t, std::map<size_t, std::map<int, std::map<size_t, std::map<int, std::map<size_t, std::map<int, std::map<size_t, std::map<int, std::map<size_t, Center2_Orb::Orb22> > > > > > > > > > Matrix_Orbs22::center2_orb22_s |
|
private |
◆ lat0
double* Matrix_Orbs22::lat0 = nullptr |
|
private |
◆ lcao_dr_
const double Matrix_Orbs22::lcao_dr_ = 0.01 |
|
private |
◆ psb_
The documentation for this class was generated from the following files:
- /home/runner/work/abacus-develop/abacus-develop/source/source_lcao/module_ri/Matrix_Orbs22.h
- /home/runner/work/abacus-develop/abacus-develop/source/source_lcao/module_ri/Matrix_Orbs22.cpp
- /home/runner/work/abacus-develop/abacus-develop/source/source_lcao/module_ri/Matrix_Orbs22.hpp