Gromacs  2025.0-dev-20241011-013a99c
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Typedefs | Files
Library API
+ Collaboration diagram for Library API:

Description

Classes and other symbols that are publicly accessible within the GROMACS library.

See Also
Public API

Classes

class  gmx::AnalysisDataModuleManager
 Encapsulates handling of data modules attached to AbstractAnalysisData. More...
 
class  gmx::AnalysisDataStorageFrame
 Allows assigning values for a data frame in AnalysisDataStorage. More...
 
class  gmx::AnalysisDataStorage
 Helper class that implements storage of data. More...
 
class  gmx::AnalysisDataParallelOptions
 Parallelization options for analysis data objects. More...
 
class  gmx::test::AnalysisDataTestInputPointSet
 Represents a single set of points in AnalysisDataTestInputFrame structure. More...
 
class  gmx::test::AnalysisDataTestInputFrame
 Represents a single frame in AnalysisDataTestInput structure. More...
 
class  gmx::test::AnalysisDataTestInput
 Represents static input data for AbstractAnalysisData tests. More...
 
class  gmx::test::AnalysisDataTestFixture
 Test fixture for AbstractAnalysisData testing. More...
 
class  gmx::GlobalCommandLineHelpContext
 Helper for passing CommandLineHelpContext into parse_common_args(). More...
 
class  gmx::CommandLineModuleManager
 Implements a wrapper command-line interface for multiple modules. More...
 
class  gmx::CommandLineModuleGroup
 Handle to add content to a group added with CommandLineModuleManager::addModuleGroup(). More...
 
class  gmx::IExecutableEnvironment
 Allows customization of the way various directories are found by CommandLineProgramContext. More...
 
class  gmx::CommandLineProgramContext
 Program context implementation for command line programs. More...
 
class  gmx::ProcessFrameConversion
 ProcessFrameConversion class for handling the running of several analysis steps. More...
 
class  gmx::IFrameConverter
 IFrameConverter interface for manipulating coordinate information. More...
 
class  gmx::IOutputAdapter
 OutputAdapter class for handling trajectory file flag setting and processing. More...
 
class  gmx::LocalAtomSet
 A local atom set collects local, global and collective indices of the home atoms on a rank. The indices of the home atoms are automatically updated during domain decomposition, thus gmx::LocalAtomSet::localIndex enables iteration over local atoms properties like coordinates or forces. TODO: add a LocalAtomSet iterator. More...
 
class  gmx::LocalAtomSetManager
 Hands out handles to local atom set indices and triggers index recalculation for all sets upon domain decomposition if run in parallel. More...
 
class  gmx::ArrayRefWithPadding< typename >
 Interface to a C array of T (or part of a std container of T), that includes padding that is suitable for the kinds of SIMD operations GROMACS uses. More...
 
class  gmx::MDModules
 Manages the collection of all modules used for mdrun. More...
 
class  gmx::SimulationContext
 Simulation environment and configuration. More...
 
class  gmx::IForceProvider
 Interface for a component that provides forces during MD. More...
 
class  gmx::ForceProviders
 Evaluates forces from a collection of gmx::IForceProvider. More...
 
class  gmx::IMDModule
 Extension module for GROMACS simulations. More...
 
class  gmx::IMDOutputProvider
 Interface for handling additional output files during a simulation. More...
 
class  gmx::IMdpOptionProvider
 Interface for handling mdp/tpr input to a mdrun module. More...
 
class  gmx::ObservablesReducer
 Manage reduction of observables for registered subscribers. More...
 
class  gmx::MimicCommunicator
 Class-wrapper around MiMiC communication library It uses GROMACS' unit conversion to switch from GROMACS' units to a.u. More...
 
class  gmx::TextTableFormatter
 Formats rows of a table for text output. More...
 
class  gmx::HelpManager
 Helper for providing interactive online help. More...
 
class  gmx::AbstractSimpleHelpTopic
 Abstract base class for help topics that have simple text and no subtopics. More...
 
class  gmx::AbstractCompositeHelpTopic
 Abstract base class for help topics that have simple text and subtopics. More...
 
class  gmx::SimpleHelpTopic< HelpText >
 Template for simple implementation of AbstractSimpleHelpTopic. More...
 
class  gmx::CompositeHelpTopic< HelpText >
 Template for simple implementation of AbstractCompositeHelpTopic. More...
 
class  gmx::HelpWriterContext
 Context information for writing out help. More...
 
class  gmx::IHelpTopic
 Provides a single online help topic. More...
 
class  gmx::AbstractOptionStorage
 Abstract base class for converting, validating, and storing option values. More...
 
class  gmx::OptionsBehaviorCollection
 Container for IOptionsBehavior objects. More...
 
class  gmx::OptionManagerContainer
 Container to keep managers added with Options::addManager() and pass them to options. More...
 
class  gmx::OptionsAssigner
 Decorator class for assigning values to Options. More...
 
class  gmx::OptionStorageTemplate< T >
 Templated base class for constructing option value storage classes. More...
 
class  gmx::OptionStorageTemplateSimple< T >
 Simplified option storage template for options that have one-to-one value conversion. More...
 
