18 #ifndef QMCPLUSPLUS_LATTICE_GAUSSIAN_PRODUCT 19 #define QMCPLUSPLUS_LATTICE_GAUSSIAN_PRODUCT 49 std::string
getClassName()
const override {
return "LatticeGaussianProduct"; }
ParticleSet & CenterRef
orbital centers
void evaluateLogAndStore(const ParticleSet &P, ParticleSet::ParticleGradient &dG, ParticleSet::ParticleLaplacian &dL)
std::unique_ptr< WaveFunctionComponent > makeClone(ParticleSet &tqp) const override
make clone
WaveFunctionComponent::PsiValue PsiValue
helper functions for EinsplineSetBuilder
void registerData(ParticleSet &P, WFBufferType &buf) override
equivalent to evalaute with additional data management
LatticeGaussianProduct(ParticleSet ¢ers, ParticleSet &ptcls)
void restore(int iat) override
If a move for iat-th particle is rejected, restore to the content.
PsiValue ratioGrad(ParticleSet &P, int iat, GradType &grad_iat) override
evaluate the ratio of the new to old WaveFunctionComponent value and the new gradient ...
ParticleAttrib< RealType > U
Walker_t::WFBuffer_t WFBufferType
void evaluateDerivatives(ParticleSet &P, const opt_variables_type &optvars, Vector< ValueType > &dlogpsi, Vector< ValueType > &dhpsioverpsi) override
LatticeGaussianProduct::GradType GradType
std::string getClassName() const override
return class name
An abstract class for a component of a many-body trial wave function.
Specialized paritlce class for atomistic simulations.
PsiValue ratio(ParticleSet &P, int iat) override
evaluate the ratio
ParticleAttrib< PosType > dU
void copyFromBuffer(ParticleSet &P, WFBufferType &buf) override
copy the current data from a buffer
RealType * LastAddressOfdU
class to handle a set of variables that can be modified during optimizations
LogValue updateBuffer(ParticleSet &P, WFBufferType &buf, bool fromscratch) override
For particle-by-particle move.
LogValue evaluateLog(const ParticleSet &P, ParticleSet::ParticleGradient &G, ParticleSet::ParticleLaplacian &L) override
RealType * FirstAddressOfdU
std::vector< int > ParticleCenter
std::vector< RealType > ParticleAlpha
GradType evalGrad(ParticleSet &P, int iat) override
return the current gradient for the iat-th particle
Declaration of WaveFunctionComponent.
std::complex< double > LogValue
ParticleAttrib< RealType > d2U
void acceptMove(ParticleSet &P, int iat, bool safe_to_delay=false) override
a move for iat-th particle is accepted.
~LatticeGaussianProduct() override