api | |
legacy | |
include | |
gromacs | |
analysisdata | |
modules | |
average.h | Declares gmx::AnalysisDataAverageModule |
displacement.h | Declares gmx::AnalysisDataDisplacementModule |
histogram.h | Declares analysis data modules for calculating histograms |
lifetime.h | Declares gmx::AnalysisDataLifetimeModule |
plot.h | Declares gmx::AnalysisDataPlotModule for plotting data (into a file) |
abstractdata.h | Declares gmx::AbstractAnalysisData |
analysisdata.h | Declares gmx::AnalysisData and gmx::AnalysisDataHandle |
arraydata.h | Declares gmx::AbstractAnalysisArrayData and gmx::AnalysisArrayData |
dataframe.h | Declares classes for accessing data frame information |
datamodule.h | Declares gmx::IAnalysisDataModule and related convenience classes |
math | |
functions.h | Declares simple math functions |
mdtypes | |
md_enums.h | Declares enumerated types used throughout the code |
options | |
abstractoption.h | Defines gmx::AbstractOption, gmx::OptionTemplate and gmx::OptionInfo |
basicoptions.h | Declares option objects for basic option types |
filenameoption.h | Declares gmx::FileNameOption and gmx::FileNameOptionInfo |
filenameoptionmanager.h | Declares gmx::FileNameOptionManager |
ioptionsbehavior.h | Declares gmx::IOptionsBehavior |
ioptionscontainer.h | Declares gmx::IOptionsContainer |
ioptionscontainerwithsections.h | Declares gmx::IOptionsContainerWithSections |
ivaluestore.h | Declares gmx::IOptionValueStore |
optionfiletype.h | Defines an enumeration type for specifying file types for options |
optionflags.h | Defines flags used in option implementation |
options.h | Declares gmx::Options |
timeunitmanager.h | Declares gmx::TimeUnitManager |
restraint | |
restraintpotential.h | Declare generic interface for restraint implementations |
selection | |
indexutil.h | API for handling index files and index groups |
nbsearch.h | API for neighborhood searching for analysis |
position.h | API for handling positions |
selection.h | Declares gmx::Selection and supporting classes |
selectioncollection.h | Declares gmx::SelectionCollection |
selectionenums.h | Declares common types used in selections |
selectionoption.h | Declares gmx::SelectionOption and gmx::SelectionOptionInfo |
selectionoptionbehavior.h | Declares gmx::SelectionOptionBehavior |
selectionoptionmanager.h | Declares gmx::SelectionOptionManager |
topology | |
symtab.h | Declares modern and legacy symbol table used to store strings of characters |
trajectoryanalysis | |
analysismodule.h | Declares gmx::TrajectoryAnalysisModule and gmx::TrajectoryAnalysisModuleData |
analysissettings.h | Declares gmx::TrajectoryAnalysisSettings |
cmdlinerunner.h | Declares gmx::TrajectoryAnalysisCommandLineRunner |
topologyinformation.h | Declares gmx::TopologyInformation |
utility | |
arrayref.h | Declares gmx::ArrayRef |
basedefinitions.h | Basic types and macros used throughout GROMACS |
baseversion.h | Declares functions to get basic version information |
classhelpers.h | Declares common utility classes and macros |
current_function.h | Declares GMX_CURRENT_FUNCTION for getting the current function name |
enumerationhelpers.h | Defines helper types for class enumerations |
exceptions.h | Declares common exception classes and macros for fatal error handling |
fileptr.h | Declares guard pointer for RAII-style handling of cstdio FILE pointers |
flags.h | Declares gmx::FlagsTemplate |
futil.h | Low-level wrappers for OS-specific file handling with some GROMACS customizations |
gmxassert.h | Defines assert macros customized for Gromacs |
listoflists.h | Declares gmx::ListOfLists |
pleasecite.h | Declares please_cite() for printing out literature references. Declares writeSourceDoi for printing of source code DOI |
programcontext.h | Declares gmx::IProgramContext and related methods |
range.h | Declares gmx::Range |
real.h | Declares real and related constants |
smalloc.h | C-style memory allocation routines for GROMACS |
stringutil.h | Declares common string utility and formatting routines |
unique_cptr.h | Declares gmx::unique_cptr and gmx::sfree_guard |
docs | Build system and source code for various documentation items |
doxygen | Doxygen build system and general documentation content |
share | Directory that contains installed data files |
template | Template code for writing analysis programs |
template.cpp | Template code for writing analysis programs |
src | Main source code directory |
gromacs | Source code for building the libgromacs library |
analysisdata | Parallelizable Handling of Output Data (analysisdata) |
tests | Unit tests for Parallelizable Handling of Output Data (analysisdata) |
datatest.h | Helper classes for testing classes that derive from AbstractAnalysisData |
mock_datamodule.h | Declares mock implementation of gmx::IAnalysisDataModule |
datamodulemanager.h | Declares gmx::AnalysisDataModuleManager |
datastorage.h | Declares gmx::AnalysisDataStorage |
paralleloptions.h | Declares gmx::AnalysisDataParallelOptions |
applied_forces | |
awh | |
awh.h | Declares the Awh class |
read_params.h | Declares functions needed for reading, initializing and setting the AWH parameter data types |
electricfield.h | Declares module creation function for applied electric fields |
commandline | Command Line Program Management (commandline) |
tests | Unit tests for Command Line Program Management (commandline) |
cmdlinehelpcontext.h | Declares gmx::CommandLineHelpContext |
cmdlinehelpwriter.h | Declares gmx::CommandLineHelpWriter |
cmdlineinit.h | Declares functions for initializing the GROMACS library for command line use |
cmdlinemodule.h | Declares gmx::ICommandLineModule and supporting classes |
cmdlinemodulemanager.h | Declares gmx::CommandLineModuleManager |
cmdlineoptionsmodule.h | Declares gmx::ICommandLineOptionsModule and supporting routines |
cmdlineparser.h | Declares gmx::CommandLineParser |
cmdlineprogramcontext.h | Declares gmx::CommandLineProgramContext |
filenm.h | Declares t_filenm for old-style command-line parsing of file name options |
pargs.h | Declares t_pargs , parse_common_args() and related methods |
viewit.h | Provides function to open output files automatically (with some X11 programs) |
compat | C++ standard library compatibility helpers. |
mp11.h | Provides ported functions/classes from boost::mp11 |
pointers.h | Provides ported functions/classes from gsl/pointers |
utility.h | Provides backported functions/classes from utility |
coordinateio | |
frameconverters | |
register.cpp | |
register.h | Declares gmx::ProcessFrameConversion |
outputadapters | |
outputselector.h | Declares gmx::OutputSelector |
setatoms.h | Declares gmx::SetAtoms |
setbox.h | Declares gmx::SetBox |
setforces.h | Declares gmx::SetForces |
setprecision.h | Declares gmx::SetPrecision |
setstarttime.h | Declares gmx::SetStartTime |
settimestep.h | Declares gmx::SetTimeStep |
setvelocities.h | Declares gmx:SetVelocities |
tests | |
coordinate_test.h | Helper classes for coordinatefile and coordinateio tests |
frameconverter.h | Helper classes for frameconverter tests |
outputadapters.h | Helpers and data for outputadapter module tests |
register.cpp | |
requirements.h | Helpers and data for flag setting method |
testmodule.h | |
coordinatefile.h | CoordinateFile takes care of opening files and writing output to them |
coordinatefileenums.h | Defines enum class defining the different requirements that outputadapters have for the output file type. OutputManager objects can only be built with OutputAdapters whose requirements can be implemented with the available input |
frameconverterenums.h | Defines enum class defining the guarantees provided by different frameconverters for the coordiante file manipulations done by them |
iframeconverter.h | Interface class for frame handling, provides handles for all calls |
ioutputadapter.h | Declares gmx::IOutputAdapter interface for modifying coordinate file structures before writing them to disk |
outputadaptercontainer.h | Declares gmx::OutputAdapterContainer, a storage object for multiple outputadapters derived from the IOutputadaper interface |
outputadapters.h | Public API convenience header for accessing outputadapters |
requirements.h | Storage object for requirements to build coordinate file writer |
correlationfunctions | |
autocorr.h | Declares routine for computing autocorrelation functions |
crosscorr.h | Declares routine for computing a cross correlation between two data sets |
expfit.h | Declares routine for fitting a data set to a curve |
gmx_lmcurve.h | Declares a driver routine for lmfit |
integrate.h | Declares routines for integrating a data set |
manyautocorrelation.h | Declares routine for computing many correlation functions using OpenMP |
polynomials.h | Declares routine for computing a Legendre polynomial |
domdec | |
builder.h | This file declares a builder class for the manager of domain decomposition |
collect.h | Declares functions to collect state data to the main rank |
computemultibodycutoffs.h | This file declares the function for computing the required cutoff distance for inter-domain multi-body interactions, when those exist |
dlb.h | This file declares functions to interact with the dynamic load balancing machinery |
dlbtiming.h | This file declares functions for timing the load imbalance due to domain decomposition |
domdec.h | This file declares functions for mdrun to call to manage the details of its domain decomposition |
domdec_network.h | This file declares functions for (mostly) the domdec module to use MPI functionality |
domdec_struct.h | Declares structures related to domain decomposition |
ga2la.h | Defines structures and functions for mapping from global to local atom indices. The functions are performance critical and should be inlined |
gpuhaloexchange.h | Declaration of GPU halo exchange |
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 |
localatomset.cpp | |
localatomset.h | Declares gmx::LocalAtomSet |
localatomsetdata.cpp | |
localatomsetdata.h | |
localatomsetmanager.h | Declares gmx::LocalAtomSetManager |
localtopology.h | This file makes declarations used for building the local topology |
localtopologychecker.h | This file declares functionality for checking whether local topologies describe all bonded interactions |
makebondedlinks.h | Declares a function that makes the list of links between atoms connected by bonded interactions |
mdsetup.h | Contains functions relevant to simulation setup in MD drivers |
options.h | This file declares command-line options for mdrun related to domain decomposition |
partition.h | This file declares functions for mdrun to call to make a new domain decomposition, and check it |
reversetopology.h | This file makes declarations used for building the reverse topology |
energyanalysis | |
analysismodule.h | Public API convenience header for energy analysis framework |
energyanalysisframe.h | Declares gmx::EnergyAnalysisFrame |
energyterm.h | Declares gmx::EnergyTerm |
ienergyanalysis.h | Declares gmx::IEnergyAnalysis |
essentialdynamics | |
edsam.h | Declares functions to calculate both essential dynamics constraints as well as flooding potentials and forces |
ewald | |
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 |
ewald_utils.h | Declares utility functions related to Ewald |
long_range_correction.h | This file contains function declarations necessary for computing energies and forces for the PME long-ranged part (Coulomb and LJ) |
pme.h | This file contains function declarations necessary for computing energies and forces for the PME long-ranged part (Coulomb and LJ) |
pme_coordinate_receiver_gpu.h | Declaration of class which receives coordinates to GPU memory on PME task |
pme_force_sender_gpu.h | Declaration of class which sends PME Force from GPU memory to PP task |
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 |
pme_gpu_settings.h | Defines the PME GPU settings data structures |
pme_gpu_staging.h | Defines the host-side PME GPU data structures |
pme_gpu_types_host.h | Defines the host-side PME GPU data structures |
pme_load_balancing.h | This file contains function declarations necessary for managing automatic load balance of PME calculations (Coulomb and LJ) |
pme_only.h | This file contains function declarations necessary for running on an MPI rank doing only PME long-ranged work |
pme_output.h | Defines a struct useful for transferring the PME output values |
pme_pp_comm_gpu.h | Declaration of GPU PME-PP Communication |
fft | |
fft.h | Fast Fourier Transforms |
fileio | |
mrcdensitymap.h | Declars mrc/ccp4-file format handling |
mrcdensitymapheader.h | Implement mrc/ccp4-file metadata |
mrcserializer.h | Serialization routines for volume data format mrc |
gmxpreprocess | |
gpp_atomtype.h | Declares PreprocessingAtomType |
gpp_bond_atomtype.h | Declares PreprocessingBondAtomType |
hackblock.h | Methods to modify atoms during preprocessing |
resall.h | |
gpu_utils | |
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 |
device_context.h | Declarations for DeviceContext class |
device_event.h | Declares DeviceEvent for all build configuraitons |
device_event_ocl.h | Implements a DeviceEvent class for OpenCL |
device_event_sycl.h | Implements a GpuEventSynchronizer class for SYCL |
device_stream.h | Declarations for DeviceStream class |
device_stream_manager.h | This file declares a manager of GPU context and streams needed for running workloads on GPUs |
devicebuffer.h | Implements the logic for handling of DeviceBuffer types in OpenCL, CUDA and SYCL |
devicebuffer_datatype.h | Declares the DeviceBuffer data type |
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 |
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 |
gmxopencl.h | Wraps the complexity of including OpenCL in Gromacs |
gmxsycl.h | Wraps the complexity of including SYCL in GROMACS |
gpu_utils.h | Declare functions for detection and initialization for GPU devices |
gpueventsynchronizer.h | Implements a GpuEventSynchronizer class |
gpueventsynchronizer_helpers.cpp | Helper functions for a GpuEventSynchronizer class |
gpueventsynchronizer_helpers.h | Helper functions for a GpuEventSynchronizer class |
gpuregiontimer.h | Defines the GPU region timer implementation/wrapper classes. The implementations live in gpuregiontimer.cuh for CUDA and gpuregiontimer_ocl.h for OpenCL |
gpuregiontimer_ocl.h | Implements the GPU region timer for OpenCL |
gpuregiontimer_sycl.h | Implements the GPU region timer for SYCL |
gputraits.h | Declares the GPU type traits for non-GPU builds |
gputraits_ocl.h | Declares the OpenCL type traits |
gputraits_sycl.h | Declares the SYCL type traits |
hostallocator.h | Declares gmx::HostAllocationPolicy, gmx::HostAllocator, gmx::HostVector and gmx::PaddedHostVector, which are used to make/be standard library containers that can allocate memory suitable for transfers. Currently the only supported transfers using pinned memory are to CUDA GPUs, but other possibilities exist in future |
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 |
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 |
ocl_compiler.h | Declare infrastructure for OpenCL JIT compilation |
oclraii.h | Declare RAII helpers for OpenCL types, along with supporting type traits |
oclutils.h | Declare utility routines for OpenCL |
pmalloc.h | Declare functions for host-side memory handling |
sycl_kernel_utils.h | SYCL kernel helper functions |
syclutils.h | Declare utility routines for SYCL |
hardware | |
cpuinfo.h | Declares gmx::CpuInfo |
device_information.h | Declares the GPU information structure and its helpers |
device_management.h | Declares functions to manage GPU resources |
device_management_sycl_intel_device_ids.h | Lookup Intel hardware version from PCI Express ID |
hardwaretopology.h | Declares gmx::HardwareTopology |
identifyavx512fmaunits.h | Defines a routine to check the number of AVX512 fma units |
simd_support.h | Functions to query compiled and supported SIMD architectures |
imd | |
imd.h | This file declares the class that coordinates with VMD via the Interactive Molecular Dynamics protocol, along with supporting free functions |
imdsocket.h | Implements the parts of the vmdsock.h interface needed for IMD communication |
listed_forces | |
bonded.h | This file contains declarations necessary for low-level functions for computing energies and forces for bonded interactions |
disre.h | Declares functions for handling distance restraints |
listed_forces.h | This file contains declarations of high-level functions used by mdrun to compute energies and forces for listed interactions |
listed_forces_gpu.h | This file contains declarations of high-level functions used by mdrun to compute energies and forces for listed interactions |
orires.h | Declares functions for handling orientation restraints |
pairs.h | This file declares functions for "pair" interactions (i.e. listed non-bonded interactions, e.g. 1-4 interactions) |
position_restraints.h | This file contains declarations necessary for low-level functions for computing energies and forces for position restraints |
math | |
include | |
gromacs | |
math | |
arrayrefwithpadding.h | Declares gmx::ArrayRefWithPadding that refers to memory whose size includes padding for SIMD operations |
boxmatrix.h | Declares routines to operate on 3x3 matrices that are boxes, ie. have zero values in their upper right triangle |
coordinatetransformation.h | Declares coordinate transformation routines |
densityfit.h | Declares density similarity measures and their derivatives |
densityfittingforce.h | Declares classes to calculate density fitting forces |
exponentialmovingaverage.h | Declares an exponential moving average class |
gausstransform.h | Declares Gaussian function evaluations on lattices and related functionality |
invertmatrix.h | Declares routines to invert 3x3 matrices |
matrix.h | Declares special case of 3x3 matrix frequently used, and associated functions |
multidimarray.h | Declares MultiDimArray |
neldermead.h | Declare classes to aid Nelder-Mead downhill simplex optimisation |
nrjac.h | Declares wrapper functions for higher-level matrix functions |
paddedvector.h | Declares gmx::PaddedRVecVector |
tests | |
testarrayrefs.h | Declares functions for comparing views of vector-like data |
nrjac.cpp | Defines wrapper functions for higher-level matrix functions |
mdlib | |
boxdeformation.h | Declares interface to box deformation code |
broadcaststructs.h | Convenience wrappers for broadcasting structs |
checkpointhandler.h | Declares the checkpoint handler class |
constr.h | Declares interface to constraint code |
energyoutput.h | Header for the code that writes energy-like quantities |
groupcoord.h | Assemble atomic positions of a (small) subset of atoms and distribute to all nodes |
leapfrog_gpu.h | Declarations for GPU implementation of Leap-Frog |
leapfrog_gpu_internal.h | Declarations for backend specific GPU functions for Leap-Frog |
lincs.h | Declares interface to LINCS code |
lincs_gpu.h | Declares the class for GPU implementation of LINCS |
makeconstraints.h | Declares and implements factory function for Constraints |
resethandler.h | Declares the reset handler class |
settle.h | Declares interface to SETTLE code |
shake.h | Declares interface to SHAKE code |
simulationsignal.h | This file declares functions for inter-rank signalling by mdrun |
stophandler.h | Declares StopHandler, a helper class and two stop conditions |
update_constrain_gpu.h | Declaration of high-level functions of GPU implementation of update and constrain class |
updategroups.h | Declares the functions for generating update groups |
updategroupscog.h | Declares the UpdateGroupsCog class for managing centers of mass of update groups |
vsite.h | Declares the VirtualSitesHandler class and vsite standalone functions |
wholemoleculetransform.h | Declares the WholeMolecules class for generating whole molecules |
mdrun | |
legacymdrunoptions.h | This file declares helper functionality for legacy option handling for mdrun |
mdmodules.h | Declares gmx::MDModules |
replicaexchange.h | Declares the routines for replica exchange |
runner.h | Declares the routine running the inetgrators |
simulationcontext.h | Provide ways for client code to own simulation resources |
simulationinput.h | Utilities for interacting with SimulationInput |
simulationinputhandle.h | Public interface for SimulationInput facilities |
mdrunutility | |
freeenergy.cpp | Defines helper functions for mdrun pertaining to free energy calculations |
freeenergy.h | Declares helper functions for mdrun pertaining to free energy calculations |
handlerestart.h | This file declares functions for mdrun to call to manage the details of doing a restart (ie. reading checkpoints, appending output files) |
logging.h | Declares the MD log file handling routines |
mdmodulesnotifier.h | Declares gmx::MDModulesNotifier and builder |
mdmodulesnotifiers.h | Declares gmx::MDModulesNotifiers |
multisim.h | Declares the multi-simulation support routines |
printtime.h | Declares functions that write timestamps to e.g. log files |
threadaffinity.h | Declares functions for managing mdrun thread affinity |
mdspan | |
accessor_policy.h | Declares accessor policies for mdspan |
extensions.h | GROMACS extensions to mdspan |
extents.h | Declares gmx::extents for mdspan |
layouts.h | Declares gmx::layout_right for mdspan |
mdspan.h | Declares gmx::mdspan |
mdtypes | |
atominfo.h | This file makes declarations used for storing bitfields describing each atom so that other modules can efficiently process them |
awh_correlation_history.h | Contains datatypes and function declarations needed by AWH to have its force correlation data checkpointed |
awh_history.h | Contains datatypes and function declarations needed by AWH to have its data checkpointed |
awh_params.h | Declares AWH parameter data types |
checkpointdata.h | Provides the checkpoint data structure for the modular simulator |
energyhistory.h | This file contains datatypes for energy statistics history |
forcebuffers.h | This file contains the definition of a container for force buffers |
forceoutput.h | This file contains the definition of a container for force and virial output |
iforceprovider.h | Declares gmx::IForceProvider and ForceProviders |
imdmodule.h | Declares gmx::IMDModule |
imdoutputprovider.h | Declares gmx::IMDOutputProvider |
imdpoptionprovider.h | Declares gmx::IMdpOptionProvider |
locality.h | Defines atom and atom interaction locality enums |
mdrunoptions.h | This file declares helper functionality for legacy option handling for mdrun |
observableshistory.h | This file contains the definition of a container for history data for simulation observables |
observablesreducer.h | Declares gmx::ObservablesReducer and builder |
pull_params.h | This file contains datatypes for the mdp options used by the pull code |
pullhistory.h | This file contains datatypes for pull statistics history |
simulation_workload.h | Declares step, domain-lifetime, and run workload managers |
state.h | This file contains the definition of the microstate of the simulated system |
mimic | |
utilities.h | Provides utility functions for MiMiC QM/MM |
modularsimulator | |
modularsimulator.h | Provides the modular simulator |
nbnxm | |
benchmark | |
bench_setup.h | This file declares functions for setting up kernel benchmarks |
bench_system.h | This file declares functions for setting up a benchmark system |
atomdata.h | Functionality for per-atom data in the nbnxm module |
boundingboxes.h | |
gpu_data_mgmt.h | Declare interface for GPU data transfer for NBNXN module |
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 |
nbnxm_gpu.h | Declare interface for GPU execution for NBNXN module |
nbnxm_gpu_data_mgmt.h | Declare common functions for NBNXM GPU data management |
pairlist_tuning.h | Declares functions for tuning adjustable parameters for the nbnxn non-bonded search and interaction kernels |
onlinehelp | Help Formatting for Online Help (onlinehelp) |
tests | Unit tests for Help Formatting for Online Help (onlinehelp) |
mock_helptopic.h | Declares mock implementation of gmx::IHelpTopic |
helpformat.h | Declares common string formatting routines for online help |
helpmanager.h | Declares gmx::HelpManager |
helptopic.h | Declares helper classes for implementing gmx::IHelpTopic |
helpwritercontext.h | Declares gmx::HelpWriterContext |
ihelptopic.h | Declares gmx::IHelpTopic |
options | Extensible Handling of Options (options) |
tests | Unit tests for Extensible Handling of Options (options) |
abstractoptionstorage.h | Declares gmx::AbstractOptionStorage |
abstractsection.h | Declares base classes for declaring option sections |
behaviorcollection.h | Declares gmx::OptionsBehaviorCollection |
isectionstorage.h | Declares gmx::IOptionSectionStorage |
optionmanagercontainer.h | Declares gmx::OptionManagerContainer |
optionsassigner.h | Declares gmx::OptionsAssigner |
optionsection.h | Declares gmx::OptionSection and gmx::OptionSectionInfo |
optionstoragetemplate.h | Defines gmx::OptionStorageTemplate template |
optionsvisitor.h | Declares gmx::OptionsVisitor interface and supporting classes |
repeatingsection.h | Declares gmx::RepeatingOptionSection and related classes |
treesupport.h | Declares functions for using keyvaluetree.h with Options |
valueconverter.h | Provides gmx::OptionValueConverterSimple |
valuestore.h | Declares implementations for IOptionValueStore |
pbcutil | |
include | |
gromacs | |
pbcutil | |
com.h | Helper methods to place particle COM in boxes |
pbc_aiuc.h | Structure and basic routines to handle periodic boundary conditions |
pbc_aiuc_sycl.h | Basic routines to handle periodic boundary conditions with SYCL |
pbc_simd.h | This file contains a definition, declaration and inline function for SIMD accelerated PBC calculations |
pbcenums.h | Defines enum classes for centering and unit cell types |
com.cpp | |
pbcenums.cpp | |
pulling | |
include | |
gromacs | |
pulling | |
pull.h | This file contains datatypes and function declarations necessary for mdrun to interface with the pull code |
pull_rotation.h | Declares functions to enforce rotational motion upon a group of particles |
output.h | This file declares functions for pull output writing |
random | |
exponentialdistribution.h | The exponential distribution |
gammadistribution.h | The gamma distribution |
normaldistribution.h | The normal distribution |
seed.h | Random seed and domain utilities |
tabulatednormaldistribution.h | Tabulated normal distribution |
threefry.h | Implementation of the 2x64 ThreeFry random engine |
uniformintdistribution.h | The uniform integer distribution |
uniformrealdistribution.h | The uniform real distribution |
restraint | |
manager.h | Declare the Manager for restraint potentials |
restraintmdmodule.h | Library interface for RestraintMDModule |
restraintmdmodule_impl.h | Implementation details for RestraintMDModule |
selection | Parsing and Evaluation of Analysis Selections (selection) |
tests | Unit tests for Parsing and Evaluation of Analysis Selections (selection) |
selectionfileoption.h | Declares gmx::SelectionFileOption and gmx::SelectionFileOptionInfo |
selhelp.h | Functions for initializing online help for selections |
simd | SIMD intrinsics interface (simd) |
include | |
gromacs | |
simd | |
impl_reference | |
impl_reference.h | Reference SIMD implementation, including SIMD documentation |
impl_reference_definitions.h | Reference SIMD implementation, including SIMD documentation |
impl_reference_general.h | Reference SIMD implementation, general utility functions |
impl_reference_simd4_double.h | Reference implementation, SIMD4 single precision |
impl_reference_simd4_float.h | Reference implementation, SIMD4 single precision |
impl_reference_simd_double.h | Reference implementation, SIMD double precision |
impl_reference_simd_float.h | Reference implementation, SIMD single precision |
impl_reference_util_double.h | Reference impl., higher-level double prec. SIMD utility functions |
impl_reference_util_float.h | Reference impl., higher-level single prec. SIMD utility functions |
scalar | |
scalar.h | Scalar float functions corresponding to GROMACS SIMD functions |
scalar_math.h | Scalar math functions mimicking GROMACS SIMD math functions |
scalar_util.h | Scalar utility functions mimicking GROMACS SIMD utility functions |
hsimd_declarations.h | Declares all Hsimd functions that are not supported |
simd.h | Definitions, capabilities, and wrappers for SIMD module |
simd_math.h | Math functions for SIMD datatypes |
simd_memory.h | Declares SimdArrayRef |
vector_operations.h | SIMD operations corresponding to Gromacs rvec datatypes |
tests | Unit tests for SIMD intrinsics interface (simd) |
statistics | |
statistics.h | Declares simple statistics toolbox |
swap | |
swapcoords.h | The "Computational Electrophysiology" protocol for ion/water position swapping |
tables | |
cubicsplinetable.h | Declares classes for cubic spline table |
forcetable.h | Old routines for table generation (will eventually be replaced) |
quadraticsplinetable.h | Declares classes for quadratic spline table |
tableinput.h | Declares structures for analytical or numerical input data to construct tables |
taskassignment | |
include | |
gromacs | |
taskassignment | |
decidegpuusage.h | Declares functionality for deciding whether tasks will run on GPUs |
resourcedivision.h | Declares utility functionality for dividing resources and checking for consistency and usefulness |
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 |
usergpuids.h | Declares routines for handling user-specified GPU IDs |
timing | |
include | |
gromacs | |
timing | |
cyclecounter.h | High-resolution timestamp or CPU clock cycle counters |
gpu_timing.h | Declares data types for GPU timing |
topology | |
include | |
gromacs | |
topology | |
atomsbuilder.h | Utility classes for manipulating t_atoms structures |
mtop_atomloops.h | This file contains functions to loop over topology contents |
mtop_lookup.h | This file contains inline functions to look up atom information using the global atom index |
trajectoryanalysis | Framework for Trajectory Analysis (trajectoryanalysis) |
modules | |
unionfind.h | Implements gmx::UnionFinder and gmx::MappedUnionFinder |
tests | Unit tests for Framework for Trajectory Analysis (trajectoryanalysis) |
modules.h | Generic interface for accessing trajectory analysis modules |
utility | Low-Level Utilities (utility) |
include | |
gromacs | |
utility | |
alignedallocator.h | Declares allocation policy classes and allocators that are used to make library containers compatible with alignment requirements of particular hardware, e.g. memory operations for SIMD or accelerators |
allocator.h | Declares gmx::Allocator template whose allocation functionality is configured both by type of object allocated and a policy class that configures the necessary matching malloc and free operation |
any.h | Declares gmx::Any |
arraysize.h | Provides asize() function for calculating the static size of an array at compile time |
basenetwork.h | Utility functions for basic MPI and network functionality |
binaryinformation.h | Helper functionality for information about the currently running binary |
bitmask.h | Declares gmx_bitmask_t and associated functions |
compare.h | Utilities for comparing data structures (for gmx check) |
coolstuff.h | Functionality for printing cool strings |
cstringutil.h | Generic C string handling functions |
datafilefinder.h | Declares gmx::DataFileFinder and related classes |
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 |
directoryenumerator.h | Declares gmx::DirectoryEnumerator |
fatalerror.h | Declares fatal error handling and debugging routines for C code |
fileredirector.h | Declares gmx::IFileOutputRedirector |
filestream.h | Declares implementations for textstream.h interfaces for file input/output |
fixedcapacityvector.h | Declares gmx::FixedCapacityVector |
gmxmpi.h | Wraps mpi.h usage in Gromacs |
gmxomp.h | Declares OpenMP wrappers to avoid conditional compilation |
ikeyvaluetreeerror.h | Declares an error handling interface for key-value tree operations |
init.h | Declares functions for initializing the GROMACS library |
inmemoryserializer.h | Declares gmx::ISerializer implementation for in-memory serialization |
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 |
iserializer.h | Declares a generic serialization interface that supports both directions |
keyvaluetree.h | Declares a data structure for JSON-like structured key-value mapping |
keyvaluetreebuilder.h | Declares classes for building the data structures in keyvaluetree.h |
keyvaluetreemdpwriter.h | Declares a function to write a flat key-value tree to look like old-style mdp output |
keyvaluetreeserializer.h | Declares serialization routines for KeyValueTree objects |
keyvaluetreetransform.h | Declares utilities for transforming key-value trees |
logger.h | Declares functionality for logging |
loggerbuilder.h | Declares functionality for initializing logging |
message_string_collector.h | Declares gmx::MessageStringCollector |
niceheader.h | Declares function for printing a nice header for text output files |
path.h | Declares functions for OS-independent path handling |
physicalnodecommunicator.h | Declares functionality for communicators across physical nodes |
snprintf.h | Provide snprintf symbol on all OS (for internal Gromacs use) |
strconvert.h | Declares common utility functions for conversions to and from strings |
strdb.h | Declares C functions for reading files with a list of strings |
stringcompare.h | Declares utility functionst for string comparison |
stringstream.h | Declares implementations for textstream.h interfaces for input/output to in-memory strings |
stringtoenumvalueconverter.h | Defines helper function object for class enumerations |
sysinfo.h | Declares functions that wrap platform-specific calls for obtaining information about the operating environment and the current process |
template_mp.h | Declares utilities for template metaprogramming |
textreader.h | Declares gmx::TextReader |
textstream.h | Declares interfaces for simple input/output streams |
textwriter.h | Declares gmx::TextWriter |
txtdump.h | Declares helper functions for dumping basic data structures as text |
typetraits.h | Declares type traits |
tests | Unit tests for Low-Level Utilities (utility) |
alignedallocator_impl.h | Tests for allocators that offer a minimum alignment |
errorcodes.h | Declares error codes and related functions for fatal error handling |
nodelete.h | Declares no_delete deleter for std::shared_ptr |
utility.h | Public API convenience header for low-level utilities |
include | |
gmxpre.h | Prerequisite header file for GROMACS build |
programs | Source code for building executables, see Wrapper binary implementation |
mdrun | Source code specific to mdrun |
nonbonded_bench.h | Declares the nonbonded benchmarking tool |
testutils | Testing Utilities (testutils) |
include | |
testutils | |
cmdlinetest.h | Declares utilities testing command-line programs |
conftest.h | Declares function to add the content of a conf file to a checker |
filematchers.h | Declares utility classes for testing file contents |
interactivetest.h | Provides helper classes for testing interactive prompts |
loggertest.h | Declares gmx::test::LoggerTestHelper |
mpitest.h | Helper functions for MPI tests to make thread-MPI look like real MPI |
refdata.h | Functionality for writing tests that can produce their own reference data |
setenv.h | Helper functions to have identical behavior of setenv and unsetenv on Unix and Windows systems |
simulationdatabase.h | Functionality for testing whether calls to mdrun produce the same energy and force quantities when they should do so |
stdiohelper.h | Declares gmx::test::StdioTestHelper |
stringtest.h | Declares gmx::test::StringTestBase |
testasserts.h | Extra assertions for unit tests |
testexceptions.h | Exception classes for errors in tests |
testfilemanager.h | Declares gmx::test::TestFileManager |
testfileredirector.h | Declares generic mock implementations for interfaces in fileredirector.h |
testmatchers.h | Extra GoogleMock matchers for unit tests |
testoptions.h | Functions for accessing test command-line options |
textblockmatchers.h | Declares utility classes for testing multi-line strings against reference data |
tprfilegenerator.h | Helper for generating reusuable TPR files for tests within the same test binary |
xvgtest.h | Declares function to add the content of an xvg file to a checker |
tests | Unit tests for Testing Utilities (testutils) |
topologyhelpers.h | |