BALL 1.5.0
Loading...
Searching...
No Matches
BALL::MicroCanonicalMD Class Reference

#include <BALL/MOLMEC/MDSIMULATION/microCanonicalMD.h>

Inheritance diagram for BALL::MicroCanonicalMD:
BALL::MolecularDynamics

Classes

struct  AuxFactors

Public Member Functions

Constructors and Destructors.
 MicroCanonicalMD ()
 MicroCanonicalMD (ForceField &myforcefield)
 MicroCanonicalMD (ForceField &myforcefield, SnapShotManager *ssm)
 MicroCanonicalMD (ForceField &myforcefield, SnapShotManager *ssm, const Options &myoptions)
 MicroCanonicalMD (const MicroCanonicalMD &rhs)
 Copy constructor.
virtual ~MicroCanonicalMD ()
 The destructor.
Assignment
MicroCanonicalMDoperator= (const MicroCanonicalMD &rhs)
 Assignment operator.
Setup methods.
virtual bool setup (ForceField &myforcefield, SnapShotManager *ssm)
virtual bool setup (ForceField &myforcefield, SnapShotManager *ssm, const Options &myoptions)
virtual bool specificSetup ()
Public Member Functions inherited from BALL::MolecularDynamics
 MolecularDynamics ()
 MolecularDynamics (ForceField &force_field)
 MolecularDynamics (const MolecularDynamics &rhs)
virtual ~MolecularDynamics ()
const MolecularDynamicsoperator= (const MolecularDynamics &rhs)
void set (const MolecularDynamics &rhs)
bool isValid () const
void setNumberOfIteration (Size number)
void setMaximalNumberOfIterations (Size number)
void setMaximalSimulationTime (double time)
void setReferenceTemperature (double temperature)
void setCurrentTime (double time)
void setEnergyOutputFrequency (Size number)
void setSnapShotFrequency (Size number)
Size getEnergyOutputFrequency () const
Size getNumberOfIterations () const
Size getMaximalNumberOfIterations () const
double getMaximalSimulationTime () const
double getTimeStep () const
Size getSnapShotFrequency () const
double getTemperature () const
double getTime () const
double getTotalEnergy () const
double getPotentialEnergy () const
double getKineticEnergy () const
ForceFieldgetForceField () const
bool simulate (bool restart=false)
bool simulateTime (double simulation_time, bool restart=false)
void enableEnergyAbortCondition (bool state)
bool energyAbortConditionEnabled () const
 Query if the MDSimulation aborts if the Energy is greater than abort_energy_.
void setEnergyToAbort (float value)
float getEnergyToAbort () const

Accessors

vector< AuxFactorsmass_factor_
virtual void setTimeStep (double step)
virtual bool simulateIterations (Size number, bool restart=false)
void calculateFactors ()

Additional Inherited Members

Options options
void updateInstantaneousTemperature ()
bool valid_
ForceFieldforce_field_ptr_
Systemsystem_ptr_
AtomVector atom_vector_
Size number_of_iteration_
Size maximal_number_of_iterations_
double time_step_
double reference_temperature_
double current_temperature_
double kinetic_energy_
double total_energy_
double current_time_
Size energy_output_frequency_
Size snapshot_frequency_
SnapShotManagersnapshot_manager_ptr_
bool abort_by_energy_enabled_
float abort_energy_

Detailed Description

Microcanonical MD: A class for doing molecular dynamics simulations
according to the principle of a microcanonical ensemble (NVE), i.e., the total energy of the system is kept constant. Numerical integration for new atom positions is done via the Velocity Verlet method.

Definition at line 24 of file microCanonicalMD.h.

Constructor & Destructor Documentation

◆ MicroCanonicalMD() [1/5]

BALL::MicroCanonicalMD::MicroCanonicalMD ( )

The default constructor with no arguments.

◆ MicroCanonicalMD() [2/5]

BALL::MicroCanonicalMD::MicroCanonicalMD ( ForceField & myforcefield)

This constructor expects a force field. The force field's options are used and no snapshots are taken.

◆ MicroCanonicalMD() [3/5]

BALL::MicroCanonicalMD::MicroCanonicalMD ( ForceField & myforcefield,
SnapShotManager * ssm )

This constructor expects a force field and a snapshot-manager. The force field's options are used.

◆ MicroCanonicalMD() [4/5]

BALL::MicroCanonicalMD::MicroCanonicalMD ( ForceField & myforcefield,
SnapShotManager * ssm,
const Options & myoptions )

This constructor wants a force field, a snapshot manager and new options.

◆ MicroCanonicalMD() [5/5]

BALL::MicroCanonicalMD::MicroCanonicalMD ( const MicroCanonicalMD & rhs)

Copy constructor.

◆ ~MicroCanonicalMD()

virtual BALL::MicroCanonicalMD::~MicroCanonicalMD ( )
virtual

The destructor.

Member Function Documentation

◆ calculateFactors()

void BALL::MicroCanonicalMD::calculateFactors ( )
protected

◆ operator=()

MicroCanonicalMD & BALL::MicroCanonicalMD::operator= ( const MicroCanonicalMD & rhs)

Assignment operator.

◆ setTimeStep()

virtual void BALL::MicroCanonicalMD::setTimeStep ( double step)
virtual

Choose a new time step

Reimplemented from BALL::MolecularDynamics.

◆ setup() [1/2]

virtual bool BALL::MicroCanonicalMD::setup ( ForceField & myforcefield,
SnapShotManager * ssm )
virtual

This method does general setup things.

Reimplemented from BALL::MolecularDynamics.

◆ setup() [2/2]

virtual bool BALL::MicroCanonicalMD::setup ( ForceField & myforcefield,
SnapShotManager * ssm,
const Options & myoptions )
virtual

This method does general setup things.

Reimplemented from BALL::MolecularDynamics.

◆ simulateIterations()

virtual bool BALL::MicroCanonicalMD::simulateIterations ( Size number,
bool restart = false )
virtual

This method does the actual simulation stuff. It runs for the indicated number of iterations. restart = true means that the counting of iterations is continued from the previous run.

Reimplemented from BALL::MolecularDynamics.

◆ specificSetup()

virtual bool BALL::MicroCanonicalMD::specificSetup ( )
virtual

This method is meant for additional preparations apart from those done in setup.

Reimplemented from BALL::MolecularDynamics.

Member Data Documentation

◆ mass_factor_

vector<AuxFactors> BALL::MicroCanonicalMD::mass_factor_
protected

Definition at line 131 of file microCanonicalMD.h.