Gromacs  2024.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Attributes
gmx_tng_trajectory Struct Reference

Description

Gromacs Wrapper around tng datatype.

This could in principle hold any GROMACS-specific requirements not yet implemented in or not relevant to the TNG library itself. However, for now we only use it to handle some shortcomings we have discovered, where the TNG API itself is a bit fragile and can end up overwriting data if called several times with the same frame number. The logic to determine the time per step was also a bit fragile. This is not critical, but since we anyway need a wrapper for ensuring unique frame numbers, we can also use it to store the time of the first step and use that to derive a slightly better/safer estimate of the time per step.

At some future point where we have a second-generation TNG API we should consider removing this again.

Public Attributes

tng_trajectory_t tng
 Actual TNG handle (pointer)
 
bool lastStepDataIsValid
 True if lastStep has been set.
 
std::int64_t lastStep
 Index/step used for last frame.
 
bool lastTimeDataIsValid
 True if lastTime has been set.
 
double lastTime
 Time of last frame (TNG unit is seconds)
 
bool timePerFrameIsSet
 True if we have set the time per frame.
 
int boxOutputInterval
 Number of steps between the output of box size.
 
int lambdaOutputInterval
 Number of steps between the output of lambdas.
 

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