class  gmx::OptionsVisitor
 Pure interface for visiting options in a Options object. More...
 
class  gmx::OptionsTypeVisitor< InfoType >
 Abstract base class for visiting options of a particular type. More...
 
class  gmx::OptionsIterator
 Decorator class for visiting options in a Options object. More...
 
class  gmx::OptionsModifyingVisitor
 Pure interface for visiting options in a Options object, allowing modifications. More...
 
class  gmx::OptionsModifyingTypeVisitor< InfoType >
 Abstract base class for visiting options of a particular type, allowing modifications. More...
 
class  gmx::OptionsModifyingIterator
 Decorator class for visiting options in a Options object, allowing changes. More...
 
class  gmx::OptionValueConverterSimple< OutType >
 Helper for converting from Any to a given type. More...
 
class  gmx::Site
 Abstraction for a restraint interaction site. More...
 
class  gmx::SelectionFileOption
 Specifies a special option that provides selections from a file. More...
 
class  gmx::SelectionFileOptionInfo
 Wrapper class for accessing and modifying selection file option information. More...
 
class  gmx::Allocator< T, AllocationPolicy >
 Policy-based memory allocator. More...
 
class  gmx::BinaryInformationSettings
 Settings for printBinaryInformation(). More...
 
class  gmx::DirectoryEnumerator
 Lists files in a directory. More...
 
class  gmx::IFileInputRedirector
 Allows overriding file existence checks from code that supports it. More...
 
class  gmx::IFileOutputRedirector
 Allows capturing stdout and file output from code that supports it. More...
 
class  gmx::StandardInputStream
 Text input stream implementation for reading from stdin. More...
 
class  gmx::TextInputFile
 Text input stream implementation for reading from a file. More...
 
class  gmx::TextOutputFile
 Text output stream implementation for writing to a file. More...
 
class  gmx::KeyValueTreePath
 Identifies an entry in a key-value tree. More...
 
class  gmx::KeyValueTreeBuilder
 Root builder for creating trees that have an object at the root. More...
 
class  gmx::KeyValueTreeValueBuilder
 Builder for KeyValueTreeValue objects. More...
 
class  gmx::KeyValueTreeUniformArrayBuilder< T >
 Builder for KeyValueTreeArray objects where all elements are of type T. More...
 
class  gmx::KeyValueTreeObjectArrayBuilder
 Builder for KeyValueTreeArray objects where all elements are KeyValueTreeObject objects. More...
 
class  gmx::KeyValueTreeObjectBuilder
 Builder for KeyValueTreeObject objects. More...
 
class  gmx::IKeyValueTreeTransformRules
 Interface to declare rules for transforming key-value trees. More...
 
class  gmx::KeyValueTreeTransformRulesScoped
 Helper object returned from IKeyValueTreeTransformRules::scopedTransform(). More...
 
class  gmx::KeyValueTreeTransformRuleBuilder
 Provides methods to specify one transformation rule. More...
 
class  gmx::MessageStringCollector
 Helper class for collecting message strings, optionally with context. More...
 
class  gmx::MessageStringContext
 Convenience class for creating a message context. More...
 
class  gmx::StringCompare
 Compare object for std::string STL containers and algorithms that supports run-time decision on how to compare. More...
 
class  gmx::StringOutputStream
 Text output stream implementation for writing to an in-memory string. More...
 
class  gmx::TextReader
 Reads text from a TextInputStream. More...
 
class  gmx::TextInputStream
 Interface for reading text. More...
 
class  gmx::TextOutputStream
 Interface for writing text. More...
 
class  gmx::TextWriter
 Writes text into a TextOutputStream. More...
 
struct  gmx::no_delete< T >
 Deleter for std::shared_ptr that does nothing. More...
 
class  gmx::test::CommandLine
 Helper class for tests that need to construct command lines. More...
 
class  gmx::test::CommandLineTestHelper
 Helper class for tests that construct command lines that need to reference existing files. More...
 
class  gmx::test::CommandLineTestBase
 Test fixture for tests that call a single command-line program with input/output files. More...
 
class  gmx::test::ConfMatch
 Match the contents as an gro file. More...
 
class  gmx::test::IFileMatcher
 Represents a file matcher, matching file contents against reference (or other) data. More...
 
class  gmx::test::IFileMatcherSettings
 Represents a factory for creating a file matcher. More...
 
class  gmx::test::TextFileMatch
 Use a ITextBlockMatcher for matching the contents. More...
 
class  gmx::test::NoContentsMatch
 Do not check the contents of the file. More...
 
class  gmx::test::InteractiveTestHelper
 Helper class for testing interactive sessions. More...
 
class  gmx::test::LoggerTestHelper
 Helper class for tests to check output written to a logger. More...
 
class  gmx::test::TestReferenceData
 Handles creation of and comparison to test reference data. More...
 
class  gmx::test::TestReferenceChecker
 Handles comparison to test reference data. More...
 
class  gmx::test::StdioTestHelper
 Helper class for tests where code reads directly from stdin. More...
 
