QMCPACK
VMCFactory.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 //
10 // File created by: Jeongnim Kim, jeongnim.kim@gmail.com, University of Illinois at Urbana-Champaign
11 //////////////////////////////////////////////////////////////////////////////////////
12 
13 
14 #ifndef QMCPLUSPLUS_VMC_FACTORY_H
15 #define QMCPLUSPLUS_VMC_FACTORY_H
16 #include "QMCDrivers/QMCDriver.h"
17 
18 namespace qmcplusplus
19 {
20 class ParticleSetPool;
21 class HamiltonianPool;
22 
24 {
25 private:
26  unsigned long VMCMode;
27  xmlNodePtr myNode;
28 
29 public:
30  VMCFactory(unsigned long vmode, xmlNodePtr cur) : VMCMode(vmode), myNode(cur) {}
31 
32  std::unique_ptr<QMCDriverInterface> create(const ProjectData& project_data,
34  TrialWaveFunction& psi,
35  QMCHamiltonian& h,
37  bool enable_profiling);
38 };
39 } // namespace qmcplusplus
40 
41 #endif
A set of walkers that are to be advanced by Metropolis Monte Carlo.
helper functions for EinsplineSetBuilder
Definition: Configuration.h:43
unsigned long VMCMode
Definition: VMCFactory.h:26
class ProjectData
Definition: ProjectData.h:36
Collection of Local Energy Operators.
Wrapping information on parallelism.
Definition: Communicate.h:68
VMCFactory(unsigned long vmode, xmlNodePtr cur)
Definition: VMCFactory.h:30
Declaration of QMCDriver.
std::unique_ptr< QMCDriverInterface > create(const ProjectData &project_data, MCWalkerConfiguration &w, TrialWaveFunction &psi, QMCHamiltonian &h, Communicate *comm, bool enable_profiling)
Definition: VMCFactory.cpp:33
Class to represent a many-body trial wave function.