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, TemperatureCouplingType 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.
|
|
real | conservedEnergyContribution () const |
| Contribution to the conserved energy (called by energy data)
|
|
void | connectWithPropagator (const PropagatorThermostatConnection &connectionData) |
| 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.
|
|