52 REQUIRE(particleset_ion.size() == 1);
53 parse_ions.
readXML(particleset_ion[0]);
62 REQUIRE(particleset_elec.size() == 1);
63 parse_elec.
readXML(particleset_elec[0]);
76 Force_t el_contribution;
77 Force_t psi_contribution;
83 dE_L[0][0] = -0.0328339806050;
84 dE_L[0][1] = -0.0834441565340;
85 dE_L[0][2] = 0.0997813066140;
86 dE_L[1][0] = -0.0140597469190;
87 dE_L[1][1] = 0.0591827022730;
88 dE_L[1][2] = -0.0622852142310;
90 elec.
G[0][0] = 0.4167938814700;
91 elec.
G[0][1] = 0.2878426639600;
92 elec.
G[0][2] = -0.3470187402100;
93 elec.
G[1][0] = -0.2946265813200;
94 elec.
G[1][1] = -0.3606166249000;
95 elec.
G[1][2] = 0.3751881159300;
100 CHECK(swt.
f(2.0) == Approx(0.125));
101 CHECK(swt.
df(2.0) == Approx(-0.1875));
104 CHECK(swt.
f(2.0) == Approx(0.0625));
105 CHECK(swt.
df(2.0) == Approx(-0.125));
107 swt.
computeSWT(elec, ions, dE_L, elec.
G, el_contribution, psi_contribution);
108 app_log() <<
"EL_Contribution: " << el_contribution << std::endl;
109 app_log() <<
"PSi_Contribution: " << psi_contribution << std::endl;
110 CHECK(el_contribution[0][0] == Approx(-0.0326934696861));
111 CHECK(el_contribution[0][1] == Approx(-0.0826080664130));
112 CHECK(el_contribution[0][2] == Approx(0.0988243408507));
113 CHECK(el_contribution[1][0] == Approx(-0.0142002578379));
114 CHECK(el_contribution[1][1] == Approx(0.0583466121520));
115 CHECK(el_contribution[1][2] == Approx(-0.0613282484677));
117 CHECK(psi_contribution[0][0] == Approx(0.4051467191368));
118 CHECK(psi_contribution[0][1] == Approx(0.2757724717133));
119 CHECK(psi_contribution[0][2] == Approx(-0.3334287440127));
120 CHECK(psi_contribution[1][0] == Approx(-0.2829794189868));
121 CHECK(psi_contribution[1][1] == Approx(-0.3485464326533));
122 CHECK(psi_contribution[1][2] == Approx(0.3615981197327));
This implements the differential space warp transformation for ZVZB estimators given by Sorella & Cap...
class that handles xmlDoc
helper functions for EinsplineSetBuilder
QTBase::RealType RealType
xmlXPathContextPtr getXPathContext()
size_t getTotalNum() const
RealType df(RealType r)
Derivative of space warp transformation function F(r) w.r.t.
TEST_CASE("complex_helper", "[type_traits]")
void setPow(RealType swpow_in)
Sets the exponent for power law space warp transformation.
void update(bool skipSK=false)
update the internal data
Communicate * Controller
Global Communicator for a process.
class to handle xmlXPathObject
Wrapping information on parallelism.
int groups() const
return the number of groups
int addTable(const ParticleSet &psrc, DTModes modes=DTModes::ALL_OFF)
add a distance table
Specialized paritlce class for atomistic simulations.
RealType f(RealType r)
Space warp transformation function F(r).
void computeSWT(ParticleSet &elec, const ParticleSet &ions, Force_t &dEl, ParticleGradient &dlogpsi, Force_t &el_contribution, Force_t &psi_contribution)
Takes in precomputed grad(E_L) and grad(logPsi) and computes the ZV and ZB space warp contributions t...
size_type size() const
return the current size
REQUIRE(std::filesystem::exists(filename))
ParticleGradient G
gradients of the particles
bool readXML(xmlNodePtr cur)
process xmlnode <particleset/> which contains everything about the particle set to initialize ...
QMCTraits::RealType RealType
CHECK(log_values[0]==ComplexApprox(std::complex< double >{ 5.603777579195571, -6.1586603331188225 }))
ParticleAttrib< SingleParticlePos > ParticlePos
bool parse(const std::string &fname)