QMCPACK
SpaceGridEnv< VALID > Class Template Reference
+ Collaboration diagram for SpaceGridEnv< VALID >:

Public Types

using Input = ValidSpaceGridInput
 

Public Member Functions

 SpaceGridEnv (Communicate *comm)
 

Public Attributes

UPtr< ReferencePointsInputrpi_
 
UPtr< SpaceGridInputsgi_
 
UPtr< NEReferencePointsref_points_
 
RefVector< ParticleSetref_psets_
 
ParticleSetPool particle_pool_
 
ParticleSet pset_elec_
 
ParticleSet pset_ions_
 

Detailed Description

template<ValidSpaceGridInput::valid VALID>
class qmcplusplus::testing::SpaceGridEnv< VALID >

Definition at line 43 of file test_NESpaceGrid.cpp.

Member Typedef Documentation

◆ Input

Definition at line 46 of file test_NESpaceGrid.cpp.

Constructor & Destructor Documentation

◆ SpaceGridEnv()

SpaceGridEnv ( Communicate comm)
inline

Definition at line 47 of file test_NESpaceGrid.cpp.

References qmcplusplus::doc, Libxml2Document::getRoot(), qmcplusplus::node, qmcplusplus::okay, Libxml2Document::parseFromString(), SpaceGridEnv< VALID >::pset_elec_, SpaceGridEnv< VALID >::pset_ions_, ParticleSet::R, SpaceGridEnv< VALID >::ref_points_, SpaceGridEnv< VALID >::ref_psets_, SpaceGridEnv< VALID >::rpi_, SpaceGridEnv< VALID >::sgi_, and ValidSpaceGridInput::xml.

51  {
52  // Setup particleset
53  // particle positions must be inside the unit cell
54  pset_elec_.R =
55  ParticleSet::ParticlePos{{1.451870349, 1.381521229, 1.165202269}, {1.244515371, 1.382273176, 1.21105285},
56  {0.000459944, 1.329603408, 1.265030556}, {0.748660329, 1.63420622, 1.393637791},
57  {0.033228526, 1.391869137, 0.654413566}, {1.114198787, 1.654334594, 0.231075822},
58  {1.657151589, 0.883870516, 1.201243939}, {0.97317591, 1.245644974, 0.284564732}};
59 
61  bool okay = doc.parseFromString(Input::xml[VALID]);
62  xmlNodePtr node = doc.getRoot();
63  sgi_ = std::make_unique<SpaceGridInput>(node);
64 
65  using RPInput = ValidReferencePointsInputs;
66  Libxml2Document doc2;
67  bool okay2 = doc.parseFromString(RPInput::xml[RPInput::CELL]);
68  xmlNodePtr node2 = doc.getRoot();
69  rpi_ = std::make_unique<ReferencePointsInput>(node2);
70  ref_psets_.push_back(pset_ions_);
71  ref_points_ = std::make_unique<NEReferencePoints>(*rpi_, pset_elec_, ref_psets_);
72  }
class that handles xmlDoc
Definition: Libxml2Doc.h:76
if(!okay) throw std xmlNodePtr node
static ParticleSetPool make_diamondC_1x1x1(Communicate *c)
xmlNodePtr getRoot()
Definition: Libxml2Doc.h:88
ParticleSet * getParticleSet(const std::string &pname)
get a named ParticleSet
ParticlePos R
Position.
Definition: ParticleSet.h:79
static constexpr std::array< std::string_view, NUM_CASES > xml
bool parseFromString(const std::string_view data)
Definition: Libxml2Doc.cpp:204
ParticleAttrib< SingleParticlePos > ParticlePos
Definition: Configuration.h:92
RefVector< ParticleSet > ref_psets_
UPtr< ReferencePointsInput > rpi_
UPtr< NEReferencePoints > ref_points_

Member Data Documentation

◆ particle_pool_

ParticleSetPool particle_pool_

Definition at line 77 of file test_NESpaceGrid.cpp.

◆ pset_elec_

◆ pset_ions_

◆ ref_points_

◆ ref_psets_

◆ rpi_

◆ sgi_


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