class  gmx::test::StringTestBase
 Test fixture for tests that check string formatting. More...
 
class  gmx::test::TestFileManager
 Helper for tests that need input and output files. More...
 
class  gmx::test::TestFileInputRedirector
 In-memory implementation for IFileInputRedirector for tests. More...
 
class  gmx::test::TestOptionsProvider
 Provides additional options for the test executable. More...
 
class  gmx::test::ITextBlockMatcher
 Represents a text matcher, matching text stream contents against reference data. More...
 
class  gmx::test::ITextBlockMatcherSettings
 Represents a factory for creating a text matcher. More...
 
class  gmx::test::ExactTextMatch
 Use an exact text match (the contents should be exactly equal). More...
 
class  gmx::test::NoTextMatch
 Do not match the text (the contents are ignored). More...
 
class  gmx::test::FilteringExactTextMatch
 Use an exact text match after scrubbing lines of the text that match the supplied regular expressions. More...
 
class  gmx::test::XvgMatch
 Match the contents as an xvg file. More...
 
class  gmx::AbstractAnalysisData
 Abstract base class for all objects that provide data. More...
 
class  gmx::AbstractAnalysisArrayData
 Abstract base class for data objects that present in-memory data. More...
 
class  gmx::IAnalysisDataModule
 Interface for a module that gets notified whenever data is added. More...
 
class  gmx::AnalysisDataModuleSerial
 Convenience base class for serial analysis data modules. More...
 
class  gmx::AnalysisDataModuleParallel
 Convenience base class for parallel analysis data modules. More...
 
class  gmx::OptionTemplate< T, U >
 Templated base class for constructing concrete option settings classes. More...
 
class  gmx::IOptionManager
 Base class for option managers. More...
 
class  gmx::FlagsTemplate< FlagType >
 Template class for typesafe handling of combination of flags. More...
 

Typedefs

typedef std::unique_ptr
< AbstractCompositeHelpTopic > 
gmx::CompositeHelpTopicPointer
 Smart pointer type to manage a AbstractCompositeHelpTopic object.
 

Files

file  datamodulemanager.h
 Declares gmx::AnalysisDataModuleManager.
 
file  datastorage.h
 Declares gmx::AnalysisDataStorage.
 
file  paralleloptions.h
 Declares gmx::AnalysisDataParallelOptions.
 
file  datatest.h
 Helper classes for testing classes that derive from AbstractAnalysisData.
 
file  mock_datamodule.h
 Declares mock implementation of gmx::IAnalysisDataModule.
 
file  awh.h
 Declares the Awh class.
 
file  read_params.h
 Declares functions needed for reading, initializing and setting the AWH parameter data types.
 
file  electricfield.h
 Declares module creation function for applied electric fields.
 
file  cmdlinehelpcontext.h
 Declares gmx::CommandLineHelpContext.
 
file  cmdlinemodulemanager.h
 Declares gmx::CommandLineModuleManager.
 
file  cmdlineprogramcontext.h
 Declares gmx::CommandLineProgramContext.
 
file  mp11.h
 Provides ported functions/classes from boost::mp11.
 
file  pointers.h
 Provides ported functions/classes from gsl/pointers.
 
file  utility.h
 Provides backported functions/classes from utility.
 
file  register.h
 Declares gmx::ProcessFrameConversion.
 
file  iframeconverter.h
 Interface class for frame handling, provides handles for all calls.
 
file  ioutputadapter.h
 Declares gmx::IOutputAdapter interface for modifying coordinate file structures before writing them to disk.
 
file  outputadaptercontainer.h
 Declares gmx::OutputAdapterContainer, a storage object for multiple outputadapters derived from the IOutputadaper interface.
 
file  requirements.h
 Storage object for requirements to build coordinate file writer.
 
file  coordinate_test.h
 Helper classes for coordinatefile and coordinateio tests.
 
file  frameconverter.h
 Helper classes for frameconverter tests.
 
file  outputadapters.h
 Helpers and data for outputadapter module tests.
 
file  requirements.h
 Helpers and data for flag setting method.
 
file  autocorr.h
 Declares routine for computing autocorrelation functions.
 
file  crosscorr.h
 Declares routine for computing a cross correlation between two data sets.
 
file  expfit.h
 Declares routine for fitting a data set to a curve.
 
file  integrate.h
 Declares routines for integrating a data set.
 
file  manyautocorrelation.h
 Declares routine for computing many correlation functions using OpenMP.
 
file  polynomials.h
 Declares routine for computing a Legendre polynomial.
 
file  builder.h
 This file declares a builder class for the manager of domain decomposition.
 
file  collect.h
 Declares functions to collect state data to the main rank.
 
file  computemultibodycutoffs.h
 This file declares the function for computing the required cutoff distance for inter-domain multi-body interactions, when those exist.
 
file  dlb.h
 This file declares functions to interact with the dynamic load balancing machinery.
 
file  dlbtiming.h
 This file declares functions for timing the load imbalance due to domain decomposition.
 
file  domdec.h
 This file declares functions for mdrun to call to manage the details of its domain decomposition.
 
