Gromacs  2026.0-dev-20241204-d69d709
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Modules | Namespaces | Classes | Enumerations | Functions | Files
Public API
+ Collaboration diagram for Public API:

Description

Classes and other symbols that are publicly accessible from user code.

Modules

 MD restraints
 Apply restraints during MD integration.
 

Namespaces

 gmx
 Generic GROMACS namespace.
 

Classes

class  gmx::CommandLineHelpWriter
 Writes help information for Options. More...
 
class  gmx::CommandLineModuleSettings
 Settings to pass information between a module and the general runner. More...
 
class  gmx::ICommandLineModule
 Module that can be run from command line using CommandLineModuleManager. More...
 
class  gmx::ICommandLineOptionsModuleSettings
 Settings to pass information between a CommandLineOptionsModule and generic code that runs it. More...
 
class  gmx::ICommandLineOptionsModule
 Module that can be run from a command line and uses gmx::Options for argument processing. More...
 
class  gmx::CommandLineParser
 Implements command-line parsing for Options objects. More...
 
struct  t_filenm
 File name option definition for C code. More...
 
struct  t_pargs
 Command-line argument definition for C code. More...
 
class  gmx::TrajectoryFileOpener
 Low level method to take care of only file opening and closing. More...
 
class  gmx::TrajectoryFrameWriter
 Writes coordinate frames to a sink, e.g. a trajectory file. More...
 
class  gmx::OutputSelector
 OutputSelector class controls setting which coordinates are actually written. More...
 
class  gmx::SetAtoms
 SetAtoms class controls availability of atoms data. More...
 
class  gmx::SetBox
 Allows changing box information when writing a coordinate file. More...
 
class  gmx::SetForces
 SetForces class allows changing writing of forces to file. More...
 
class  gmx::SetPrecision
 SetPrecision class allows changing file writing precision. More...
 
class  gmx::SetStartTime
 SetStartTime class allows changing trajectory time information. More...
 
class  gmx::SetTimeStep
 SetTimeStep class allows changing trajectory time information. More...
 
class  gmx::SetVelocities
 SetVelocities class allows changing writing of velocities to file. More...
 
class  gmx::OptionSection
 Declares a simple option section. More...
 
class  gmx::OptionSectionHandle
 Allows adding options to an OptionSection. More...
 
class  gmx::RepeatingOptionSection< T >
 Declares an option section that creates a structure for each instance. More...
 
class  gmx::RepeatingOptionSectionHandle< T >
 Allows adding options to an RepeatingOptionSection. More...
 
class  gmx::DataFileOptions
 Search parameters for DataFileFinder. More...
 
struct  gmx::DataFileInfo
 Information about a data file found by DataFileFinder::enumerateFiles(). More...
 
class  gmx::DataFileFinder
 Searches data files from a set of paths. More...
 
class  gmx::FixedCapacityVector< typename, size_t >
 Vector that behaves likes std::vector but has fixed capacity. More...
 
class  gmx::AnalysisData
 Parallelizable data container for raw data. More...
 
class  gmx::AnalysisDataHandle
 Handle for inserting data into AnalysisData. More...
 
class  gmx::AnalysisArrayData
 Simple in-memory data array. More...
 
class  gmx::AnalysisDataValue
 Value type for representing a single value in analysis data objects. More...
 
class  gmx::AnalysisDataFrameHeader
 Value type for storing frame-level information for analysis data. More...
 
class  gmx::AnalysisDataPointSetRef
 Value type wrapper for non-mutable access to a set of data column values. More...
 
class  gmx::AnalysisDataFrameRef
 Value type wrapper for non-mutable access to a data frame. More...
 
class  gmx::AnalysisDataAverageModule
 Data module for independently averaging each column in input data. More...
 
class  gmx::AnalysisDataFrameAverageModule
 Data module for averaging of columns for each frame. More...
 
class  gmx::AnalysisDataDisplacementModule
 Data module for calculating displacements. More...
 
class  gmx::AnalysisHistogramSettingsInitializer
 Provides "named parameter" idiom for constructing histograms. More...
 
class  gmx::AnalysisHistogramSettings
 Contains parameters that specify histogram bin locations. More...
 
class  gmx::AbstractAverageHistogram
 Base class for representing histograms averaged over frames. More...
 
class  gmx::AnalysisDataSimpleHistogramModule
 Data module for per-frame histograms. More...
 
class  gmx::AnalysisDataWeightedHistogramModule
 Data module for per-frame weighted histograms. More...
 
class  gmx::AnalysisDataBinAverageModule
 Data module for bin averages. More...
 
class  gmx::AnalysisDataLifetimeModule
 Data module for computing lifetime histograms for columns in input data. More...
 
class  gmx::AnalysisDataPlotSettings
 Common settings for data plots. More...
 
