#define GMX_MDTYPES_MDATOM_H
#include "gromacs/math/vectypes.h"
-#include "gromacs/utility/basedefinitions.h"
#include "gromacs/utility/real.h"
+enum class ParticleType : int;
+
typedef struct t_mdatoms
{
//! Total mass in state A
//! Number of energy groups
int nenergrp;
//! Do we have multiple center of mass motion removal groups
- gmx_bool bVCMgrps;
+ bool bVCMgrps;
//! Do we have any virtual sites?
- gmx_bool haveVsites;
+ bool haveVsites;
//! Do we have atoms that are frozen along 1 or 2 (not 3) dimensions?
- gmx_bool havePartiallyFrozenAtoms;
+ bool havePartiallyFrozenAtoms;
//! Number of perturbed atoms
int nPerturbed;
//! Number of atoms for which the mass is perturbed
//! Number of atoms for which the type is perturbed
int nTypePerturbed;
//! Do we have orientation restraints
- gmx_bool bOrires;
+ bool bOrires;
//! Atomic mass in A state
real* massA;
//! Atomic mass in B state
//! Van der Waals radius sigma^3 in the B state
real* sigma3B;
//! Is this atom perturbed
- gmx_bool* bPerturbed;
+ bool* bPerturbed;
//! Type of atom in the A state
int* typeA;
//! Type of atom in the B state
int* typeB;
//! Particle type
- unsigned short* ptype;
+ ParticleType* ptype;
//! Group index for temperature coupling
unsigned short* cTC;
//! Group index for energy matrix
unsigned short* cENER;
+ //! Group index for acceleration
+ unsigned short* cACC;
//! Group index for freezing
unsigned short* cFREEZE;
//! Group index for center of mass motion removal