36 EtrialUpdateToDoSteps(0),
38 ref_energy_collector(refenergy_update_scheme,
std::max(1, static_cast<int>(1.0 / (feedback * tau))))
100 app_log() <<
" START ALL OVER " << std::endl;
222 app_log() <<
"Switching to DMC with fluctuating populations" << std::endl;
233 std::ostringstream o;
237 o <<
"====================================================";
238 o <<
"\n End of a RMC section";
245 o <<
"\n QMC Status (BranchMode) = " <<
BranchMode;
246 o <<
"\n====================================================";
250 o <<
"====================================================";
251 o <<
"\n End of a DMC section";
261 o <<
"\n QMC Status (BranchMode) = " <<
BranchMode;
262 o <<
"\n====================================================";
264 app_log() << o.str() << std::endl;
324 for (
auto value : rhs)
325 os << std::setw(18) << std::setprecision(10) << value;
int initParam(const MCPopulation &population, FullPrecRealType ene, FullPrecRealType var, bool fixW, bool killwalker)
initialize branching parameters
const ParticleSet & get_golden_electrons() const
helper functions for EinsplineSetBuilder
size_t getTotalNum() const
std::tuple< FullPrecReal, FullPrecReal > getEnergyVariance() const
return energy and variance
void printStatus() const
finalize the simulation
void updateParamAfterPopControl(const MCDataType< FullPrecRealType > &wc_ensemble_prop, int Nelec)
perform branching
bool put(std::istream &is) override
read from std::istream
int WarmUpToDoSteps
number of remaning steps in warmup, [0, iParam[B_WARMUPSTEPS]]
BranchModeType BranchMode
DMCRefEnergy ref_energy_collector
collect energy and variance history
WalkerProperties::Indexes WP
bool put(xmlNodePtr cur)
Parse the xml file for parameters.
This a subclass for runtime errors that will occur on all ranks.
std::ostream & operator<<(std::ostream &out, const AntiSymTensor< T, D > &rhs)
controlling parameters of full precision real type
xmlNodePtr myNode
save xml element
#define APP_ABORT(msg)
Widely used but deprecated fatal error macros from legacy code.
accumulator_set< RealType > R2Accepted
a simple accumulator for energy
SFNBranch(RealType tau, RealType feedback, DMCRefEnergyScheme)
Constructor.
void setBranchCutoff(FullPrecRealType variance, FullPrecRealType targetSigma, FullPrecRealType maxSigma, int Nelec=0)
set branch cutoff, max, filter
1 for dmc, 0 for anything else
ParameterSet m_param
set of parameters
interval between branch, see population control
MakeReturn< UnaryNode< FnLog, typename CreateLeaf< Vector< T1, C1 > >::Leaf_t > >::Expression_t log(const Vector< T1, C1 > &l)
void add(PDT &aparam, const std::string &aname_in, std::vector< PDT > candidate_values={}, TagStatus status=TagStatus::OPTIONAL)
add a new parameter corresponding to an xmlNode <parameter>
MakeReturn< UnaryNode< FnSqrt, typename CreateLeaf< Vector< T1, C1 > >::Leaf_t > >::Expression_t sqrt(const Vector< T1, C1 > &l)
return_type result() const
return the sum
IndexType get_num_global_walkers() const
DMCRefEnergyScheme
DMCRefEnergy schemes.
int EtrialUpdateToDoSteps
number of remaning steps in before adjusting ETRIAL, [0, iParam[B_ENERGYUPDATEINTERVAL]] ...
Indexes
an enum denoting index of physical properties
1 for rmc, 0 for anything else
counter for tracking object state
QTFull::RealType FullPrecRealType
1 to use taueff accordning to JCP 93, 0 to use tau
warmup steps, valid when BranchMode[D_DMCSTAGE] == 0
target total number of walkers per mpi group
Declare a global Random Number Generator.
std::string branching_cutoff_scheme
scheme of branching cutoff
void registerParameters()
create map between the parameter name and variables
frequency of the trial energy updates, default 1
accumulator_set< RealType > R2Proposed
a simple accumulator for energy
1 to kill walkers when a node crossing is detected
void pushWeightEnergyVariance(FullPrecReal weight, FullPrecReal ene, FullPrecReal var)
record weight, energy and variance.
size_t count() const
return record count.
1 for the standard dmc, 0 for the comb method
std::vector< std::string > sParam
string parameters