OpenMD 3.1
Molecular Dynamics in the Open
|
Declaration of the Integrator base class, which all other integrators inherit from. More...
#include <Integrator.hpp>
Public Member Functions | |
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) |
Protected Member Functions | |
Integrator (SimInfo *info) | |
virtual void | initialize () |
virtual void | preStep () |
virtual void | step ()=0 |
Computes an integration step from t to t+dt. | |
virtual void | calcForce () |
virtual void | postStep () |
virtual void | finalize () |
virtual void | resetIntegrator () |
virtual void | doUpdateSizes () |
void | saveConservedQuantity () |
Protected Attributes | |
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 |
SimInfo * | info_ {nullptr} |
Globals * | simParams {nullptr} |
ForceManager * | forceMan_ {nullptr} |
RotationAlgorithm * | rotAlgo_ {nullptr} |
FluctuatingChargePropagator * | flucQ_ {nullptr} |
Rattle * | rattle_ {nullptr} |
std::unique_ptr< Velocitizer > | velocitizer_ {nullptr} |
std::unique_ptr< RNEMD::RNEMD > | rnemd_ {nullptr} |
bool | needPotential {false} |
bool | needVirial {false} |
bool | needReset {false} |
bool | needVelocityScaling {false} |
bool | useRNEMD {false} |
RealType | targetScalingTemp |
Stats * | stats {nullptr} |
DumpWriter * | dumpWriter {nullptr} |
StatWriter * | statWriter {nullptr} |
Thermo | thermo |
Snapshot * | snap {nullptr} |
ProgressBarPtr | progressBar {nullptr} |
Declaration of the Integrator base class, which all other integrators inherit from.
It provides an abstract integrate() function which will be called by the host application to integrate the system forward in time.
Several convenience functions are also provided that are commonly needed by subclasses.
Definition at line 73 of file Integrator.hpp.
|
virtual |
Default Destructor.
Definition at line 204 of file Integrator.cpp.
|
protected |
Definition at line 65 of file Integrator.cpp.
|
protectedvirtual |
Definition at line 312 of file Integrator.cpp.
|
inlineprotectedvirtual |
Definition at line 102 of file Integrator.hpp.
|
protectedvirtual |
Definition at line 378 of file Integrator.cpp.
|
protectedvirtual |
Definition at line 256 of file Integrator.cpp.
void OpenMD::Integrator::integrate | ( | ) |
Definition at line 240 of file Integrator.cpp.
|
protectedvirtual |
Definition at line 317 of file Integrator.cpp.
|
protectedvirtual |
Definition at line 303 of file Integrator.cpp.
|
inlineprotectedvirtual |
Definition at line 101 of file Integrator.hpp.
|
protected |
Definition at line 252 of file Integrator.cpp.
void OpenMD::Integrator::setFluctuatingChargePropagator | ( | FluctuatingChargePropagator * | prop | ) |
Definition at line 223 of file Integrator.cpp.
void OpenMD::Integrator::setRNEMD | ( | std::unique_ptr< RNEMD::RNEMD > | rnemd | ) |
Definition at line 236 of file Integrator.cpp.
void OpenMD::Integrator::setRotationAlgorithm | ( | RotationAlgorithm * | algo | ) |
Definition at line 230 of file Integrator.cpp.
void OpenMD::Integrator::setVelocitizer | ( | std::unique_ptr< Velocitizer > | velocitizer | ) |
Definition at line 219 of file Integrator.cpp.
|
protectedpure 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).
Implemented in OpenMD::BAOAB, OpenMD::NPT, and OpenMD::VelocityVerletIntegrator.
void OpenMD::Integrator::updateSizes | ( | ) |
Definition at line 214 of file Integrator.cpp.
|
protected |
Definition at line 115 of file Integrator.hpp.
|
protected |
Definition at line 116 of file Integrator.hpp.
|
protected |
Definition at line 112 of file Integrator.hpp.
|
protected |
Definition at line 113 of file Integrator.hpp.
|
protected |
Definition at line 114 of file Integrator.hpp.
|
protected |
Definition at line 105 of file Integrator.hpp.
|
protected |
Definition at line 105 of file Integrator.hpp.
|
protected |
Definition at line 136 of file Integrator.hpp.
|
protected |
Definition at line 122 of file Integrator.hpp.
|
protected |
Definition at line 120 of file Integrator.hpp.
|
protected |
Definition at line 118 of file Integrator.hpp.
|
protected |
Definition at line 127 of file Integrator.hpp.
|
protected |
Definition at line 129 of file Integrator.hpp.
|
protected |
Definition at line 130 of file Integrator.hpp.
|
protected |
Definition at line 128 of file Integrator.hpp.
|
protected |
Definition at line 141 of file Integrator.hpp.
|
protected |
Definition at line 123 of file Integrator.hpp.
|
protected |
Definition at line 110 of file Integrator.hpp.
|
protected |
Definition at line 125 of file Integrator.hpp.
|
protected |
Definition at line 111 of file Integrator.hpp.
|
protected |
Definition at line 121 of file Integrator.hpp.
|
protected |
Definition at line 106 of file Integrator.hpp.
|
protected |
Definition at line 107 of file Integrator.hpp.
|
protected |
Definition at line 119 of file Integrator.hpp.
|
protected |
Definition at line 140 of file Integrator.hpp.
|
protected |
Definition at line 135 of file Integrator.hpp.
|
protected |
Definition at line 108 of file Integrator.hpp.
|
protected |
Definition at line 137 of file Integrator.hpp.
|
protected |
Definition at line 133 of file Integrator.hpp.
|
protected |
Definition at line 109 of file Integrator.hpp.
|
protected |
Definition at line 138 of file Integrator.hpp.
|
protected |
Definition at line 131 of file Integrator.hpp.
|
protected |
Definition at line 124 of file Integrator.hpp.