class  gmx::AnalysisDataPlotModule
 Plotting module for straightforward plotting of data. More...
 
class  gmx::AnalysisDataVectorPlotModule
 Plotting module specifically for data consisting of vectors. More...
 
class  gmx::BasicVector< ValueType >
 C++ class for 3D vectors. More...
 
class  gmx::OptionInfo
 Gives information and allows modifications to an option after creation. More...
 
class  gmx::BooleanOption
 Specifies an option that provides boolean values. More...
 
class  gmx::IntegerOption
 Specifies an option that provides integer values. More...
 
class  gmx::Int64Option
 Specifies an option that provides 64-bit integer values. More...
 
class  gmx::DoubleOption
 Specifies an option that provides floating-point (double) values. More...
 
class  gmx::FloatOption
 Specifies an option that provides floating-point (float) values. More...
 
class  gmx::StringOption
 Specifies an option that provides string values. More...
 
class  gmx::EnumOption< EnumType >
 Specifies an option that accepts an EnumerationArray of string values and writes the selected index into an enum variable. More...
 
class  gmx::LegacyEnumOption< EnumType >
 Specifies an option that accepts enumerated string values and writes the selected index into an enum variable. More...
 
class  gmx::BooleanOptionInfo
 Wrapper class for accessing boolean option information. More...
 
class  gmx::IntegerOptionInfo
 Wrapper class for accessing integer option information. More...
 
class  gmx::Int64OptionInfo
 Wrapper class for accessing 64-bit integer option information. More...
 
class  gmx::DoubleOptionInfo
 Wrapper class for accessing floating-point option information. More...
 
class  gmx::FloatOptionInfo
 Wrapper class for accessing floating-point option information. More...
 
class  gmx::StringOptionInfo
 Wrapper class for accessing string option information. More...
 
class  gmx::EnumOptionInfo
 Wrapper class for accessing enum option information. More...
 
class  gmx::FileNameOption
 Specifies an option that provides file names. More...
 
class  gmx::FileNameOptionInfo
 Wrapper class for accessing file name option information. More...
 
class  gmx::FileNameOptionManager
 Handles interaction of file name options with global options. More...
 
class  gmx::IOptionsBehavior
 Interface to provide extension points for options parsing. More...
 
class  gmx::IOptionsContainer
 Interface for adding input options. More...
 
class  gmx::IOptionsContainerWithSections
 Interface for adding input options with sections. More...
 
class  gmx::Options
 Collection of options. More...
 
class  gmx::TimeUnitManager
 Provides common functionality for time unit conversions. More...
 
class  gmx::TimeUnitBehavior
 Options behavior to add a time unit option. More...
 
class  gmx::AnalysisNeighborhoodPositions
 Input positions for neighborhood searching. More...
 
class  gmx::AnalysisNeighborhood
 Neighborhood searching for analysis tools. More...
 
class  gmx::AnalysisNeighborhoodPair
 Value type to represent a pair of positions found in neighborhood searching. More...
 
class  gmx::AnalysisNeighborhoodSearch
 Initialized neighborhood search with a fixed set of reference positions. More...
 
class  gmx::AnalysisNeighborhoodPairSearch
 Initialized neighborhood pair search with a fixed set of positions. More...
 
class  gmx::Selection
 Provides access to a single selection. More...
 
class  gmx::SelectionPosition
 Provides access to information about a single selected position. More...
 
class  gmx::SelectionCollection
 Collection of selections. More...
 
struct  gmx::SelectionTopologyProperties
 Describes topology properties required for selection evaluation. More...
 
class  gmx::SelectionOption
 Specifies an option that provides selection(s). More...
 
class  gmx::SelectionOptionInfo
 Wrapper class for accessing and modifying selection option information. More...
 
class  gmx::ITopologyProvider
 Provides topology information to SelectionOptionBehavior. More...
 
class  gmx::SelectionOptionBehavior
 Options behavior to allow using SelectionOptions. More...
 
class  gmx::SelectionOptionManager
 Handles interaction of selection options with other options and user input. More...
 
class  gmx::TrajectoryAnalysisModuleData
 Base class for thread-local data storage during trajectory analysis. More...
 
class  gmx::TrajectoryAnalysisModule
 Base class for trajectory analysis modules. More...
 
class  gmx::TrajectoryAnalysisSettings
 Trajectory analysis module configuration object. More...
 
class  gmx::TrajectoryAnalysisCommandLineRunner
 Runner for command-line trajectory analysis tools. More...
 
class  gmx::ArrayRef< typename >
 STL-like interface to a C array of T (or part of a std container of T). More...
 
class  gmx::ExceptionInfo< Tag, T >
 Stores additional context information for exceptions. More...
 
class  gmx::GromacsException
 Base class for all exception objects in Gromacs. More...
 