file  domdec_network.h
 This file declares functions for (mostly) the domdec module to use MPI functionality.
 
file  domdec_struct.h
 Declares structures related to domain decomposition.
 
file  domdec_zones.cpp
 Implements the DomdecZones class.
 
file  domdec_zones.h
 Declares the DomdecZones class and helper structs.
 
file  ga2la.h
 Defines structures and functions for mapping from global to local atom indices. The functions are performance critical and should be inlined.
 
file  gpuhaloexchange.h
 Declaration of GPU halo exchange.
 
file  hashedmap.h
 Defines structures and functions for mapping from keys to entries indices using a hash table. The functions are performance critical and should be inlined.
 
file  localatomset.h
 Declares gmx::LocalAtomSet.
 
file  localatomsetmanager.h
 Declares gmx::LocalAtomSetManager.
 
file  localtopology.h
 This file makes declarations used for building the local topology.
 
file  localtopologychecker.h
 This file declares functionality for checking whether local topologies describe all bonded interactions.
 
 
file  mdsetup.h
 Contains functions relevant to simulation setup in MD drivers.
 
file  options.h
 This file declares command-line options for mdrun related to domain decomposition.
 
file  partition.h
 This file declares functions for mdrun to call to make a new domain decomposition, and check it.
 
file  reversetopology.h
 This file makes declarations used for building the reverse topology.
 
file  edsam.h
 Declares functions to calculate both essential dynamics constraints as well as flooding potentials and forces.
 
file  ewald.h
 This file contains function declarations necessary for computing energies and forces for the plain-Ewald long-ranged part, and the correction for overall system charge for all Ewald-family methods.
 
file  ewald_utils.h
 Declares utility functions related to Ewald.
 
file  long_range_correction.h
 This file contains function declarations necessary for computing energies and forces for the PME long-ranged part (Coulomb and LJ).
 
file  pme.h
 This file contains function declarations necessary for computing energies and forces for the PME long-ranged part (Coulomb and LJ).
 
file  pme_coordinate_receiver_gpu.h
 Declaration of class which receives coordinates to GPU memory on PME task.
 
file  pme_force_sender_gpu.h
 Declaration of class which sends PME Force from GPU memory to PP task.
 
file  pme_gpu_program.h
 Declares PmeGpuProgram to store data derived from the GPU context or devices for PME, such as (compiled) kernel handles and the warp sizes they work with.
 
file  pme_load_balancing.h
 This file contains function declarations necessary for managing automatic load balance of PME calculations (Coulomb and LJ).
 
file  pme_only.h
 This file contains function declarations necessary for running on an MPI rank doing only PME long-ranged work.
 
file  pme_pp_comm_gpu.h
 Declaration of GPU PME-PP Communication.
 
file  mrcdensitymap.h
 Declars mrc/ccp4-file format handling.
 
file  mrcdensitymapheader.h
 Implement mrc/ccp4-file metadata.
 
file  gpp_atomtype.h
 Declares PreprocessingAtomType.
 
file  gpp_bond_atomtype.h
 Declares PreprocessingBondAtomType.
 
file  clfftinitializer.h
 Declares ClfftInitializer class, which initializes and tears down the clFFT library resources in OpenCL builds, and does nothing in other builds, and a factory function for it.
 
file  device_context.h
 Declarations for DeviceContext class.
 
file  device_event.h
 Declares DeviceEvent for all build configuraitons.
 
file  device_event_hip.h
 Implements a DeviceEvent class for HIP.
 
file  device_event_ocl.h
 Implements a DeviceEvent class for OpenCL.
 
file  device_event_sycl.h
 Implements a GpuEventSynchronizer class for SYCL.
 
file  device_stream.h
 Declarations for DeviceStream class.
 
file  device_stream_manager.h
 This file declares a manager of GPU context and streams needed for running workloads on GPUs.
 
file  devicebuffer.h
 Implements the logic for handling of DeviceBuffer types in OpenCL, CUDA and SYCL.
 
file  devicebuffer_datatype.h
 Declares the DeviceBuffer data type.
 
file  devicebuffer_hip.h
 Implements the DeviceBuffer type and routines for HIP. Should only be included directly by the main DeviceBuffer file devicebuffer.h. TODO: the intent is for DeviceBuffer to become a class.
 
file  devicebuffer_ocl.h
 Implements the DeviceBuffer type and routines for OpenCL. Should only be included directly by the main DeviceBuffer file devicebuffer.h. TODO: the intent is for DeviceBuffer to become a class.
 
file  devicebuffer_sycl.h
 Implements the DeviceBuffer type and routines for SYCL. Should only be included directly by the main DeviceBuffer file devicebuffer.h. TODO: the intent is for DeviceBuffer to become a class.
 
file  gmxopencl.h
 Wraps the complexity of including OpenCL in Gromacs.
 
file  gmxsycl.h
 Wraps the complexity of including SYCL in GROMACS.
 
file  gpu_utils.h
 Declare functions for detection and initialization for GPU devices.
 
file  gpueventsynchronizer.h
 Implements a GpuEventSynchronizer class.
 
