OpenMD 3.1
Molecular Dynamics in the Open
Loading...
Searching...
No Matches
OpenMD::BAOAB Class Reference

Declaration of the Langevin Dynamics BAOAB Integrator. More...

#include <BAOAB.hpp>

+ Inheritance diagram for OpenMD::BAOAB:

Public Member Functions

 BAOAB (SimInfo *info)
 
virtual void step ()
 Computes an integration step from t to t+dt.
 
- Public Member Functions inherited from OpenMD::Integrator
virtual ~Integrator ()
 Default Destructor.
 
void integrate ()
 
void updateSizes ()
 
void setVelocitizer (std::unique_ptr< Velocitizer > velocitizer)
 
void setFluctuatingChargePropagator (FluctuatingChargePropagator *prop)
 
void setRotationAlgorithm (RotationAlgorithm *algo)
 
void setRNEMD (std::unique_ptr< RNEMD::RNEMD > rnemd)
 

Additional Inherited Members

- Protected Member Functions inherited from OpenMD::Integrator
 Integrator (SimInfo *info)
 
virtual void initialize ()
 
virtual void preStep ()
 
virtual void calcForce ()
 
virtual void postStep ()
 
virtual void finalize ()
 
virtual void resetIntegrator ()
 
virtual void doUpdateSizes ()
 
void saveConservedQuantity ()
 
- Protected Attributes inherited from OpenMD::Integrator
RealType dt
 
RealType dt2
 
RealType runTime
 
RealType sampleTime
 
RealType statusTime
 
RealType thermalTime
 
RealType resetTime
 
RealType RNEMD_exchangeTime
 
RealType currSample
 
RealType currStatus
 
RealType currThermal
 
RealType currReset
 
RealType currRNEMD
 
SimInfoinfo_ {nullptr}
 
GlobalssimParams {nullptr}
 
ForceManagerforceMan_ {nullptr}
 
RotationAlgorithmrotAlgo_ {nullptr}
 
FluctuatingChargePropagatorflucQ_ {nullptr}
 
Rattlerattle_ {nullptr}
 
std::unique_ptr< Velocitizervelocitizer_ {nullptr}
 
std::unique_ptr< RNEMD::RNEMDrnemd_ {nullptr}
 
bool needPotential {false}
 
bool needVirial {false}
 
bool needReset {false}
 
bool needVelocityScaling {false}
 
bool useRNEMD {false}
 
RealType targetScalingTemp
 
Statsstats {nullptr}
 
DumpWriterdumpWriter {nullptr}
 
StatWriterstatWriter {nullptr}
 
Thermo thermo
 
Snapshotsnap {nullptr}
 
ProgressBarPtr progressBar {nullptr}
 

Detailed Description

Declaration of the Langevin Dynamics BAOAB Integrator.

Langevin Dynamics based on the BAOAB splitting of Matthews and Leimkuhler for details see http://dx.doi.org/10.1063/1.4802990 Optionally, one can use the ABOBA splitting. Rigid body hydrodynamics are from Sun, Lin, and Gezelter. For details see https://doi.org/10.1063/1.2936991

Definition at line 79 of file BAOAB.hpp.

Constructor & Destructor Documentation

◆ BAOAB()

OpenMD::BAOAB::BAOAB ( SimInfo * info)

Definition at line 62 of file BAOAB.cpp.

Member Function Documentation

◆ step()

void OpenMD::BAOAB::step ( )
virtual

Computes an integration step from t to t+dt.

This function must be implemented by any subclasses, and computes a single integration step from the current time (t) to (t+dt).

Implements OpenMD::Integrator.

Definition at line 242 of file BAOAB.cpp.


The documentation for this class was generated from the following files: