ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
center2_orb-orb21.h
Go to the documentation of this file.
1//=========================================================
2// AUTHOR : Peize Lin
3// DATE : 2016-01-24
4//=========================================================
5
6#ifndef W_ABACUS_DEVELOP_ABACUS_DEVELOP_SOURCE_MODULE_HAMILT_LCAO_HAMILT_LCAODFT_CENTER2_ORB_ORB21_H
7#define W_ABACUS_DEVELOP_ABACUS_DEVELOP_SOURCE_MODULE_HAMILT_LCAO_HAMILT_LCAODFT_CENTER2_ORB_ORB21_H
8
9#include "center2_orb-orb11.h"
10#include "center2_orb.h"
11#include "source_base/vector3.h"
14
15#include <map>
16#include <set>
17#include <vector>
18
20{
21 public:
22 Orb21(const Numerical_Orbital_Lm& nA1_in,
23 const Numerical_Orbital_Lm& nA2_in,
24 const Numerical_Orbital_Lm& nB_in,
26 const ORB_gaunt_table& MGT_in);
27
28 void init_radial_table();
29 void init_radial_table(const std::set<size_t>& radials); // unit: Bohr/MOT.dr
30
32 const ModuleBase::Vector3<double>& RB, // unit: Bohr
33 const int& mA1,
34 const int& mA2,
35 const int& mB) const;
36
38 const ModuleBase::Vector3<double>& RB, // unit: Bohr
39 const int& mA1,
40 const int& mA2,
41 const int& mB) const;
42
43 private:
47
50
51 std::map<int, Numerical_Orbital_Lm> nA;
52 std::map<int, Center2_Orb::Orb11> orb11s;
53};
54
55// this->orb11s[LA].Table_r[LAB][ir]
56
57#endif // W_ABACUS_DEVELOP_ABACUS_DEVELOP_SOURCE_MODULE_HAMILT_LCAO_HAMILT_LCAODFT_CENTER2_ORB_ORB21_H
Definition center2_orb-orb21.h:20
std::map< int, Center2_Orb::Orb11 > orb11s
Definition center2_orb-orb21.h:52
const ModuleBase::Sph_Bessel_Recursive::D2 * psb_
Definition center2_orb-orb21.h:48
const Numerical_Orbital_Lm & nA2
Definition center2_orb-orb21.h:45
const Numerical_Orbital_Lm & nB
Definition center2_orb-orb21.h:46
const ORB_gaunt_table & MGT
Definition center2_orb-orb21.h:49
double cal_overlap(const ModuleBase::Vector3< double > &RA, const ModuleBase::Vector3< double > &RB, const int &mA1, const int &mA2, const int &mB) const
Definition center2_orb-orb21.cpp:101
const Numerical_Orbital_Lm & nA1
Definition center2_orb-orb21.h:44
ModuleBase::Vector3< double > cal_grad_overlap(const ModuleBase::Vector3< double > &RA, const ModuleBase::Vector3< double > &RB, const int &mA1, const int &mA2, const int &mB) const
Definition center2_orb-orb21.cpp:132
void init_radial_table()
Definition center2_orb-orb21.cpp:23
std::map< int, Numerical_Orbital_Lm > nA
Definition center2_orb-orb21.h:51
Definition sph_bessel_recursive.h:49
3 elements vector
Definition vector3.h:22
Definition ORB_atomic_lm.h:22
Definition ORB_gaunt_table.h:9