Element implementing the a velocity-scaling thermostat.
This element takes a callback to the propagator and updates the velocity scaling factor according to the internal temperature coupling implementation.
Note that the concrete implementation is handled by the concrete implementations of the ITemperatureCouplingImpl interface, while the element handles the scheduling and interfacing with other elements.
|
| VelocityScalingTemperatureCoupling (int nstcouple, int offset, UseFullStepKE useFullStepKE, ReportPreviousStepConservedEnergy reportPreviousConservedEnergy, int64_t seed, int numTemperatureGroups, double couplingTimeStep, const real *referenceTemperature, const real *couplingTime, const real *numDegreesOfFreedom, EnergyData *energyData, TemperatureCoupling couplingType) |
| Constructor.
|
|
void | scheduleTask (Step step, Time time, const RegisterRunFunction ®isterRunFunction) override |
| Register run function for step / time. More...
|
|
void | elementSetup () override |
| Sanity check at setup time.
|
|
void | elementTeardown () override |
| No element teardown needed.
|
|
void | connectWithMatchingPropagator (const PropagatorConnection &connectionData, const PropagatorTag &propagatorTag) |
| Connect this to propagator.
|
|
void | saveCheckpointState (std::optional< WriteCheckpointData > checkpointData, const t_commrec *cr) override |
| ICheckpointHelperClient write checkpoint implementation.
|
|
void | restoreCheckpointState (std::optional< ReadCheckpointData > checkpointData, const t_commrec *cr) override |
| ICheckpointHelperClient read checkpoint implementation.
|
|
const std::string & | clientID () override |
| ICheckpointHelperClient key implementation.
|
|
virtual | ~ISimulatorElement ()=default |
| Standard virtual destructor.
|
|
virtual | ~ICheckpointHelperClient ()=default |
| Standard virtual destructor.
|
|
virtual | ~IEnergySignallerClient ()=default |
| Standard virtual destructor.
|
|