QMCPACK
MinimalWaveFunctionPool Class Reference
+ Collaboration diagram for MinimalWaveFunctionPool:

Static Public Member Functions

static WaveFunctionPool make_diamondC_1x1x1 (const RuntimeOptions &runtime_options, Communicate *comm, ParticleSetPool &particle_pool)
 
static WaveFunctionPool make_O2_spinor (const RuntimeOptions &runtime_options, Communicate *comm, ParticleSetPool &particle_pool)
 
static WaveFunctionPool make_O2_spinor_J12 (const RuntimeOptions &runtime_options, Communicate *comm, ParticleSetPool &particle_pool)
 

Static Private Attributes

static constexpr const char *const wf_input
 
static constexpr const char *const wf_input_spinor
 
static constexpr const char *const wf_input_spinor_J12
 

Detailed Description

Definition at line 22 of file MinimalWaveFunctionPool.h.

Member Function Documentation

◆ make_diamondC_1x1x1()

static WaveFunctionPool make_diamondC_1x1x1 ( const RuntimeOptions runtime_options,
Communicate comm,
ParticleSetPool particle_pool 
)
inlinestatic

Definition at line 87 of file MinimalWaveFunctionPool.h.

References qmcplusplus::comm, qmcplusplus::doc, Libxml2Document::getRoot(), qmcplusplus::okay, Libxml2Document::parseFromString(), qmcplusplus::particle_pool, WaveFunctionPool::put(), qmcplusplus::REQUIRE(), and MinimalWaveFunctionPool::wf_input.

Referenced by SetupPools::SetupPools(), qmcplusplus::TEST_CASE(), and VMCBatchedTest::testCalcDefaultLocalWalkers().

90  {
91  WaveFunctionPool wp(runtime_options, particle_pool, comm);
92 
95  REQUIRE(okay);
96 
97  xmlNodePtr root = doc.getRoot();
98 
99  wp.put(root);
100 
101  return wp;
102  }
class that handles xmlDoc
Definition: Libxml2Doc.h:76
xmlNodePtr getRoot()
Definition: Libxml2Doc.h:88
static constexpr const char *const wf_input
REQUIRE(std::filesystem::exists(filename))
bool parseFromString(const std::string_view data)
Definition: Libxml2Doc.cpp:204

◆ make_O2_spinor()

static WaveFunctionPool make_O2_spinor ( const RuntimeOptions runtime_options,
Communicate comm,
ParticleSetPool particle_pool 
)
inlinestatic

Definition at line 104 of file MinimalWaveFunctionPool.h.

References qmcplusplus::comm, qmcplusplus::doc, Libxml2Document::getRoot(), qmcplusplus::okay, Libxml2Document::parseFromString(), qmcplusplus::particle_pool, WaveFunctionPool::put(), qmcplusplus::REQUIRE(), and MinimalWaveFunctionPool::wf_input_spinor.

107  {
108  WaveFunctionPool wp(runtime_options, particle_pool, comm);
109 
112  REQUIRE(okay);
113 
114  xmlNodePtr root = doc.getRoot();
115 
116  wp.put(root);
117 
118  return wp;
119  }
class that handles xmlDoc
Definition: Libxml2Doc.h:76
xmlNodePtr getRoot()
Definition: Libxml2Doc.h:88
REQUIRE(std::filesystem::exists(filename))
bool parseFromString(const std::string_view data)
Definition: Libxml2Doc.cpp:204
static constexpr const char *const wf_input_spinor

◆ make_O2_spinor_J12()

static WaveFunctionPool make_O2_spinor_J12 ( const RuntimeOptions runtime_options,
Communicate comm,
ParticleSetPool particle_pool 
)
inlinestatic

Definition at line 121 of file MinimalWaveFunctionPool.h.

References qmcplusplus::comm, qmcplusplus::doc, Libxml2Document::getRoot(), qmcplusplus::okay, Libxml2Document::parseFromString(), qmcplusplus::particle_pool, WaveFunctionPool::put(), qmcplusplus::REQUIRE(), and MinimalWaveFunctionPool::wf_input_spinor_J12.

