Gromacs
2025-dev-20241003-bd59e46
|
Describes how mdrun will (re)start and provides supporting functionality based on that data.
Public Member Functions | |
void | ensureMultiSimBehaviorsMatch (const gmx_multisim_t *ms) |
Throw unless all simulations in a multi-sim restart the same way. More... | |
std::optional< int > | makeIndexOfNextPart (AppendingBehavior appendingBehavior) const |
Return an optional value that describes the index of the next simulation part when not appending. More... | |
Public Attributes | |
StartingBehavior | startingBehavior = StartingBehavior::NewSimulation |
Describes how mdrun will (re)start. | |
std::optional < CheckpointHeaderContents > | headerContents |
When restarting from a checkpoint, contains the contents of its header. | |
std::optional< std::vector < gmx_file_position_t > > | outputFiles |
When restarting from a checkpoint, contains the names of expected output files. | |
void gmx::anonymous_namespace{handlerestart.cpp}::StartingBehaviorHandler::ensureMultiSimBehaviorsMatch | ( | const gmx_multisim_t * | ms | ) |
Throw unless all simulations in a multi-sim restart the same way.
The restart could differ if checkpoint or other output files are not found in a consistent way across the set of multi-simulations, or are from different simulation parts.
[in] | ms | Multi-sim handler. |
May only be called from the main rank of each simulation.
InconsistentInputError | if either simulations restart differently, or from checkpoints from different simulation parts. |
std::optional< int > gmx::anonymous_namespace{handlerestart.cpp}::StartingBehaviorHandler::makeIndexOfNextPart | ( | AppendingBehavior | appendingBehavior | ) | const |
Return an optional value that describes the index of the next simulation part when not appending.
[in] | appendingBehavior | Whether this simulation is appending (relevant only when restarting) |
Does not throw