29 std::vector<ModuleBase::Vector3<double>>
lat_;
31 std::vector<ModuleBase::Vector3<double>>
xyz_;
45 void get_c6(
int iat,
int jat,
double nci,
double ncj,
double &c6);
52 const std::vector<int> &rep_cn,
53 const std::vector<double> &cc6ab,
58 void get_dc6_dcnij(
int mxci,
int mxcj,
double cni,
double cnj,
int izi,
int izj,
int iat,
int jat,
59 double &c6check,
double &dc6i,
double &dc6j);
61 int lin(
int i1,
int i2)
63 int idum1 = std::max(i1 + 1, i2 + 1);
64 int idum2 = std::min(i1 + 1, i2 + 1);
65 int res = idum2 + idum1 * (idum1 - 1) / 2 - 1;
3 elements vector
Definition vector3.h:22
Definition vdwd3_parameters.h:17
Vdwd3Parameters & parameter()
Definition vdwd3.h:23
std::vector< int > iz_
Definition vdwd3.h:30
void cal_energy() override
Definition vdwd3.cpp:85
void get_dc6_dcnij(int mxci, int mxcj, double cni, double cnj, int izi, int izj, int iat, int jat, double &c6check, double &dc6i, double &dc6j)
Definition vdwd3.cpp:689
const Vdwd3Parameters & parameter() const
Definition vdwd3.h:24
void cal_stress() override
Definition vdwd3.cpp:287
void cal_force() override
Definition vdwd3.cpp:264
std::vector< ModuleBase::Vector3< double > > lat_
Definition vdwd3.h:29
std::vector< int > rep_cn_
Definition vdwd3.h:33
void pbc_three_body(const std::vector< int > &iz, const std::vector< ModuleBase::Vector3< double > > &lat, const std::vector< ModuleBase::Vector3< double > > &xyz, const std::vector< int > &rep_cn, const std::vector< double > &cc6ab, double &eabc)
Definition vdwd3.cpp:365
int lin(int i1, int i2)
Definition vdwd3.h:61
void set_criteria(double rthr, const std::vector< ModuleBase::Vector3< double > > &lat, std::vector< double > &tau_max)
Definition vdwd3.cpp:55
Vdwd3Parameters para_
Definition vdwd3.h:27
std::vector< ModuleBase::Vector3< double > > xyz_
Definition vdwd3.h:31
void pbc_ncoord(std::vector< double > &cn)
Definition vdwd3.cpp:334
void pbc_gdisp(std::vector< ModuleBase::Vector3< double > > &g, ModuleBase::matrix &smearing_sigma)
Definition vdwd3.cpp:738
std::vector< double > atom_kind()
Definition vdwd3.cpp:70
void init()
Definition vdwd3.cpp:17
std::vector< int > rep_vdw_
Definition vdwd3.h:32
Vdwd3(const UnitCell &unit_in)
Definition vdwd3.h:19
void get_c6(int iat, int jat, double nci, double ncj, double &c6)
Definition vdwd3.cpp:307