MARQOVConfig¶
-
class
MARQOV
::
Config
¶ We have a global marqov object that collects runtime parameters that are special for MARQOV.
Hamiltonian and lattice parameters are elsewhere.
Public Functions
-
Config
(std::string op, int i = 0, int ri = 0, int s = 0, int nst = 250, int ws = 100, int gls = 200, int nc = 20, int nm = 10)¶ Constructs a MARQOV::Config object.
The standard constructor. It requires an outpath, the rest of the positional parameters are optional. logpath is by default set to outpath
- Parameters
op
: the output path.i
: id.ri
: replica id.s
: random number seed. Will be ignored if restartednst
: number of stepsws
: warmup stepsgls
: gameloop stepsnc
: number of cluster updatesnm
: number of metropolis updates
-
Config
(const Config &rhs) = default¶ Default Copy Constructor of Config.
- Parameters
rhs
: the other Config object.
-
Config &
operator=
(const Config &rhs) = delete¶ The deleted assignment operator of Config.
The Configuration cannot be copied.
-
Config &
setnmetro
(int nm) noexcept¶ Set the number of Metropolis sweeps.
-
Config &
setloglevel
(int ll) noexcept¶ Set the loglevel.
Should be one of the predefined integers. The higher the integer, the higher the verbosity.
- Parameters
ll
: the loglevel for the next creation of a MARQOV object.
-
void
dumpparamstoH5
(H5::Group &mcg) const¶ Dump parameters to HDF5 Group.
- Parameters
mcg
: the HDF5 group where to store the parameters.
Public Members
-
std::string
outname
¶ the output filename; is empty but will be specified by a filter!
-
std::string
outpath
¶ the outpath; full filename will be “outpath/outfile.h5”
-
std::string
logpath
¶ the logpath. For lack of a better place it is currently stored here. Logfilename = logath/outname.mlog
-
int
logverbosity
= {DEBUG}¶ An integer to have runtime configurable verbostiy levels.
-
int
id
= {0}¶ id
-
int
repid
= {0}¶ replica id
-
int
seed
= {0}¶ Doing this correctly opens a whole can of worms… We now dump the RNG state.
-
int
nsteps
= {250}¶ The number of elementary Monte Carlo steps.
-
int
warmupsteps
= {100}¶ The number of steps to do for warmups.
-
int
gameloopsteps
= {200}¶ gameloop steps.
-
int
ncluster
= {20}¶ number of cluster updates.
-
int
nmetro
= {10}¶ number of Metropolis updates.
-