file  gpueventsynchronizer_helpers.cpp
 Helper functions for a GpuEventSynchronizer class.
 
file  gpueventsynchronizer_helpers.h
 Helper functions for a GpuEventSynchronizer class.
 
file  gpuregiontimer_hip.h
 Implements the GPU region timer for HIP.
 
file  gpuregiontimer_ocl.h
 Implements the GPU region timer for OpenCL.
 
file  gpuregiontimer_sycl.h
 Implements the GPU region timer for SYCL.
 
file  gputraits.h
 Declares the GPU type traits for non-GPU builds.
 
file  gputraits_hip.h
 Declares the HIP type traits.
 
file  gputraits_ocl.h
 Declares the OpenCL type traits.
 
file  gputraits_sycl.h
 Declares the SYCL type traits.
 
file  nvshmem_utils.cpp
 Definitions for NVSHMEM initialization/finalize class. gmxNvshmemHandle takes the MPI communicator and initializes the NVSHMEM over all the ranks involved in the given MPI communicator. This is a collective call for all the ranks in the given MPI comm. After NVSHMEM initialization all NVSHMEM APIs can be safely used.
 
file  nvshmem_utils.h
 Declarations for NVSHMEM initialization/finalize class. gmxNvshmemHandle takes the MPI communicator and initializes the NVSHMEM over all the ranks involved in the given MPI communicator. This is a collective call for all the ranks in the given MPI comm. After NVSHMEM initialization all NVSHMEM APIs can be safely used.
 
file  ocl_compiler.h
 Declare infrastructure for OpenCL JIT compilation.
 
file  oclraii.h
 Declare RAII helpers for OpenCL types, along with supporting type traits.
 
file  oclutils.h
 Declare utility routines for OpenCL.
 
file  pmalloc.h
 Declare functions for host-side memory handling.
 
file  syclutils.h
 Declare utility routines for SYCL.
 
file  typecasts_cuda_hip.h
 Declare functions to be used to cast CPU types to compatible GPU types.
 
file  cpuinfo.h
 Declares gmx::CpuInfo.
 
file  device_management.h
 Declares functions to manage GPU resources.
 
file  device_management_shared_amd.h
 Declares shared methods for handling AMD devices.
 
file  hardwaretopology.h
 Declares gmx::HardwareTopology.
 
file  identifyavx512fmaunits.h
 Defines a routine to check the number of AVX512 fma units.
 
file  simd_support.h
 Functions to query compiled and supported SIMD architectures.
 
file  imd.h
 This file declares the class that coordinates with VMD via the Interactive Molecular Dynamics protocol, along with supporting free functions.
 
file  imdsocket.h
 Implements the parts of the vmdsock.h interface needed for IMD communication.
 
file  bonded.h
 This file contains declarations necessary for low-level functions for computing energies and forces for bonded interactions.
 
file  disre.h
 Declares functions for handling distance restraints.
 
file  listed_forces.h
 This file contains declarations of high-level functions used by mdrun to compute energies and forces for listed interactions.
 
file  listed_forces_gpu.h
 This file contains declarations of high-level functions used by mdrun to compute energies and forces for listed interactions.
 
file  orires.h
 Declares functions for handling orientation restraints.
 
file  pairs.h
 This file declares functions for "pair" interactions (i.e. listed non-bonded interactions, e.g. 1-4 interactions)
 
file  position_restraints.h
 This file contains declarations necessary for low-level functions for computing energies and forces for position restraints.
 
file  boxmatrix.h
 Declares routines to operate on 3x3 matrices that are boxes, ie. have zero values in their upper right triangle.
 
file  coordinatetransformation.h
 Declares coordinate transformation routines.
 
file  densityfit.h
 Declares density similarity measures and their derivatives.
 
file  densityfittingforce.h
 Declares classes to calculate density fitting forces.
 
file  exponentialmovingaverage.h
 Declares an exponential moving average class.
 
file  gausstransform.h
 Declares Gaussian function evaluations on lattices and related functionality.
 
file  invertmatrix.h
 Declares routines to invert 3x3 matrices.
 
file  multidimarray.h
 Declares MultiDimArray.
 
file  testarrayrefs.h
 Declares functions for comparing views of vector-like data.
 
file  boxdeformation.h
 Declares interface to box deformation code.
 
file  broadcaststructs.h
 Convenience wrappers for broadcasting structs.
 
file  checkpointhandler.h
 Declares the checkpoint handler class.
 
file  constr.h
 Declares interface to constraint code.
 
file  energyoutput.h
 Header for the code that writes energy-like quantities.
 
file  groupcoord.h
 Assemble atomic positions of a (small) subset of atoms and distribute to all nodes.
 
file  leapfrog_gpu.h
 Declarations for GPU implementation of Leap-Frog.
 
file  leapfrog_gpu_internal.h
 Declarations for backend specific GPU functions for Leap-Frog.
 
file  lincs.h
 Declares interface to LINCS code.
 
file  lincs_gpu.h
 Declares the class for GPU implementation of LINCS.
 