124  {
125  WaveFunctionPool wp(runtime_options, particle_pool, comm);
126 
129  REQUIRE(okay);
130 
131  xmlNodePtr root = doc.getRoot();
132 
133  wp.put(root);
134 
135  return wp;
136  }
class that handles xmlDoc
Definition: Libxml2Doc.h:76
xmlNodePtr getRoot()
Definition: Libxml2Doc.h:88
REQUIRE(std::filesystem::exists(filename))
static constexpr const char *const wf_input_spinor_J12
bool parseFromString(const std::string_view data)
Definition: Libxml2Doc.cpp:204

Member Data Documentation

◆ wf_input

constexpr const char* const wf_input
staticprivate
Initial value:
= R"(
<wavefunction target='e'>
<sposet_collection type="bspline" source="ion" href="diamondC_1x1x1.pwscf.h5" tilematrix="1 0 0 0 1 0 0 0 1" twistnum="0" meshfactor="0.8" twist="0 0 0" precision="double">
<sposet name="spo_for_dets" size="4" spindataset="0"/>
</sposet_collection>
<sposet_collection type="bspline" source="ion" href="diamondC_1x1x1.pwscf.h5" tilematrix="1 0 0 0 1 0 0 0 1" twistnum="0" gpu="no" meshfactor="0.8" twist="0 0 0" precision="double">
<sposet name="spo_ud" size="4" spindataset="0"/>
<sposet name="spo_dm" index_min="4" index_max="8" spindataset="0"/>
</sposet_collection>
<determinantset>
<slaterdeterminant>
<determinant sposet='spo_for_dets'/>
<determinant sposet='spo_for_dets'/>
</slaterdeterminant>
</determinantset>
</wavefunction>
)"

Definition at line 24 of file MinimalWaveFunctionPool.h.

Referenced by MinimalWaveFunctionPool::make_diamondC_1x1x1().

◆ wf_input_spinor

constexpr const char* const wf_input_spinor
staticprivate
Initial value:
= R"(
<wavefunction name="psi0" target="e">
<sposet_collection name="A" type="einspline" href="o2_45deg_spins.pwscf.h5" tilematrix="1 0 0 0 1 0 0 0 1" twistnum="0" source="ion0" size="12">
<sposet name="spo_ud" size="12"/>
<sposet name="spo_dm" size="8" index_min="12" index_max="20"/>
</sposet_collection>
<determinantset>
<slaterdeterminant>
<determinant sposet="spo_ud"/>
</slaterdeterminant>
</determinantset>
</wavefunction>
)"

Definition at line 42 of file MinimalWaveFunctionPool.h.

Referenced by MinimalWaveFunctionPool::make_O2_spinor().

◆ wf_input_spinor_J12

constexpr const char* const wf_input_spinor_J12
staticprivate
Initial value:
= R"(
<wavefunction name="psi0" target="e">
<sposet_collection name="A" type="einspline" href="o2_45deg_spins.pwscf.h5" tilematrix="1 0 0 0 1 0 0 0 1" twistnum="0" source="ion0" size="12">
<sposet name="spo_ud" size="12"/>
<sposet name="spo_dm" size="8" index_min="12" index_max="20"/>
</sposet_collection>
<determinantset>
<slaterdeterminant>
<determinant sposet="spo_ud"/>
</slaterdeterminant>
</determinantset>
<jastrow type="One-Body" name="J1" function="bspline" source="ion0" print="yes">
<correlation elementType="O" size="9" rcut="2.336894584512495" cusp="0.0">
<coefficients id="eO" type="Array">
-0.51632 -0.1591167977 -0.172367432 -0.1238310413 -0.09792672786
-0.91785 -0.05476753103 -0.03482448615 -0.01864350288
</coefficients>
</correlation>
</jastrow>
<jastrow type="Two-Body" name="J2" function="bspline" print="yes">
<correlation speciesA="u" speciesB="u" size="9" rcut="2.336894584512495" cusp="-0.5">
<coefficients id="uu" type="Array">
0.7554 0.5342428628 0.3861610501 0.2724177345 0.186010153 0.1213795099
0.04796 0.04068638111 0.01968948012
</coefficients>
</correlation>
</jastrow>
</wavefunction>
)"

Definition at line 56 of file MinimalWaveFunctionPool.h.

Referenced by MinimalWaveFunctionPool::make_O2_spinor_J12().


The documentation for this class was generated from the following file: