Gromacs  2024.1
 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::ExpandedEnsembleElement Class Referencefinal

#include <gromacs/modularsimulator/expandedensembleelement.h>

+ Inheritance diagram for gmx::ExpandedEnsembleElement:
+ Collaboration diagram for gmx::ExpandedEnsembleElement:

Description

The expanded ensemble element.

This element periodically attempts Monte Carlo moves in lambda space and sets the new lambda state in FreeEnergyPerturbationData::Element.

Public Member Functions

 ExpandedEnsembleElement (bool isMainRank, Step initialStep, int frequency, const EnergyData *energyData, const FreeEnergyPerturbationData *freeEnergyPerturbationData, FILE *fplog, const t_inputrec *inputrec)
 Constructor.
 
void scheduleTask (Step step, Time time, const RegisterRunFunction &registerRunFunction) override
 Attempt lambda MC step and write log.
 
void elementSetup () override
 Set up FEP history 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.
 
- Public Member Functions inherited from gmx::ILoggingSignallerClient
virtual ~ILoggingSignallerClient ()=default
 Standard virtual destructor.
 

Static Public Member Functions

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

Additional Inherited Members

Member Function Documentation

ISimulatorElement * gmx::ExpandedEnsembleElement::getElementPointerImpl ( LegacySimulatorData legacySimulatorData,
ModularSimulatorAlgorithmBuilderHelper builderHelper,
StatePropagatorData statePropagatorData,
EnergyData energyData,
FreeEnergyPerturbationData freeEnergyPerturbationData,
GlobalCommunicationHelper globalCommunicationHelper,
ObservablesReducer observablesReducer 
)
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
observablesReducerPointer to the ObservablesReducer 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: