Gromacs  2025-dev-20240614-602a366
 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:


Interface for temperature coupling implementations.

Public Member Functions

virtual void connectWithPropagator (const PropagatorConnection &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 real updateReferenceTemperatureAndIntegral (int temperatureGroup, real newTemperature, ReferenceTemperatureChangeAlgorithm algorithm, const TemperatureCouplingData &temperatureCouplingData)=0
 Update the reference temperature and update and return the temperature coupling integral.
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.

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
The temperature coupling integral for the current temperature group

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