10 #ifndef BALL_MOLMEC_MDSIMULATION_MOLECULARDYNAMICS_H 11 #define BALL_MOLMEC_MDSIMULATION_MOLECULARDYNAMICS_H 17 #ifndef BALL_DATATYPE_OPTIONS_H 21 #ifndef BALL_MOLMEC_COMMON_ATOMVECTOR_H 30 class SnapShotManager;
176 bool isValid()
const;
194 virtual bool specificSetup();
203 void setNumberOfIteration(
Size number);
209 void setMaximalNumberOfIterations(
Size number);
215 void setMaximalSimulationTime(
double time);
220 virtual void setTimeStep(
double step);
226 void setReferenceTemperature(
double temperature);
230 void setCurrentTime(
double time);
236 void setEnergyOutputFrequency(
Size number);
240 void setSnapShotFrequency(
Size number);
244 Size getEnergyOutputFrequency()
const;
248 Size getNumberOfIterations()
const;
252 Size getMaximalNumberOfIterations()
const;
256 double getMaximalSimulationTime()
const;
260 double getTimeStep()
const;
264 Size getSnapShotFrequency()
const;
268 double getTemperature()
const;
272 double getTime()
const;
276 double getTotalEnergy()
const;
280 double getPotentialEnergy()
const;
284 double getKineticEnergy()
const;
296 bool simulate(
bool restart =
false);
304 bool simulateTime(
double simulation_time,
bool restart =
false);
313 virtual bool simulateIterations(
Size number,
bool restart =
false);
317 void enableEnergyAbortCondition(
bool state);
320 bool energyAbortConditionEnabled()
const;
325 void setEnergyToAbort(
float value);
330 float getEnergyToAbort()
const;
352 void updateInstantaneousTemperature();
432 #endif // BALL_MOLMEC_MDSIMULATION_MOLECULARDYNAMICS_H static const double MAXIMAL_SIMULATION_TIME
Size number_of_iteration_
ForceField * force_field_ptr_
static const char * BATH_RELAXATION_TIME
static const double TIME_STEP
bool abort_by_energy_enabled_
static const Size MAXIMAL_NUMBER_OF_ITERATIONS
static const char * REFERENCE_TEMPERATURE
Size maximal_number_of_iterations_
static const char * NUMBER_OF_ITERATION
static const char * CURRENT_TIME
static const Size NUMBER_OF_ITERATION
Size energy_output_frequency_
static const char * SNAPSHOT_FREQUENCY
SnapShotManager * snapshot_manager_ptr_
static const char * TIME_STEP
static const char * MAXIMAL_NUMBER_OF_ITERATIONS
static const char * ENERGY_OUTPUT_FREQUENCY
static const double BATH_RELAXATION_TIME
double current_temperature_
static const double REFERENCE_TEMPERATURE
static const Size ENERGY_OUTPUT_FREQUENCY
static const double CURRENT_TIME
static const Size SNAPSHOT_FREQUENCY
static const char * MAXIMAL_SIMULATION_TIME
double reference_temperature_
#define BALL_CREATE(name)