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) |
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) |
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 |
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 |
datamodulemanager.h | Declares gmx::AnalysisDataModuleManager |
datastorage.h | Declares gmx::AnalysisDataStorage |
paralleloptions.h | Declares gmx::AnalysisDataParallelOptions |
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) |
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 | |
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 |
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 |
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-load-balancing.h | This file contains function declarations necessary for managing automatic load balance of PME calculations (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) |
fft | |
fft.h | Fast Fourier Transforms |
gpu_utils | |
gpu_utils.h | Declare functions for detection and initialization for GPU devices |
ocl_compiler.h | Declare infrastructure for OpenCL JIT compilation |
oclutils.h | Declare utility routines for OpenCL |
pmalloc_cuda.h | Declare functions for host-side memory handling when using CUDA devices |
hardware | |
cpuinfo.h | Declares gmx::CpuInfo |
hardwaretopology.h | Declares gmx::HardwareTopology |
imd | |
imd.h | This file contains datatypes and function declarations necessary for mdrun to interface with VMD via the interactive molecular dynamics protocol |
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 |
manage-threading.h | Declares functions for managing threading of listed forces |
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 | |
calculate-ewald-splitting-coefficient.h | Declares functions for computing Ewald splitting coefficients |
functions.h | Declares simple math functions |
invertmatrix.h | Declares routines to invert 3x3 matrices |
mdlib | |
groupcoord.h | Assemble atomic positions of a (small) subset of atoms and distribute to all nodes |
nbnxn_gpu_data_mgmt.h | Declare interface for GPU data transfer for NBNXN module |
simulationsignal.h | This file declares functions for inter-rank signalling by mdrun |
mdrunutility | |
handlerestart.h | This file declares functions for mdrun to call to manage the details of doing a restart (ie. reading checkpoints, appending output files) |
threadaffinity.h | Declares functions for managing mdrun thread affinity |
mdtypes | |
md_enums.h | Declares enumerated types used throughout the code |
pull-params.h | This file contains datatypes for the mdp options used by the pull code |
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) |
abstractoption.h | Defines gmx::AbstractOption, gmx::OptionTemplate and gmx::OptionInfo |
abstractoptionstorage.h | Declares gmx::AbstractOptionStorage |
basicoptions.h | Declares option objects for basic option types |
behaviorcollection.h | Declares gmx::OptionsBehaviorCollection |
filenameoption.h | Declares gmx::FileNameOption and gmx::FileNameOptionInfo |
filenameoptionmanager.h | Declares gmx::FileNameOptionManager |
ioptionsbehavior.h | Declares gmx::IOptionsBehavior |
ioptionscontainer.h | Declares gmx::IOptionsContainer |
optionfiletype.h | Defines an enumeration type for specifying file types for options |
optionflags.h | Defines flags used in option implementation |
optionmanagercontainer.h | Declares gmx::OptionManagerContainer |
options.h | Declares gmx::Options |
optionsassigner.h | Declares gmx::OptionsAssigner |
optionstoragetemplate.h | Defines gmx::OptionStorageTemplate template |
optionsvisitor.h | Declares gmx::OptionsVisitor interface and supporting classes |
timeunitmanager.h | Declares gmx::TimeUnitManager |
pbcutil | |
pbc-simd.h | This file contains a definition, declaration and inline function for SIMD accelerated PBC calculations |
pulling | |
pull.h | This file contains datatypes and function declarations necessary for mdrun to interface with the pull code |
pull_internal.h | This file contains datatypes and function declarations for internal use in the pull code |
pull_rotation.h | Declares functions to enforce rotational motion upon a group of particles |
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 |
selection | Parsing and Evaluation of Analysis Selections (selection) |
tests | Unit tests for Parsing and Evaluation of Analysis Selections (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 |
selectionfileoption.h | Declares gmx::SelectionFileOption and gmx::SelectionFileOptionInfo |
selectionoption.h | Declares gmx::SelectionOption and gmx::SelectionOptionInfo |
selectionoptionbehavior.h | Declares gmx::SelectionOptionBehavior |
selectionoptionmanager.h | Declares gmx::SelectionOptionManager |
selhelp.h | Functions for initializing online help for selections |
simd | SIMD intrinsics interface (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 |
tests | Unit tests for SIMD intrinsics interface (simd) |
simd.h | Definitions, capabilities, and wrappers for SIMD module |
simd_math.h | Math functions for SIMD datatypes |
support.h | Functions to query compiled and supported SIMD architectures |
vector_operations.h | SIMD operations corresponding to Gromacs rvec datatypes |
statistics | |
statistics.h | Declares simple statistics toolbox |
swap | |
swapcoords.h | The "Computational Electrophysiology" protocol for ion/water position swapping |
timing | |
cyclecounter.h | High-resolution timestamp or CPU clock cycle counters |
gpu_timing.h | Declares data types for GPU timing |
topology | |
atomsbuilder.h | Utility classes for manipulating t_atoms structures |
trajectoryanalysis | Framework for Trajectory Analysis (trajectoryanalysis) |
tests | Unit tests for Framework for Trajectory Analysis (trajectoryanalysis) |
analysismodule.h | Declares gmx::TrajectoryAnalysisModule and gmx::TrajectoryAnalysisModuleData |
analysissettings.h | Declares gmx::TrajectoryAnalysisSettings and gmx::TopologyInformation |
cmdlinerunner.h | Declares gmx::TrajectoryAnalysisCommandLineRunner |
modules.h | Generic interface for accessing trajectory analysis modules |
utility | Low-Level Utilities (utility) |
tests | Unit tests for Low-Level Utilities (utility) |
alignedallocator.h | Declares gmx::AlignedAllocator that is used to make standard library containers compatible with SIMD contents that require aligned load/store |
arrayref.h | Declares gmx::ArrayRef and gmx::ConstArrayRef |
arraysize.h | Provides asize() macro for calculating the static size of an array |
basedefinitions.h | Basic types and macros used throughout GROMACS |
basenetwork.h | Utility functions for basic MPI and network functionality |
baseversion.h | Declares functions to get basic version information |
binaryinformation.h | Helper functionality for information about the currently running binary |
bitmask.h | Declares gmx_bitmask_t and associated functions |
classhelpers.h | Declares common utility classes and macros |
coolstuff.h | Functionality for printing cool strings |
cstringutil.h | Generic C string handling functions |
current_function.h | Declares GMX_CURRENT_FUNCTION for getting the current function name |
datafilefinder.h | Declares gmx::DataFileFinder and related classes |
dir_separator.h | Provides OS-specific directory-name separator |
directoryenumerator.h | Declares gmx::DirectoryEnumerator |
errorcodes.h | Declares error codes and related functions for fatal error handling |
exceptions.h | Declares common exception classes and macros for fatal error handling |
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 |
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 |
gmxmpi.h | Wraps <mpi.h> usage in Gromacs |
gmxomp.h | Declares OpenMP wrappers to avoid conditional compilation |
gmxregex.h | Declares simple wrapper for regular expression functionality |
init.h | Declares functions for initializing the GROMACS library |
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 |
messagestringcollector.h | Declares gmx::MessageStringCollector |
mutex.h | Declares C++11-style basic threading primitives (gmx::Mutex, gmx::lock_guard) |
nodelete.h | Declares no_delete deleter for std::shared_ptr |
path.h | Declares functions for OS-independent path handling |
pleasecite.h | Declares please_cite() for printing out literature references |
programcontext.h | Declares gmx::IProgramContext and related methods |
qsort_threadsafe.h | Portable implementation of threadsafe quicksort |
real.h | Declares real and related constants |
scoped_cptr.h | Declares gmx::scoped_cptr and gmx::scoped_guard_sfree |
smalloc.h | C memory allocation routines for GROMACS |
snprintf.h | Provide snprintf symbol on all OS (for internal Gromacs use) |
strdb.h | Declares C functions for reading files with a list of strings |
stringstream.h | Declares implementations for textstream.h interfaces for input/output to in-memory strings |
stringutil.h | Declares common string utility and formatting routines |
sysinfo.h | Declares functions for obtaining information about the operating environment and the current process |
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 |
analysisdata.h | Public API convenience header for analysis data handling |
commandline.h | Public API convenience header for managing command line programs |
options.h | Public API convenience header for handling of options |
random.h | Public API convenience header for random engines and distributions |
selection.h | Public API convenience header for selection handling |
trajectoryanalysis.h | Public API convenience header for trajectory analysis framework |
utility.h | Public API convenience header for low-level utilities |
programs | Source code for building executables, see Wrapper binary implementation |
mdrun | Source code specific to mdrun |
view | Source code specific to gmx view , including all X11-dependent code |
testutils | Testing Utilities (testutils) |
tests | Unit tests for Testing Utilities (testutils) |
cmdlinetest.h | Declares utilities testing command-line programs |
conftest.h | Declares function to add the content of a conf file to a checker |
integrationtests.h | Declares test fixture for integration tests |
interactivetest.h | Provides helper classes for testing interactive prompts |
refdata.h | Functionality for writing tests that can produce their own reference data |
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 |
testoptions.h | Functions for accessing test command-line options |
textblockmatchers.h | Declares utility classes for testing multi-line strings against reference data |
xvgtest.h | Declares function to add the content of an xvg file to a checker |
gmxpre.h | Prerequisite header file for GROMACS build |