ExtensiveMoments
-
class ExtensiveMoments : public feasst::Analyze
Accumulate extensive moments for derivatives from fluctuations. This is currently implemented for a grand canonical ensemble:
\(N_i^j N_k^m U^p\)
where \(i,k\) are particle types, and the powers \(j,m,p\) are collected from 0 to a maximum order cutoff.
Public Functions
-
ExtensiveMoments(argtype args = argtype())
args:
max_order: maximum order cutoff for the powers (default: 3).
-
std::string header(const Criteria &criteria, const System &system, const TrialFactory &trials) const
Return the header for writing.
-
void initialize(Criteria *criteria, System *system, TrialFactory *trial_factory)
Initialize and precompute before trials.
-
void update(const Criteria &criteria, const System &system, const TrialFactory &trial_factory)
Perform update action.
-
std::string write(const Criteria &criteria, const System &system, const TrialFactory &trial_factory)
Write the moments by serialization of a 5d accumulator. If checkpoints do not work, this file can be read using feasst_deserialize
-
const Accumulator &moments(const int p, const int m, const int k, const int j, const int i) const
Return the extensive moments.
-
ExtensiveMoments(argtype args = argtype())