Gromacs  2021.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions
gmx::ITemperatureCouplingImpl Class Referenceabstract
+ Inheritance diagram for gmx::ITemperatureCouplingImpl:

Description

Interface for temperature coupling implementations.

Public Member Functions

virtual void connectWithPropagator (const PropagatorThermostatConnection &connectionData, int numTemperatureGroups)=0
 Allow access to the scaling vectors.
 
virtual real apply (Step step, int temperatureGroup, real currentKineticEnergy, real currentTemperature, const TemperatureCouplingData &temperatureCouplingData)=0
 Make a temperature control step. More...
 
virtual void writeCheckpoint (std::optional< WriteCheckpointData > checkpointData, const t_commrec *cr)=0
 Write private data to checkpoint.
 
virtual void readCheckpoint (std::optional< ReadCheckpointData > checkpointData, const t_commrec *cr)=0
 Read private data from checkpoint.
 
virtual ~ITemperatureCouplingImpl ()=default
 Standard virtual destructor.
 

Member Function Documentation

virtual real gmx::ITemperatureCouplingImpl::apply ( Step  step,
int  temperatureGroup,
real  currentKineticEnergy,
real  currentTemperature,
const TemperatureCouplingData temperatureCouplingData 
)
pure virtual

Make a temperature control step.

Parameters
stepThe current step
temperatureGroupThe current temperature group
currentKineticEnergyThe kinetic energy of the temperature group
currentTemperatureThe temperature of the temperature group
temperatureCouplingDataAccess to general temperature coupling data
Returns
The temperature coupling integral for the current temperature group

Implemented in gmx::BerendsenTemperatureCoupling, and gmx::VRescaleTemperatureCoupling.


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