file  makeconstraints.h
 Declares and implements factory function for Constraints.
 
file  resethandler.h
 Declares the reset handler class.
 
file  settle.h
 Declares interface to SETTLE code.
 
file  shake.h
 Declares interface to SHAKE code.
 
file  simulationsignal.h
 This file declares functions for inter-rank signalling by mdrun.
 
file  stophandler.h
 Declares StopHandler, a helper class and two stop conditions.
 
file  update_constrain_gpu.h
 Declaration of high-level functions of GPU implementation of update and constrain class.
 
file  updategroups.h
 Declares the functions for generating update groups.
 
file  updategroupscog.h
 Declares the UpdateGroupsCog class for managing centers of mass of update groups.
 
file  vsite.h
 Declares the VirtualSitesHandler class and vsite standalone functions.
 
file  wholemoleculetransform.h
 Declares the WholeMolecules class for generating whole molecules.
 
file  legacymdrunoptions.h
 This file declares helper functionality for legacy option handling for mdrun.
 
file  mdmodules.h
 Declares gmx::MDModules.
 
file  simulationcontext.h
 Provide ways for client code to own simulation resources.
 
file  simulationinput.h
 Utilities for interacting with SimulationInput.
 
file  freeenergy.cpp
 Defines helper functions for mdrun pertaining to free energy calculations.
 
file  freeenergy.h
 Declares helper functions for mdrun pertaining to free energy calculations.
 
file  handlerestart.h
 This file declares functions for mdrun to call to manage the details of doing a restart (ie. reading checkpoints, appending output files).
 
file  logging.h
 Declares the MD log file handling routines.
 
file  mdmodulesnotifier.h
 Declares gmx::MDModulesNotifier and builder.
 
file  mdmodulesnotifiers.h
 Declares gmx::MDModulesNotifiers.
 
file  multisim.h
 Declares the multi-simulation support routines.
 
file  printtime.h
 Declares functions that write timestamps to e.g. log files.
 
file  threadaffinity.h
 Declares functions for managing mdrun thread affinity.
 
file  extensions.h
 GROMACS extensions to mdspan.
 
file  mdspan.h
 Declares gmx::mdspan.
 
file  atominfo.h
 This file makes declarations used for storing bitfields describing each atom so that other modules can efficiently process them.
 
file  awh_correlation_history.h
 Contains datatypes and function declarations needed by AWH to have its force correlation data checkpointed.
 
file  awh_history.h
 Contains datatypes and function declarations needed by AWH to have its data checkpointed.
 
file  awh_params.h
 Declares AWH parameter data types.
 
file  energyhistory.h
 This file contains datatypes for energy statistics history.
 
file  forcebuffers.h
 This file contains the definition of a container for force buffers.
 
file  forceoutput.h
 This file contains the definition of a container for force and virial output.
 
file  iforceprovider.h
 Declares gmx::IForceProvider and ForceProviders.
 
file  imdmodule.h
 Declares gmx::IMDModule.
 
file  imdoutputprovider.h
 Declares gmx::IMDOutputProvider.
 
file  imdpoptionprovider.h
 Declares gmx::IMdpOptionProvider.
 
file  mdrunoptions.h
 This file declares helper functionality for legacy option handling for mdrun.
 
file  observableshistory.h
 This file contains the definition of a container for history data for simulation observables.
 
file  observablesreducer.cpp
 Defines gmx::ObservablesReducer and its builder.
 
file  observablesreducer.h
 Declares gmx::ObservablesReducer and builder.
 
file  pull_params.h
 This file contains datatypes for the mdp options used by the pull code.
 
file  pullhistory.h
 This file contains datatypes for pull statistics history.
 
file  simulation_workload.h
 Declares step, domain-lifetime, and run workload managers.
 
file  state.h
 This file contains the definition of the microstate of the simulated system.
 
file  state_propagator_data_gpu.h
 Declaration of interfaces for GPU state data propagator object.
 
file  utilities.h
 Provides utility functions for MiMiC QM/MM.
 
file  atomdata.h
 Functionality for per-atom data in the nbnxm module.
 
file  bench_setup.h
 This file declares functions for setting up kernel benchmarks.
 
file  gpu_data_mgmt.h
 Declare interface for GPU data transfer for NBNXN module.
 
file  nbnxm.h
 This file contains the public interface of the nbnxm module that implements the NxM atom cluster non-bonded algorithm to efficiently compute pair forces.
 
file  nbnxm_enums.h
 Nbnxm internal enumerations.
 
file  pairlist_tuning.h
 Declares functions for tuning adjustable parameters for the nbnxn non-bonded search and interaction kernels.
 
file  helpformat.h
 Declares common string formatting routines for online help.
 
file  helpmanager.h
 Declares gmx::HelpManager.
 
file  helptopic.h
 Declares helper classes for implementing gmx::IHelpTopic.
 
file  helpwritercontext.h
 Declares gmx::HelpWriterContext.
 
file  ihelptopic.h
 Declares gmx::IHelpTopic.
 
file  mock_helptopic.h
 Declares mock implementation of gmx::IHelpTopic.
 
