class Log : public feasst::AnalyzeWriteOnly

Periodically print the status of the Syste, Criteria and Trials in a one-line comma separated value format with headers.

This log file is designed more for checking status than computing ensemble averages. To compute ensemble averages, consider using a custom Analyze or accumulating the averages every trial step inside your script.

The ordering of the columns may change at any time. Thus, do not assume a particular order when analyzing the log file. Instead, use the headers to specify columns. For example, the pandas module in python is ideal for this task.

By default, the first number printed for a Trial is its Trial::acceptance.

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.

std::string write(const Criteria &criteria, const System &system, const TrialFactory &trial_factory)

Perform write action.


  • max_precision: use maximum precision if true (default: false).

  • include_bonds: if true, print bond energies (default:false).

  • Stepper arguments.