Gromacs
2025-dev-20240906-b7d3419
|
#include <gromacs/modularsimulator/constraintelement.h>
Constraints element.
The ConstraintsElement is implemented for the position-and-velocity and the velocity-only case. It does not change the constraint implementation itself, but uses the current constraints implementation and the data management introduced with the modular simulator.
variable | The constraining variable |
Public Member Functions | |
ConstraintsElement (Constraints *constr, StatePropagatorData *statePropagatorData, EnergyData *energyData, FreeEnergyPerturbationData *freeEnergyPerturbationData, bool isMain, FILE *fplog, const t_inputrec *inputrec, const t_mdatoms *mdAtoms) | |
Constructor. | |
void | scheduleTask (Step step, Time time, const RegisterRunFunction ®isterRunFunction) override |
Register constraining function for step / time. More... | |
void | elementSetup () override |
Performs inital constraining. More... | |
void | elementTeardown () override |
No element teardown needed. | |
Public Member Functions inherited from gmx::ISimulatorElement | |
virtual | ~ISimulatorElement ()=default |
Standard virtual destructor. | |
Public Member Functions inherited from gmx::IEnergySignallerClient | |
virtual | ~IEnergySignallerClient ()=default |
Standard virtual destructor. | |
Public Member Functions inherited from gmx::ITrajectorySignallerClient | |
virtual | ~ITrajectorySignallerClient ()=default |
Standard virtual destructor. | |
Public Member Functions inherited from gmx::ILoggingSignallerClient | |
virtual | ~ILoggingSignallerClient ()=default |
Standard virtual destructor. | |
Static Public Member Functions | |
static ISimulatorElement * | getElementPointerImpl (LegacySimulatorData *legacySimulatorData, ModularSimulatorAlgorithmBuilderHelper *builderHelper, StatePropagatorData *statePropagatorData, EnergyData *energyData, FreeEnergyPerturbationData *freeEnergyPerturbationData, GlobalCommunicationHelper *globalCommunicationHelper, ObservablesReducer *observablesReducer) |
Factory method implementation. More... | |
Additional Inherited Members |
|
overridevirtual |
Performs inital constraining.
Implements gmx::ISimulatorElement.
|
static |
Factory method implementation.
legacySimulatorData | Pointer allowing access to simulator level data |
builderHelper | ModularSimulatorAlgorithmBuilder helper object |
statePropagatorData | Pointer to the StatePropagatorData object |
energyData | Pointer to the EnergyData object |
freeEnergyPerturbationData | Pointer to the FreeEnergyPerturbationData object |
globalCommunicationHelper | Pointer to the GlobalCommunicationHelper object |
observablesReducer | Pointer to the ObservablesReducer object |
storeElement
|
overridevirtual |
Register constraining function for step / time.
Under LF, this is expected to be run once, constraining positions and velocities Under VV, this is expected to be run twice, once contraining velocities only, a second time constraining positions and velocities.
step | The step number |
time | The time |
registerRunFunction | Function allowing to register a run function |
Implements gmx::ISimulatorElement.