class  gmx::FileIOError
 Exception class for file I/O errors. More...
 
class  gmx::UserInputError
 Exception class for user input errors. More...
 
class  gmx::InvalidInputError
 Exception class for situations where user input cannot be parsed/understood. More...
 
class  gmx::InconsistentInputError
 Exception class for situations where user input is inconsistent. More...
 
class  gmx::ToleranceError
 Exception class when a specified tolerance cannot be achieved. More...
 
class  gmx::SimulationInstabilityError
 Exception class for simulation instabilities. More...
 
class  gmx::InternalError
 Exception class for internal errors. More...
 
class  gmx::APIError
 Exception class for incorrect use of an API. More...
 
class  gmx::RangeError
 Exception class for out-of-range values or indices. More...
 
class  gmx::NotImplementedError
 Exception class for use of an unimplemented feature. More...
 
class  gmx::ParallelConsistencyError
 Exception class for use when ensuring that MPI ranks to throw in a coordinated fashion. More...
 
class  gmx::ModularSimulatorError
 Exception class for modular simulator. More...
 
struct  gmx::InstallationPrefixInfo
 Provides information about installation prefix (see IProgramContext::installationPrefix()). More...
 
class  gmx::IProgramContext
 Provides context information about the program that is calling the library. More...
 
class  gmx::TextLineWrapperSettings
 Stores settings for line wrapping. More...
 
class  gmx::TextLineWrapper
 Wraps lines to a predefined length. More...
 

Enumerations

enum  gmx::TimeUnit : int {
  Femtoseconds, Picoseconds, Nanoseconds, Microseconds,
  Milliseconds, Seconds, Count, Default = Picoseconds
}
 Time values for TimeUnitManager and legacy oenv module.
 
enum  e_coverfrac_t { CFRAC_NONE, CFRAC_SOLIDANGLE }
 Defines the type of covered fraction. More...
 

Functions

AnalysisHistogramSettingsInitializer gmx::histogramFromRange (real min, real max)
 Initializes a histogram using a range and a bin width. More...
 
AnalysisHistogramSettingsInitializer gmx::histogramFromBins (real start, int nbins, real binwidth)
 Initializes a histogram using bin width and the number of bins. More...
 

Files

file  cmdlinehelpwriter.h
 Declares gmx::CommandLineHelpWriter.
 
file  cmdlineinit.h
 Declares functions for initializing the GROMACS library for command line use.
 
file  cmdlinemodule.h
 Declares gmx::ICommandLineModule and supporting classes.
 
file  cmdlineoptionsmodule.h
 Declares gmx::ICommandLineOptionsModule and supporting routines.
 
file  cmdlineparser.h
 Declares gmx::CommandLineParser.
 
file  filenm.h
 Declares t_filenm for old-style command-line parsing of file name options.
 
file  pargs.h
 Declares t_pargs, parse_common_args() and related methods.
 
file  viewit.h
 Provides function to open output files automatically (with some X11 programs).
 
file  coordinatefile.h
 CoordinateFile takes care of opening files and writing output to them.
 
file  outputselector.h
 Declares gmx::OutputSelector.
 
file  setatoms.h
 Declares gmx::SetAtoms.
 
file  setbox.h
 Declares gmx::SetBox.
 
file  setforces.h
 Declares gmx::SetForces.
 
file  setprecision.h
 Declares gmx::SetPrecision.
 
file  setstarttime.h
 Declares gmx::SetStartTime.
 
file  settimestep.h
 Declares gmx::SetTimeStep.
 
file  setvelocities.h
 Declares gmx:SetVelocities.
 
file  outputadapters.h
 Public API convenience header for accessing outputadapters.
 
file  analysismodule.h
 Public API convenience header for energy analysis framework.
 
file  fft.h
 Fast Fourier Transforms.
 
file  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.
 
file  arrayrefwithpadding.h
 Declares gmx::ArrayRefWithPadding that refers to memory whose size includes padding for SIMD operations.
 
file  paddedvector.h
 Declares gmx::PaddedRVecVector.
 
file  simulationinputhandle.h
 Public interface for SimulationInput facilities.
 
file  optionsection.h
 Declares gmx::OptionSection and gmx::OptionSectionInfo.
 
file  repeatingsection.h
 Declares gmx::RepeatingOptionSection and related classes.
 
file  exponentialdistribution.h
 The exponential distribution.
 
file  gammadistribution.h
 The gamma distribution.
 
file  normaldistribution.h
 The normal distribution.
 
file  seed.h
 Random seed and domain utilities.
 
file  tabulatednormaldistribution.h
 Tabulated normal distribution.
 
file  threefry.h
 Implementation of the 2x64 ThreeFry random engine.
 
file  uniformintdistribution.h
 The uniform integer distribution.
 