file  abstractoptionstorage.h
 Declares gmx::AbstractOptionStorage.
 
file  behaviorcollection.h
 Declares gmx::OptionsBehaviorCollection.
 
file  optionmanagercontainer.h
 Declares gmx::OptionManagerContainer.
 
file  optionsassigner.h
 Declares gmx::OptionsAssigner.
 
file  optionstoragetemplate.h
 Defines gmx::OptionStorageTemplate template.
 
file  optionsvisitor.h
 Declares gmx::OptionsVisitor interface and supporting classes.
 
file  treesupport.h
 Declares functions for using keyvaluetree.h with Options.
 
file  com.h
 Helper methods to place particle COM in boxes.
 
file  pbc_aiuc.h
 Structure and basic routines to handle periodic boundary conditions.
 
file  pbc_aiuc_sycl.h
 Basic routines to handle periodic boundary conditions with SYCL.
 
file  pbc_simd.h
 This file contains a definition, declaration and inline function for SIMD accelerated PBC calculations.
 
file  pull.h
 This file contains datatypes and function declarations necessary for mdrun to interface with the pull code.
 
file  pull_rotation.h
 Declares functions to enforce rotational motion upon a group of particles.
 
file  output.h
 This file declares functions for pull output writing.
 
file  manager.h
 Declare the Manager for restraint potentials.
 
file  restraintmdmodule.h
 Library interface for RestraintMDModule.
 
file  selectionfileoption.h
 Declares gmx::SelectionFileOption and gmx::SelectionFileOptionInfo.
 
file  selhelp.h
 Functions for initializing online help for selections.
 
file  scalar.h
 Scalar float functions corresponding to GROMACS SIMD functions.
 
file  scalar_math.h
 Scalar math functions mimicking GROMACS SIMD math functions.
 
file  scalar_util.h
 Scalar utility functions mimicking GROMACS SIMD utility functions.
 
file  simd.h
 Definitions, capabilities, and wrappers for SIMD module.
 
file  simd_math.h
 Math functions for SIMD datatypes.
 
file  simd_memory.h
 Declares SimdArrayRef.
 
file  vector_operations.h
 SIMD operations corresponding to Gromacs rvec datatypes.
 
file  statistics.h
 Declares simple statistics toolbox.
 
file  swapcoords.h
 The "Computational Electrophysiology" protocol for ion/water position swapping.
 
file  cubicsplinetable.h
 Declares classes for cubic spline table.
 
file  forcetable.h
 Old routines for table generation (will eventually be replaced)
 
file  quadraticsplinetable.h
 Declares classes for quadratic spline table.
 
file  tableinput.h
 Declares structures for analytical or numerical input data to construct tables.
 
file  decidegpuusage.h
 Declares functionality for deciding whether tasks will run on GPUs.
 
file  resourcedivision.h
 Declares utility functionality for dividing resources and checking for consistency and usefulness.
 
file  taskassignment.h
 Declares high-level functionality for managing assigning tasks on ranks of a node to hardware on that node, and the factory function to build the correct flavours of gmx::INodeTaskAssigner required to implement the user's requirements.
 
file  usergpuids.h
 Declares routines for handling user-specified GPU IDs.
 
file  cyclecounter.h
 High-resolution timestamp or CPU clock cycle counters.
 
file  gpu_timing.h
 Declares data types for GPU timing.
 
file  ifunc.cpp
 Defines interaction functions.
 
file  atomsbuilder.h
 Utility classes for manipulating t_atoms structures.
 
file  mtop_atomloops.h
 This file contains functions to loop over topology contents.
 
file  mtop_lookup.h
 This file contains inline functions to look up atom information using the global atom index.
 
file  modules.h
 Generic interface for accessing trajectory analysis modules.
 
file  any.h
 Declares gmx::Any.
 
file  basenetwork.h
 Utility functions for basic MPI and network functionality.
 
file  binaryinformation.h
 Helper functionality for information about the currently running binary.
 
file  bitmask.h
 Declares gmx_bitmask_t and associated functions.
 
file  compare.h
 Utilities for comparing data structures (for gmx check).
 
file  coolstuff.h
 Functionality for printing cool strings.
 
file  defaultinitializationallocator.h
 Declares an allocator that can use default initialization instead of values initialization. This is useful for improving performance of resize() in standard vectors for buffers in performance critical code.
 
file  directoryenumerator.h
 Declares gmx::DirectoryEnumerator.
 
file  fileredirector.h
 Declares gmx::IFileOutputRedirector.
 
file  filestream.h
 Declares implementations for textstream.h interfaces for file input/output.
 
file  gmxmpi.h
 Wraps mpi.h usage in Gromacs.
 
file  gmxomp.h
 Declares OpenMP wrappers to avoid conditional compilation.
 
file  ikeyvaluetreeerror.h
 Declares an error handling interface for key-value tree operations.
 
file  inmemoryserializer.h
 Declares gmx::ISerializer implementation for in-memory serialization.
 
file  int64_to_int.h
 Low-level utility for converting 64 bit int to int (the size of which is hardware dependent), printing a warning if an overflow will occur.
 
