QMCPACK
AGPDeterminantBuilder.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: Jeongnim Kim, jeongnim.kim@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: Jeongnim Kim, jeongnim.kim@gmail.com, University of Illinois at Urbana-Champaign
12 //////////////////////////////////////////////////////////////////////////////////////
13 
14 
15 /**@file AGPDeterminantBuilder.h
16  *@brief declaration of a builder class for AGPDeterminant
17  */
18 #ifndef QMCPLUSPLUS_AGPDETERMINANT_GEMINALBUILDER_H
19 #define QMCPLUSPLUS_AGPDETERMINANT_GEMINALBUILDER_H
20 
24 
25 namespace qmcplusplus
26 {
27 
28 /**@ingroup WFSBuilder
29  * @brief An abstract class for wave function builders
30  */
32 {
33 public:
35 
36  /// process a xml node at cur
37  std::unique_ptr<WaveFunctionComponent> buildComponent(xmlNodePtr cur) override;
38 
39 protected:
40  ///reference to a PSetMap
41  const PSetMap& ptclPool;
42  ///basiset Factory
43  std::unique_ptr<SPOSetBuilderFactory> mySPOSetBuilderFactory;
44  ///AGPDeterminant
45  std::unique_ptr<AGPDeterminant> agpDet;
46  std::string funcOpt;
47  std::string transformOpt;
48 
49  template<typename BasisBuilderT>
50  bool createAGP(BasisBuilderT* abuilder, xmlNodePtr cur);
51 };
52 } // namespace qmcplusplus
53 #endif
const PSetMap & ptclPool
reference to a PSetMap
helper functions for EinsplineSetBuilder
Definition: Configuration.h:43
An abstract class for wave function builders.
std::unique_ptr< WaveFunctionComponent > buildComponent(xmlNodePtr cur) override
process a xml node at cur
bool createAGP(BasisBuilderT *abuilder, xmlNodePtr cur)
std::map< std::string, const std::unique_ptr< ParticleSet > > PSetMap
AGPDeterminantBuilder(Communicate *comm, ParticleSet &els, const PSetMap &pset)
Wrapping information on parallelism.
Definition: Communicate.h:68
Declaration of AGPDeterminant for pairing orbitals.
Specialized paritlce class for atomistic simulations.
Definition: ParticleSet.h:55
std::unique_ptr< AGPDeterminant > agpDet
AGPDeterminant.
An abstract class for wave function builders.
std::unique_ptr< SPOSetBuilderFactory > mySPOSetBuilderFactory
basiset Factory
declaration of the base class for many-body wavefunction.