OpenMD  2.5
Molecular Dynamics in the Open
OpenMD::NPTf Class Reference

#include <NPTf.hpp>

Inheritance diagram for OpenMD::NPTf:
OpenMD::NPT OpenMD::VelocityVerletIntegrator OpenMD::Integrator OpenMD::NPTsz OpenMD::NPTxyz

Public Member Functions

 NPTf (SimInfo *info)
 
- Public Member Functions inherited from OpenMD::NPT
 NPT (SimInfo *info)
 
virtual ~NPT ()
 
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::VelocityVerletIntegrator
virtual ~VelocityVerletIntegrator ()
 
- Public Member Functions inherited from OpenMD::Integrator
virtual ~Integrator ()
 
void integrate ()
 
void updateSizes ()
 
void setForceManager (ForceManager *forceMan)
 
void setVelocitizer (Velocitizer *velocitizer)
 
void setFluctuatingChargePropagator (FluctuatingChargePropagator *prop)
 
void setRotationAlgorithm (RotationAlgorithm *algo)
 
void setRNEMD (RNEMD *rnemd)
 

Protected Attributes

Mat3x3d eta
 
- 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< Vector3doldPos
 
std::vector< Vector3doldVel
 
std::vector< Vector3doldJi
 
RealType etaTolerance
 
pair< RealType, RealType > thermostat
 
Mat3x3d press
 
int maxIterNum_
 
- Protected Attributes inherited from OpenMD::VelocityVerletIntegrator
RealType dt2
 
RealType currSample
 
RealType currStatus
 
RealType currThermal
 
RealType currReset
 
RealType currRNEMD
 
- Protected Attributes inherited from OpenMD::Integrator
SimInfoinfo_
 
GlobalssimParams
 
ForceManagerforceMan_
 
RotationAlgorithmrotAlgo_
 
FluctuatingChargePropagatorflucQ_
 
Rattlerattle_
 
Velocitizervelocitizer_
 
RNEMDrnemd_
 
bool needPotential
 
bool needStress
 
bool needReset
 
bool needVelocityScaling
 
RealType targetScalingTemp
 
bool useRNEMD
 
Statsstats
 
DumpWriterdumpWriter
 
StatWriterstatWriter
 
Thermo thermo
 
RealType runTime
 
RealType sampleTime
 
RealType statusTime
 
RealType thermalTime
 
RealType resetTime
 
RealType RNEMD_exchangeTime
 
RealType dt
 
Snapshotsnap
 

Private Member Functions

virtual void evolveEtaA ()
 
virtual void evolveEtaB ()
 
virtual bool etaConverged ()
 
virtual void getVelScaleA (Vector3d &sc, const Vector3d &vel)
 
virtual void getVelScaleB (Vector3d &sc, int index)
 
virtual void getPosScale (const Vector3d &pos, const Vector3d &COM, int index, Vector3d &sc)
 
virtual void calcVelScale ()
 
virtual void scaleSimBox ()
 
virtual RealType calcConservedQuantity ()
 
virtual void loadEta ()
 
virtual void saveEta ()
 

Private Attributes

Mat3x3d oldEta
 
Mat3x3d prevEta
 
Mat3x3d vScale
 

Additional Inherited Members

- Protected Member Functions inherited from OpenMD::NPT
virtual void integrateStep ()
 
virtual void doUpdateSizes ()
 
virtual void resetIntegrator ()
 
virtual void resetEta ()
 
- Protected Member Functions inherited from OpenMD::VelocityVerletIntegrator
 VelocityVerletIntegrator (SimInfo *info)
 
virtual void doIntegrate ()
 
virtual void initialize ()
 
virtual void preStep ()
 
virtual void postStep ()
 
virtual void finalize ()
 
- Protected Member Functions inherited from OpenMD::Integrator
 Integrator (SimInfo *info)
 
void saveConservedQuantity ()
 

Detailed Description

Definition at line 56 of file NPTf.hpp.

Constructor & Destructor Documentation

◆ NPTf()

OpenMD::NPTf::NPTf ( SimInfo info)
inline

Definition at line 59 of file NPTf.hpp.

Member Function Documentation

◆ calcConservedQuantity()

◆ calcVelScale()

void OpenMD::NPTf::calcVelScale ( )
privatevirtual

Implements OpenMD::NPT.

Definition at line 110 of file NPTf.cpp.

References eta, OpenMD::NPT::thermostat, and vScale.

◆ etaConverged()

bool OpenMD::NPTf::etaConverged ( )
privatevirtual

Implements OpenMD::NPT.

Definition at line 232 of file NPTf.cpp.

References eta, OpenMD::NPT::etaTolerance, and prevEta.

◆ evolveEtaA()

◆ evolveEtaB()

◆ getPosScale()

void OpenMD::NPTf::getPosScale ( const Vector3d pos,
const Vector3d COM,
int  index,
Vector3d sc 
)
privatevirtual
Todo:

Implements OpenMD::NPT.

Definition at line 131 of file NPTf.cpp.

References eta, and OpenMD::NPT::oldPos.

◆ getVelScaleA()

void OpenMD::NPTf::getVelScaleA ( Vector3d sc,
const Vector3d vel 
)
privatevirtual

Implements OpenMD::NPT.

Definition at line 123 of file NPTf.cpp.

References vScale.

◆ getVelScaleB()

void OpenMD::NPTf::getVelScaleB ( Vector3d sc,
int  index 
)
privatevirtual

Implements OpenMD::NPT.

Definition at line 127 of file NPTf.cpp.

References OpenMD::NPT::oldVel, and vScale.

◆ loadEta()

void OpenMD::NPTf::loadEta ( )
privatevirtual

Implements OpenMD::NPT.

Reimplemented in OpenMD::NPTxyz, and OpenMD::NPTsz.

Definition at line 290 of file NPTf.cpp.

References eta, OpenMD::Snapshot::getBarostat(), and OpenMD::Integrator::snap.

Referenced by calcConservedQuantity().

◆ saveEta()

void OpenMD::NPTf::saveEta ( )
privatevirtual

Implements OpenMD::NPT.

Definition at line 301 of file NPTf.cpp.

References eta, OpenMD::Snapshot::setBarostat(), and OpenMD::Integrator::snap.

◆ scaleSimBox()

void OpenMD::NPTf::scaleSimBox ( )
privatevirtual

Member Data Documentation

◆ eta

◆ oldEta

Mat3x3d OpenMD::NPTf::oldEta
private

Definition at line 84 of file NPTf.hpp.

Referenced by evolveEtaA(), and evolveEtaB().

◆ prevEta

Mat3x3d OpenMD::NPTf::prevEta
private

Definition at line 85 of file NPTf.hpp.

Referenced by etaConverged(), and evolveEtaB().

◆ vScale

Mat3x3d OpenMD::NPTf::vScale
private

Definition at line 86 of file NPTf.hpp.

Referenced by calcVelScale(), getVelScaleA(), and getVelScaleB().


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