2 #include "../../misc/universal_error.hpp" 3 #include "../../misc/simple_io.hpp" 4 #include "../../newtonian/two_dimensional/diagnostics.hpp" 5 #include "../two_dimensional/hdf5_diagnostics.hpp" 7 DiagnosticFunction::~DiagnosticFunction(
void) {}
20 (
double termination_time,
22 termination_time_(termination_time),
23 max_cycles_(max_cycles) {}
28 throw UniversalError(
"Error in SafeTimeTermination: too many iterations");
30 return sim.
getTime()<termination_time_;
34 max_cycles_(max_cycles) {}
41 Manipulate::~Manipulate(
void) {}
45 void (
hdsim::*time_advance_method)(
void),
53 (sim.*time_advance_method)();
WriteData(const string &fname)
Class constructor.
WriteTime(const string &fname)
Class constructor.
Container for error reports.
Newtonian hydrodynamic simulation.
void DisplayError(UniversalError const &eo)
Displays the UniversalError information.
double getTime(void) const
Returns the time.
void operator()(const hdsim &sim)
Perform diagnostics.
void main_loop(hdsim &sim, TerminationCondition &term_cond, void(hdsim::*time_advance_method)(void), DiagnosticFunction *diagfunc=0, Manipulate *manipulate=0)
Simulation time advance loop.
int getCycle(void) const
Returns the number cycles.
SafeTimeTermination(double termination_time, int max_cycles)
Class constructor.
CycleTermination(int max_cycles)
Class constructor.
void write_snapshot_to_hdf5(hdsim const &sim, string const &fname, const vector< DiagnosticAppendix *> &appendices=vector< DiagnosticAppendix *>())
Writes the simulation data into an HDF5 file.
Standard simulation time advance loop.
Abstract class for a diagnostic function.
Class for manual tweaking with the simulation data.
bool operator()(const hdsim &sim)
Returns true if the simulation should continue, false otherwise.
bool operator()(const hdsim &sim)
Returns true if the simulation should continue, false otherwise.
Abstract class for a termination condition for the main loop.
void operator()(const hdsim &sim)
Perform diagnostics.
void write_number(double num, string const &fname, int prec=6)
Writes a single number to a file.
virtual ~TerminationCondition(void)
Virtual destructor.