file  uniformrealdistribution.h
 The uniform real distribution.
 
file  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.
 
file  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.
 
file  arraysize.h
 Provides asize() function for calculating the static size of an array at compile time.
 
file  cstringutil.h
 Generic C string handling functions.
 
file  datafilefinder.h
 Declares gmx::DataFileFinder and related classes.
 
file  fatalerror.h
 Declares fatal error handling and debugging routines for C code.
 
file  fixedcapacityvector.h
 Declares gmx::FixedCapacityVector.
 
file  init.h
 Declares functions for initializing the GROMACS library.
 
file  utility.h
 Public API convenience header for low-level utilities.
 
file  analysisdata.h
 Declares gmx::AnalysisData and gmx::AnalysisDataHandle.
 
file  arraydata.h
 Declares gmx::AbstractAnalysisArrayData and gmx::AnalysisArrayData.
 
file  dataframe.h
 Declares classes for accessing data frame information.
 
file  average.h
 Declares gmx::AnalysisDataAverageModule.
 
file  displacement.h
 Declares gmx::AnalysisDataDisplacementModule.
 
file  histogram.h
 Declares analysis data modules for calculating histograms.
 
file  lifetime.h
 Declares gmx::AnalysisDataLifetimeModule.
 
file  plot.h
 Declares gmx::AnalysisDataPlotModule for plotting data (into a file).
 
file  functions.h
 Declares simple math functions.
 
file  md_enums.h
 Declares enumerated types used throughout the code.
 
file  basicoptions.h
 Declares option objects for basic option types.
 
file  filenameoption.h
 Declares gmx::FileNameOption and gmx::FileNameOptionInfo.
 
file  filenameoptionmanager.h
 Declares gmx::FileNameOptionManager.
 
file  ioptionsbehavior.h
 Declares gmx::IOptionsBehavior.
 
file  ioptionscontainer.h
 Declares gmx::IOptionsContainer.
 
file  ioptionscontainerwithsections.h
 Declares gmx::IOptionsContainerWithSections.
 
file  optionfiletype.h
 Defines an enumeration type for specifying file types for options.
 
file  options.h
 Declares gmx::Options.
 
file  timeunitmanager.h
 Declares gmx::TimeUnitManager.
 
file  restraintpotential.h
 Declare generic interface for restraint implementations.
 
file  nbsearch.h
 API for neighborhood searching for analysis.
 
file  selection.h
 Declares gmx::Selection and supporting classes.
 
file  selectioncollection.h
 Declares gmx::SelectionCollection.
 
file  selectionoption.h
 Declares gmx::SelectionOption and gmx::SelectionOptionInfo.
 
file  selectionoptionbehavior.h
 Declares gmx::SelectionOptionBehavior.
 
file  selectionoptionmanager.h
 Declares gmx::SelectionOptionManager.
 
file  analysismodule.h
 Declares gmx::TrajectoryAnalysisModule and gmx::TrajectoryAnalysisModuleData.
 
file  analysissettings.h
 Declares gmx::TrajectoryAnalysisSettings.
 
file  cmdlinerunner.h
 Declares gmx::TrajectoryAnalysisCommandLineRunner.
 
file  arrayref.h
 Declares gmx::ArrayRef.
 
file  basedefinitions.h
 Basic types and macros used throughout GROMACS.
 
file  baseversion.h
 Declares functions to get basic version information.
 
file  exceptions.h
 Declares common exception classes and macros for fatal error handling.
 
file  fileptr.h
 Declares guard pointer for RAII-style handling of cstdio FILE pointers.
 
file  futil.h
 Low-level wrappers for OS-specific file handling with some GROMACS customizations.
 
file  gmxassert.h
 Defines assert macros customized for Gromacs.
 
file  listoflists.h
 Declares gmx::ListOfLists.
 
file  programcontext.h
 Declares gmx::IProgramContext and related methods.
 
file  range.h
 Declares gmx::Range.
 
file  real.h
 Declares real and related constants.
 
file  smalloc.h
 C-style memory allocation routines for GROMACS.
 
file  stringutil.h
 Declares common string utility and formatting routines.
 

Enumeration Type Documentation

Defines the type of covered fraction.

Enumerator
CFRAC_NONE 

No covered fraction (everything covered).

CFRAC_SOLIDANGLE 

Fraction of a solid (3D) angle covered.

Function Documentation

AnalysisHistogramSettingsInitializer gmx::histogramFromBins ( real  start,
int  nbins,
real  binwidth 
)
inline

Initializes a histogram using bin width and the number of bins.

Does not throw.

AnalysisHistogramSettingsInitializer gmx::histogramFromRange ( real  min,
real  max 
)
inline

Initializes a histogram using a range and a bin width.

Does not throw.