17 #ifndef QMCPLUSPLUS_LOCALECPPOTENTIAL_H 18 #define QMCPLUSPLUS_LOCALECPPOTENTIAL_H 47 std::vector<std::unique_ptr<RadialPotentialType>>
PPset;
49 std::vector<RadialPotentialType*>
PP;
51 std::vector<RealType>
Zeff;
56 #if !defined(REMOVE_TRACEMANAGER) 66 std::string
getClassName()
const override {
return "LocalECPotential"; }
69 #if !defined(REMOVE_TRACEMANAGER) 87 bool put(xmlNodePtr cur)
override {
return true; }
89 bool get(std::ostream& os)
const override 102 void add(
int groupID, std::unique_ptr<RadialPotentialType>&& ppot,
RealType z);
Array< TraceReal, 1 > * Vi_sample
void resetTargetParticleSet(ParticleSet &P) override
Reset the data with the target ParticleSet.
const std::string & getName() const
return the name
helper functions for EinsplineSetBuilder
Declaration of OperatorBase.
std::string getClassName() const override
return class name
std::vector< RealType > Zeff
effective charge per ion
const ParticleSet & IonConfig
reference to the ionic configuration
int myTableIndex
distance table index
Attaches a unit to a Vector for IO.
Return_t evaluate(ParticleSet &P) override
Evaluate the local energy contribution of this component.
Return_t evaluate_sp(ParticleSet &P)
An abstract base class to implement a One-Dimensional grid.
Decalaration of One-Dimesional grids.
Array< TraceReal, 1 > * Ve_sample
single particle trace samples
Specialized paritlce class for atomistic simulations.
std::vector< std::unique_ptr< RadialPotentialType > > PPset
unique set of local ECP to cleanup
Evaluate the local potentials (either pseudo or full core) around each ion.
LocalECPotential(const ParticleSet &ions, ParticleSet &els)
std::vector< RadialPotentialType * > PP
PP[iat] is the local potential for the iat-th particle.
Return_t evaluate_orig(ParticleSet &P)
RealType PPtmp
temporary energy per particle for pbyp move
void checkoutParticleQuantities(TraceManager &tm) override
void add(int groupID, std::unique_ptr< RadialPotentialType > &&ppot, RealType z)
Add a RadialPotentialType of a species.
std::vector< RealType > gZeff
effective charge per species
An abstract class for Local Energy operators.
Class to represent a many-body trial wave function.
Vector< RealType > PPart
energy per particle
int NumIons
the number of ioncs
std::unique_ptr< OperatorBase > makeClone(ParticleSet &qp, TrialWaveFunction &psi) override
void contributeParticleQuantities() override
Return_t evaluateWithIonDerivs(ParticleSet &P, ParticleSet &ions, TrialWaveFunction &psi, ParticleSet::ParticlePos &hf_terms, ParticleSet::ParticlePos &pulay_terms) override
Evaluate contribution to local energy and derivatives w.r.t ionic coordinates from OperatorBase...
BareKineticEnergy::Return_t Return_t
void deleteParticleQuantities() override
bool put(xmlNodePtr cur) override
Read the input parameter.