Gromacs  2023.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions
gmx::analysismodules::anonymous_namespace{msd.cpp}::MsdCoordinateManager Class Reference


Handles coordinate operations for MSD calculations.

Can be used to hold coordinates for individual atoms as well as molecules COMs. Handles PBC jump removal between consecutive frames.

Only previous_ contains valid data between calls to buildCoordinates(), although both vectors are maintained at the correct size for the number of coordinates needed.

Public Member Functions

 MsdCoordinateManager (const int numAtoms, ArrayRef< const MoleculeData > molecules, ArrayRef< const int > moleculeIndexMapping)
ArrayRef< const RVecbuildCoordinates (const Selection &sel, t_pbc *pbc)
 Prepares coordinates for the current frame. More...

Member Function Documentation

ArrayRef< const RVec > gmx::analysismodules::anonymous_namespace{msd.cpp}::MsdCoordinateManager::buildCoordinates ( const Selection sel,
t_pbc pbc 

Prepares coordinates for the current frame.

Reads in selection data, and returns an ArrayRef of the particle positions or molecule centers of mass (if the molecules input is not empty). Removes jumps across periodic boundaries based on the previous frame coordinates, except for the first frame built with builtCoordinates(), which has no previous frame as a reference.

[in]selThe selection object which holds coordinates
[in]pbcInformation about periodicity.
The current frames coordinates in proper format.

The documentation for this class was generated from the following file: