21 throw std::runtime_error(
"2D Ewald requires 2D Lattice");
44 uk = knorm * erfc(kalpha*kmag)/kmag;
void resize(size_type n, Type_t val=Type_t())
Resize the container.
std::vector< PosType > kpts_cart
K-vector in Cartesian coordinates.
EwaldHandler2D(ParticleSet &ref, mRealType kc_in=-1.0)
helper functions for EinsplineSetBuilder
mRealType LR_kc
Maximum k cutoff.
DECLARE_COULOMB_TYPES int MaxKshell
Maxkimum Kshell for the given Kc.
EwaldHandler3D::mRealType mRealType
void fillFk(const KContainer &KList)
const auto & getSimulationCell() const
Specialized paritlce class for atomistic simulations.
size_type size() const
return the current size
mRealType LR_rc
Maximum r cutoff.
std::vector< int > kshell
kpts which belong to the ith-shell [kshell[i], kshell[i+1])
Vector< mRealType > Fk
Fourier component for all the k-point.
MakeReturn< UnaryNode< FnSqrt, typename CreateLeaf< Vector< T1, C1 > >::Leaf_t > >::Expression_t sqrt(const Vector< T1, C1 > &l)
std::vector< RealType > ksq
squre of kpts in Cartesian coordniates
const auto & getLattice() const
base class for LRHandlerTemp<FUNC,BASIS> and DummyLRHanlder<typename Func>
Vector< mRealType > Fk_symm
Fourier component for each k-shell.