PressureFromTestVolume
-
class PressureFromTestVolume : public feasst::Modify
Compute pressure using test volume changes. See https://doi.org/10.1063/1.472721
Hard systems must consider only volume reductions (i.e., negative delta_volume).
\(p = \frac{1}{\beta \Delta V}\ln \left\langle \left(\frac{V'}{V}\right)^N e^{-\beta\Delta U}\right\rangle \)
The output block standard deviation used the error propagation formula:
\( f = \ln(g) \)
\( \sigma_f = \sigma_g/|g| \)
where \(\sigma_g\) is a block average from the term above in the ensemble average.
Public Functions
-
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(Criteria *criteria, System *system, Random *random, TrialFactory *trial_factory)
Perform update.
-
std::string write(Criteria *criteria, System *system, TrialFactory *trial_factory)
Perform write.
Arguments
delta_volume: test volume change (default: 1e-4).
-
std::string header(const Criteria &criteria, const System &system, const TrialFactory &trials) const