QMCPACK
LatticeGaussianProductBuilder.h
Go to the documentation of this file.
1 //////////////////////////////////////////////////////////////////////////////////////
2 // This file is distributed under the University of Illinois/NCSA Open Source License.
3 // See LICENSE file in top directory for details.
4 //
5 // Copyright (c) 2016 Jeongnim Kim and QMCPACK developers.
6 //
7 // File developed by: Ken Esler, kpesler@gmail.com, University of Illinois at Urbana-Champaign
8 // Jeremy McMinnis, jmcminis@gmail.com, University of Illinois at Urbana-Champaign
9 // Mark A. Berrill, berrillma@ornl.gov, Oak Ridge National Laboratory
10 //
11 // File created by: Ken Esler, kpesler@gmail.com, University of Illinois at Urbana-Champaign
12 //////////////////////////////////////////////////////////////////////////////////////
13 
14 
15 #ifndef QMCPLUSPLUS_LATTICE_GAUSSIAN_BUILDER_H
16 #define QMCPLUSPLUS_LATTICE_GAUSSIAN_BUILDER_H
18 
19 namespace qmcplusplus
20 {
21 /** LatticeGaussianProduct LatticeGaussianProduct Builder with constraints
22  */
24 {
25 public:
27 
28  std::unique_ptr<WaveFunctionComponent> buildComponent(xmlNodePtr cur) override;
29 
30 private:
31  ///particleset pool to get ParticleSet other than the target
32  const PSetMap& ptclPool;
33  ///index for the jastrow type: 1, 2, 3
35  ///name
36  std::string nameOpt;
37  ///type
38  std::string typeOpt;
39  ///function
41  ///spin
42  std::string spinOpt;
43  ///transform
44  std::string transformOpt;
45  ///source
46  std::string sourceOpt;
47  ///reset the options
48  void resetOptions();
49 };
50 
51 } // namespace qmcplusplus
52 #endif
LatticeGaussianProduct LatticeGaussianProduct Builder with constraints.
std::unique_ptr< WaveFunctionComponent > buildComponent(xmlNodePtr cur) override
process a xml node at cur
helper functions for EinsplineSetBuilder
Definition: Configuration.h:43
An abstract class for wave function builders.
int LatticeGaussianProductType
index for the jastrow type: 1, 2, 3
std::map< std::string, const std::unique_ptr< ParticleSet > > PSetMap
Wrapping information on parallelism.
Definition: Communicate.h:68
Specialized paritlce class for atomistic simulations.
Definition: ParticleSet.h:55
const PSetMap & ptclPool
particleset pool to get ParticleSet other than the target
LatticeGaussianProductBuilder(Communicate *comm, ParticleSet &p, const PSetMap &psets)
declaration of the base class for many-body wavefunction.