43 const double C6_product
58 for (ilat_loop.
x = -xidx; ilat_loop.
x <= xidx; ++ilat_loop.
x)
60 for (ilat_loop.
y = -yidx; ilat_loop.
y <= yidx; ++ilat_loop.
y)
62 for (ilat_loop.
z = -zidx; ilat_loop.
z <= zidx; ++ilat_loop.
z)
64 if ((!(ilat_loop.
x || ilat_loop.
y || ilat_loop.
z)) && (it1 == it2) && (ia1 == ia2))
68 const double r_sqr = (tau1 - tau2).norm2();
69 const double r = sqrt(r_sqr);
71 f(r, R0_sum, C6_product, r_sqr, it1, ia1, tau1, tau2);
Atom_pseudo ncpp
Definition atom_spec.h:13
int na
Definition atom_spec.h:28
std::vector< ModuleBase::Vector3< double > > tau
Definition atom_spec.h:36
3 elements vector
Definition vector3.h:22
T x
Definition vector3.h:24
T y
Definition vector3.h:25
T z
Definition vector3.h:26
Atom * atoms
Definition unitcell.h:18
double & lat0
Definition unitcell.h:28
ModuleBase::Matrix3 & latvec
Definition unitcell.h:35
int & ntype
Definition unitcell.h:45
std::string psd
Definition pseudo.h:21
const ModuleBase::Vector3< int > & period() const
Definition vdw_parameters.h:18
const UnitCell & ucell_
Definition vdw.h:41
Definition vdwd2_parameters.h:19
const std::map< std::string, double > R0() const
Definition vdwd2_parameters.h:48
const std::map< std::string, double > C6() const
Definition vdwd2_parameters.h:47
const Vdwd2Parameters & parameter() const
Definition vdwd2.h:24
Vdwd2Parameters para_
Definition vdwd2.h:27
Vdwd2(const UnitCell &unit_in)
Definition vdwd2.h:19
void cal_energy() override
Definition vdwd2.cpp:13
void cal_stress() override
Definition vdwd2.cpp:65
void cal_force() override
Definition vdwd2.cpp:36
Vdwd2Parameters & parameter()
Definition vdwd2.h:23
void index_loops(F &&f)
Definition vdwd2.h:33
void WARNING_QUIT(const std::string &, const std::string &)
Combine the functions of WARNING and QUIT.
Definition test_delley.cpp:14