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

#include <NPTi.hpp>

Inheritance diagram for OpenMD::NPTi:
OpenMD::NPT OpenMD::VelocityVerletIntegrator OpenMD::Integrator

Public Member Functions

 NPTi (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)
 

Private Member Functions

virtual void evolveEtaA ()
 
virtual void evolveEtaB ()
 
virtual bool etaConverged ()
 
virtual void scaleSimBox ()
 
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 RealType calcConservedQuantity ()
 
virtual void loadEta ()
 
virtual void saveEta ()
 

Private Attributes

RealType eta
 
RealType oldEta
 
RealType prevEta
 
RealType 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 ()
 
- 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
 

Detailed Description

Definition at line 56 of file NPTi.hpp.

Constructor & Destructor Documentation

◆ NPTi()

OpenMD::NPTi::NPTi ( SimInfo info)

Definition at line 63 of file NPTi.cpp.

Member Function Documentation

◆ calcConservedQuantity()

◆ calcVelScale()

void OpenMD::NPTi::calcVelScale ( )
privatevirtual

Implements OpenMD::NPT.

Definition at line 80 of file NPTi.cpp.

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

◆ etaConverged()

bool OpenMD::NPTi::etaConverged ( )
privatevirtual

Implements OpenMD::NPT.

Definition at line 122 of file NPTi.cpp.

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

◆ evolveEtaA()

◆ evolveEtaB()

◆ getPosScale()

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

Implements OpenMD::NPT.

Definition at line 93 of file NPTi.cpp.

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

◆ getVelScaleA()

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

Implements OpenMD::NPT.

Definition at line 84 of file NPTi.cpp.

References vScale.

◆ getVelScaleB()

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

Implements OpenMD::NPT.

Definition at line 88 of file NPTi.cpp.

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

◆ loadEta()

void OpenMD::NPTi::loadEta ( )
privatevirtual

Implements OpenMD::NPT.

Definition at line 167 of file NPTi.cpp.

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

Referenced by calcConservedQuantity().

◆ saveEta()

void OpenMD::NPTi::saveEta ( )
privatevirtual

Implements OpenMD::NPT.

Definition at line 178 of file NPTi.cpp.

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

◆ scaleSimBox()

void OpenMD::NPTi::scaleSimBox ( )
privatevirtual

Member Data Documentation

◆ eta

RealType OpenMD::NPTi::eta
private

◆ oldEta

RealType OpenMD::NPTi::oldEta
private

Definition at line 81 of file NPTi.hpp.

Referenced by evolveEtaA(), and evolveEtaB().

◆ prevEta

RealType OpenMD::NPTi::prevEta
private

Definition at line 82 of file NPTi.hpp.

Referenced by etaConverged(), and evolveEtaB().

◆ vScale

RealType OpenMD::NPTi::vScale
private

Definition at line 83 of file NPTi.hpp.

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


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