Gromacs  2024.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Static Public Attributes
gmx::test::anonymous_namespace{rerun.cpp}::MdrunRerunTest Class Reference
+ Inheritance diagram for gmx::test::anonymous_namespace{rerun.cpp}::MdrunRerunTest:
+ Collaboration diagram for gmx::test::anonymous_namespace{rerun.cpp}::MdrunRerunTest:

Description

Test fixture base for mdrun -rerun.

This test ensures mdrun can run a simulation, writing a trajectory and matching energies, and reproduce the same energies from a rerun to within a tight tolerance. It says nothing about whether a rerun can reproduce energies from a trajectory generated with older code, since that is not a useful property. Whether mdrun produced correct energies then and now needs different kinds of testing, but if true, this test ensures the rerun has the expected property.

The limitations of mdrun and its output means that reproducing the same energies is currently only meaningful for integration without thermostats or barostats, however the present form of the test infrastructure has in-principle support for such, if that is ever needed/useful.

We should also not compare pressure, because with constraints the non-search steps need a much larger tolerance, and per Issue #1868 we should stop computing pressure in reruns anyway.

Similarly, per 1868, in the present implementation the kinetic energy quantities are not generally reproducible, either.

The choices for tolerance are arbitrary but sufficient. Rerun does pair search every frame, so it cannot in general exactly reproduce quantities from a normal run, because the accumulation order differs. (Nor does it reproduce pair-search frames exactly, either).

Static Public Attributes

static const
TrajectoryFrameMatchSettings 
trajectoryMatchSettings
 Trajectory components to compare. More...
 
- Static Public Attributes inherited from gmx::test::MdrunTestFixtureBase
static MPI_Comm s_communicator = MPI_COMM_NULL
 Communicator over which the test fixture works.
 
static std::unique_ptr
< gmx_hw_info_t > 
s_hwinfo
 Hardware information object. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from gmx::test::MdrunTestFixtureBase
static void SetUpTestSuite ()
 Per-test-case setup for lengthy processes that need run only once.
 
static void TearDownTestSuite ()
 Per-test-case tear down.
 
- Public Attributes inherited from gmx::test::MdrunTestFixture
TestFileManager fileManager_
 Manages temporary files during the test.
 
SimulationRunner runner_
 Helper object to manage the preparation for and call of mdrun.
 

Member Data Documentation

const TrajectoryFrameMatchSettings gmx::test::anonymous_namespace{rerun.cpp}::MdrunRerunTest::trajectoryMatchSettings
static
Initial value:
= {
true,
true,
true,
ComparisonConditions::MustCompare,
ComparisonConditions::NoComparison,
ComparisonConditions::MustCompare,
}

Trajectory components to compare.


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