Gromacs  2025.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Typedefs | Enumerations | Functions | Variables
pmetest.cpp File Reference
#include "gmxpre.h"
#include "config.h"
#include <cstdlib>
#include <algorithm>
#include <filesystem>
#include <functional>
#include <map>
#include <memory>
#include <mutex>
#include <optional>
#include <string>
#include <string_view>
#include <tuple>
#include <unordered_map>
#include <vector>
#include <gtest/gtest-spi.h>
#include <gtest/gtest.h>
#include "gromacs/ewald/pme.h"
#include "gromacs/hardware/device_management.h"
#include "gromacs/hardware/hw_info.h"
#include "gromacs/trajectory/energyframe.h"
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/basenetwork.h"
#include "gromacs/utility/cstringutil.h"
#include "gromacs/utility/enumerationhelpers.h"
#include "gromacs/utility/message_string_collector.h"
#include "gromacs/utility/mpiinfo.h"
#include "gromacs/utility/real.h"
#include "gromacs/utility/stringutil.h"
#include "testutils/cmdlinetest.h"
#include "testutils/mpitest.h"
#include "testutils/naming.h"
#include "testutils/refdata.h"
#include "testutils/testasserts.h"
#include "testutils/testfilemanager.h"
#include "energyreader.h"
#include "moduletest.h"
+ Include dependency graph for pmetest.cpp:

Description

This implements basic PME sanity tests for end-to-end mdrun simulations. It runs the input system with PME for several steps (on CPU and GPU, if available), and checks the reciprocal and conserved energies.

Author
Aleksei Iupinov a.yup.nosp@m.inov.nosp@m.@gmai.nosp@m.l.co.nosp@m.m
Mark Abraham mark..nosp@m.j.ab.nosp@m.raham.nosp@m.@gma.nosp@m.il.co.nosp@m.m

Classes

class  gmx::test::anonymous_namespace{pmetest.cpp}::PmeTest
 Test fixture for end-to-end execution of PME. More...
 

Typedefs

using gmx::test::anonymous_namespace{pmetest.cpp}::PmeTestParameters = std::tuple< PmeTestFlavor, std::string >
 

Enumerations

enum  gmx::test::anonymous_namespace{pmetest.cpp}::PmeTestFlavor : int { Basic, WithWalls, Count }
 Enum describing the flavors of PME tests that are run.
 

Functions

const char * gmx::test::anonymous_namespace{pmetest.cpp}::enumValueToString (const PmeTestFlavor enumValue)
 Helper to print a string to describe the PME test flavor.
 

Variables

const NameOfTestFromTuple
< PmeTestParameters > 
gmx::test::anonymous_namespace{pmetest.cpp}::sc_testNamer { std::make_tuple(enumValueToString, useString) }
 Tuple of formatters to name the parameterized test cases.
 
const RefDataFilenameMaker
< PmeTestParameters > 
gmx::test::anonymous_namespace{pmetest.cpp}::sc_refDataFilenameMaker
 Tuple of formatters to name the test-case reference data uniquely enough. More...
 
const auto gmx::test::anonymous_namespace{pmetest.cpp}::c_reproducesEnergies