48 std::cout <<
"handler.MaxKshell is " << handler.
MaxKshell << std::endl;
49 CHECK( (std::is_same<OHMMS_PRECISION, OHMMS_PRECISION_FULL>::value ?
58 for (
int ir = 1; ir < nr; ir++)
66 CHECK(vsr == Approx(0.0));
68 CHECK(vsr + vlr == Approx(rinv));
97 std::cout <<
"handler.MaxKshell is " << handler.
MaxKshell << std::endl;
98 CHECK( (std::is_same<OHMMS_PRECISION, OHMMS_PRECISION_FULL>::value ?
105 mRealType vsrm, vsrp, dvsr, vlrm, vlrp, dvlr;
107 std::vector<mRealType> rlist = {0.1, 0.5, 1.0, 2.0, 2.5};
108 for (
auto it = rlist.begin(); it != rlist.end(); ++it)
120 dvsr = (vsrp - vsrm) / (2 * dr);
122 CHECK(handler.
srDf(r, rinv) == Approx(dvsr));
124 dvlr = (vlrp - vlrm) / (2 * dr);
a class that defines a supercell in D-dimensional Euclean space.
void reset()
Evaluate the reciprocal vectors, volume and metric tensor.
helper functions for EinsplineSetBuilder
mRealType LR_kc
Maximum k cutoff.
DECLARE_COULOMB_TYPES int MaxKshell
Maxkimum Kshell for the given Kc.
TEST_CASE("complex_helper", "[type_traits]")
EwaldHandler3D::mRealType mRealType
mRealType Sigma
Related to the Gaussian width: .
Declaration of CrystalLattice<T,D>
TinyVector< SingleParticlePos, D > Rv
Real-space unit vectors.
Specialized paritlce class for atomistic simulations.
Scalar_t Volume
Physical properties of a supercell.
TinyVector< int, D > BoxBConds
The boundary condition in each direction.
mRealType LR_rc
Maximum r cutoff.
mRealType srDf(mRealType r, mRealType rinv) const override
evaluate the first derivative of the short range part at r
mRealType evaluate(mRealType r, mRealType rinv) const override
void diagonal(const T &rhs)
mRealType evaluateLR(mRealType r) const override
evaluate the contribution from the long-range part for for spline
MakeReturn< UnaryNode< FnSqrt, typename CreateLeaf< Vector< T1, C1 > >::Leaf_t > >::Expression_t sqrt(const Vector< T1, C1 > &l)
CHECK(log_values[0]==ComplexApprox(std::complex< double >{ 5.603777579195571, -6.1586603331188225 }))
void createSK()
create Structure Factor with PBCs
void initBreakup(ParticleSet &ref) override
Tensor_t R
Real-space unit vectors. R(i,j) i=vector and j=x,y,z.
mRealType lrDf(mRealType r) const override
evaluate the first derivative of the long range part (in real space) at r