QMCPACK
WalkerReconfiguration.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 #ifndef QMCPLUSPLUS_RECONFIGURATION_WALKER_CONTROL_H
16 #define QMCPLUSPLUS_RECONFIGURATION_WALKER_CONTROL_H
17 
19 
20 namespace qmcplusplus
21 {
22 /** Class to handle walker controls with simple global sum
23  *
24  * Base class to handle serial mode with branching only
25  */
27 {
28  //random number [0,1)
30 
31  std::vector<int> IndexCopy;
32  //weight per walker
33  std::vector<FullPrecRealType> wConf;
34  //comb
35  std::vector<FullPrecRealType> Zeta;
36  /** default constructor
37  *
38  * Set the SwapMode to zero so that instantiation can be done
39  */
41 
42  /** perform branch and swap walkers as required */
43  int branch(int iter, MCWalkerConfiguration& W, FullPrecRealType trigger) override;
44 
45  /** return the surviving Walkers
46  */
48  int shuffleIndex(int nw);
49 };
50 } // namespace qmcplusplus
51 #endif
HamiltonianRef::FullPrecRealType FullPrecRealType
A set of walkers that are to be advanced by Metropolis Monte Carlo.
helper functions for EinsplineSetBuilder
Definition: Configuration.h:43
std::vector< FullPrecRealType > Zeta
int branch(int iter, MCWalkerConfiguration &W, FullPrecRealType trigger) override
perform branch and swap walkers as required
Wrapping information on parallelism.
Definition: Communicate.h:68
Class to handle walker controls with simple global sum.
WalkerReconfiguration(Communicate *c)
default constructor
std::vector< FullPrecRealType > wConf
int getIndexPermutation(MCWalkerConfiguration &W)
return the surviving Walkers
Base class to control the walkers for DMC simulations.