OpenMD 3.2
Molecular Dynamics in the Open
Loading...
Searching...
No Matches
OpenMD::LangevinPiston Class Reference

Constant pressure and temperature integrator. More...

#include <LangevinPiston.hpp>

Inheritance diagram for OpenMD::LangevinPiston:

Public Member Functions

 LangevinPiston (SimInfo *info)
Public Member Functions inherited from OpenMD::NPT
 NPT (SimInfo *info)
int getMaxIterationNumber ()
void setMaxIterationNumber (int maxIter)
RealType getTauThermostat ()
void setTauThermostat (RealType tt)
RealType getTauBarostat ()
void setTauBarostat (RealType tb)
RealType getTargetTemp ()
void setTargetTemp (RealType tt)
RealType getTargetPressure ()
void setTargetPressure (RealType tp)
RealType getChiTolerance ()
void setChiTolerance (RealType tol)
RealType getEtaTolerance ()
void setEtaTolerance (RealType tol)
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::NPT
virtual void step ()
 Computes an integration step from t to t+dt.
virtual void doUpdateSizes ()
virtual void resetIntegrator ()
virtual void resetEta ()
Protected Member Functions inherited from OpenMD::VelocityVerletIntegrator
 VelocityVerletIntegrator (SimInfo *info)
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 ()
void saveConservedQuantity ()
Protected Attributes inherited from OpenMD::NPT
RealType NkBT
RealType fkBT
RealType tt2
RealType tb2
RealType instaTemp
RealType instaPress
RealType instaVol
RealType targetTemp
RealType targetPressure
RealType tauThermostat
RealType tauBarostat
std::vector< Vector3d > oldPos
std::vector< Vector3d > oldVel
std::vector< Vector3d > oldJi
RealType etaTolerance
pair< RealType, RealType > thermostat
Mat3x3d press
int maxIterNum_
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}
const RealType dtEps = 1.0e-4

Detailed Description

Constant pressure and temperature integrator.

The Langevin Piston Nosé-Hoover method in OpenMD combines the Nosé-Hoover constant pressure method as described in G.J. Martyna, D.J. Tobias and M.L. Klein, "Constant pressure molecular dynamics algorithms", J. Chem. Phys. 101, 4177 (1994); https://doi.org/10.1063/1.467468 , with piston fluctuation control implemented using Langevin dynamics as in S.E. Feller, Y. Zhang, R.W. Pastor and B.R. Brooks, "Constant pressure molecular dynamics simulation: The Langevin piston method", J. Chem. Phys. 103, 4613 (1995); https://doi.org/10.1063/1.470648

Definition at line 73 of file LangevinPiston.hpp.

Constructor & Destructor Documentation

◆ LangevinPiston()

OpenMD::LangevinPiston::LangevinPiston ( SimInfo * info)

Definition at line 66 of file LangevinPiston.cpp.


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