file  iserializer.h
 Declares a generic serialization interface that supports both directions.
 
file  keyvaluetree.h
 Declares a data structure for JSON-like structured key-value mapping.
 
file  keyvaluetreebuilder.h
 Declares classes for building the data structures in keyvaluetree.h.
 
file  keyvaluetreemdpwriter.h
 Declares a function to write a flat key-value tree to look like old-style mdp output.
 
file  keyvaluetreeserializer.h
 Declares serialization routines for KeyValueTree objects.
 
file  keyvaluetreetransform.h
 Declares utilities for transforming key-value trees.
 
file  logger.h
 Declares functionality for logging.
 
file  loggerbuilder.h
 Declares functionality for initializing logging.
 
file  message_string_collector.h
 Declares gmx::MessageStringCollector.
 
file  niceheader.h
 Declares function for printing a nice header for text output files.
 
file  path.h
 Declares functions for OS-independent path handling.
 
file  physicalnodecommunicator.h
 Declares functionality for communicators across physical nodes.
 
file  snprintf.h
 Provide snprintf symbol on all OS (for internal Gromacs use)
 
file  strconvert.h
 Declares common utility functions for conversions to and from strings.
 
file  strdb.h
 Declares C functions for reading files with a list of strings.
 
file  stringcompare.h
 Declares utility functionst for string comparison.
 
file  stringstream.h
 Declares implementations for textstream.h interfaces for input/output to in-memory strings.
 
file  stringtoenumvalueconverter.h
 Defines helper function object for class enumerations.
 
file  sysinfo.h
 Declares functions that wrap platform-specific calls for obtaining information about the operating environment and the current process.
 
file  template_mp.h
 Declares utilities for template metaprogramming.
 
file  textreader.h
 Declares gmx::TextReader.
 
file  textstream.h
 Declares interfaces for simple input/output streams.
 
file  textwriter.h
 Declares gmx::TextWriter.
 
file  txtdump.h
 Declares helper functions for dumping basic data structures as text.
 
file  typetraits.h
 Declares type traits.
 
file  nodelete.h
 Declares no_delete deleter for std::shared_ptr.
 
file  alignedallocator_impl.h
 Tests for allocators that offer a minimum alignment.
 
file  gmxpre.h
 Prerequisite header file for GROMACS build.
 
file  cmdlinetest.h
 Declares utilities testing command-line programs.
 
file  conftest.h
 Declares function to add the content of a conf file to a checker.
 
file  filematchers.h
 Declares utility classes for testing file contents.
 
file  interactivetest.h
 Provides helper classes for testing interactive prompts.
 
file  loggertest.h
 Declares gmx::test::LoggerTestHelper.
 
file  mpitest.h
 Helper functions for MPI tests to make thread-MPI look like real MPI.
 
file  naming.h
 Functionality for customizing names of tests and the files containing their reference data in a declarative way.
 
file  refdata.h
 Functionality for writing tests that can produce their own reference data.
 
file  setenv.h
 Helper functions to have identical behavior of setenv and unsetenv on Unix and Windows systems.
 
file  simulationdatabase.h
 Functionality for testing whether calls to mdrun produce the same energy and force quantities when they should do so.
 
file  stdiohelper.h
 Declares gmx::test::StdioTestHelper.
 
file  stringtest.h
 Declares gmx::test::StringTestBase.
 
file  testasserts.h
 Extra assertions for unit tests.
 
file  testexceptions.h
 Exception classes for errors in tests.
 
file  testfilemanager.h
 Declares gmx::test::TestFileManager.
 
file  testfileredirector.h
 Declares generic mock implementations for interfaces in fileredirector.h.
 
file  testmatchers.h
 Extra GoogleMock matchers for unit tests.
 
file  testoptions.h
 Functions for accessing test command-line options.
 
file  textblockmatchers.h
 Declares utility classes for testing multi-line strings against reference data.
 
file  xvgtest.h
 Declares function to add the content of an xvg file to a checker.
 
file  abstractdata.h
 Declares gmx::AbstractAnalysisData.
 
file  datamodule.h
 Declares gmx::IAnalysisDataModule and related convenience classes.
 
file  abstractoption.h
 Defines gmx::AbstractOption, gmx::OptionTemplate and gmx::OptionInfo.
 
file  indexutil.h
 API for handling index files and index groups.
 
file  idef.h
 Defines interaction types and parameters.
 
file  ifunc.h
 Declares interaction functions.
 
file  symtab.h
 Declares modern and legacy symbol table used to store strings of characters.
 
file  topologyinformation.h
 Declares gmx::TopologyInformation.
 
file  classhelpers.h
 Declares common utility classes and macros.
 
file  enumerationhelpers.h
 Defines helper types for class enumerations.
 
file  flags.h
 Declares gmx::FlagsTemplate.
 
file  pleasecite.h
 Declares please_cite() for printing out literature references. Declares writeSourceDoi for printing of source code DOI.
 
file  unique_cptr.h
 Declares gmx::unique_cptr and gmx::sfree_guard.