Reimplement constant acceleration groups
[alexxy/gromacs.git] / src / gromacs / mdtypes / inputrec.h
index 404d486821de04b0195bae87c7f834cd1d7d12ae..4c01f0b93bf1c8ae4ef28c57d870be6bf5e449c1 100644 (file)
@@ -69,6 +69,8 @@ struct t_grpopts
     int ngtc = 0;
     //! Number of of Nose-Hoover chains per group
     int nhchainlength = 0;
+    //! Number of Accelerate groups
+    int ngacc;
     //! Number of Freeze groups
     int ngfrz = 0;
     //! Number of Energy groups
@@ -87,6 +89,8 @@ struct t_grpopts
     real** anneal_temp = nullptr;
     //! Tau coupling time
     real* tau_t = nullptr;
+    //! Acceleration per group
+    rvec* acceleration = nullptr;
     //! Whether the group will be frozen in each direction
     ivec* nFreeze = nullptr;
     //! Exclusions/tables of energy group pairs
@@ -146,11 +150,11 @@ struct t_lambda
     //! The specific soft-core function to use
     SoftcoreType softcoreFunction = SoftcoreType::Beutler;
     //! scale for the linearization point for the vdw interaction with gapsys soft-core
-    real scScaleLinpointLJGapsys = 0.85;
+    real scGapsysScaleLinpointLJ = 0.85;
     //! scale for the linearization point for the coulomb interaction with gapsys soft-core
-    real scScaleLinpointQGapsys = 0.3;
+    real scGapsysScaleLinpointQ = 0.3;
     //! lower bound for c12/c6 in gapsys soft-core
-    real scSigmaLJGapsys = 0.3;
+    real scGapsysSigmaLJ = 0.3;
     //! Whether to print the dvdl term associated with this term; if it is not specified as separate, it is lumped with the FEP term
     gmx::EnumerationArray<FreeEnergyPerturbationCouplingType, bool> separate_dvdl;
     //! Whether to write a separate dhdl.xvg file note: NOT a gmx_bool, but an enum
@@ -566,7 +570,7 @@ struct t_inputrec // NOLINT (clang-analyzer-optin.performance.Padding)
     bool bAdress = false;
     //! Whether twin-range scheme is active - always false if a valid .tpr was read
     bool useTwinRange = false;
-    //! Whether we have constant acceleration - removed in GROMACS 2022
+    //! Whether we have constant acceleration
     bool useConstantAcceleration = false;
 
     //! KVT object that contains input parameters converted to the new style.