Gromacs  2021.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions
gmx::FreeEnergyPerturbationData::Element Class Referencefinal

#include <gromacs/modularsimulator/freeenergyperturbationdata.h>

+ Inheritance diagram for gmx::FreeEnergyPerturbationData::Element:
+ Collaboration diagram for gmx::FreeEnergyPerturbationData::Element:

Description

The free energy perturbation data element.

The FreeEnergyPerturbationData::Element does update the lambda values during the simulation run if lambda is non-static. It does implement the checkpointing client interface to save its current state for restart.

Public Member Functions

 Element (FreeEnergyPerturbationData *freeEnergyPerturbationElement, double deltaLambda)
 Constructor.
 
void scheduleTask (Step step, Time time, const RegisterRunFunction &registerRunFunction) override
 Update lambda and mdatoms.
 
void elementSetup () override
 Update the MdAtoms object.
 
void elementTeardown () override
 No teardown needed.
 
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.
 
- Public Member Functions inherited from gmx::ISimulatorElement
virtual ~ISimulatorElement ()=default
 Standard virtual destructor.
 
- Public Member Functions inherited from gmx::ICheckpointHelperClient
virtual ~ICheckpointHelperClient ()=default
 Standard virtual destructor.
 

Static Public Member Functions

static ISimulatorElementgetElementPointerImpl (LegacySimulatorData *legacySimulatorData, ModularSimulatorAlgorithmBuilderHelper *builderHelper, StatePropagatorData *statePropagatorData, EnergyData *energyData, FreeEnergyPerturbationData *freeEnergyPerturbationData, GlobalCommunicationHelper *globalCommunicationHelper)
 Factory method implementation. More...
 

Member Function Documentation

ISimulatorElement * gmx::FreeEnergyPerturbationData::Element::getElementPointerImpl ( LegacySimulatorData legacySimulatorData,
ModularSimulatorAlgorithmBuilderHelper builderHelper,
StatePropagatorData statePropagatorData,
EnergyData energyData,
FreeEnergyPerturbationData freeEnergyPerturbationData,
GlobalCommunicationHelper globalCommunicationHelper 
)
static

Factory method implementation.

Parameters
legacySimulatorDataPointer allowing access to simulator level data
builderHelperModularSimulatorAlgorithmBuilder helper object
statePropagatorDataPointer to the StatePropagatorData object
energyDataPointer to the EnergyData object
freeEnergyPerturbationDataPointer to the FreeEnergyPerturbationData object
globalCommunicationHelperPointer to the GlobalCommunicationHelper object
Returns
Pointer to the element to be added. Element needs to have been stored using storeElement

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