About MTS with SD integrator

GROMACS version: 2022.3
GROMACS modification: Yes

Hello, Gromacs developers,

In a previous merge request, it was mentioned that the SD integrator requires different damping coefficients for the various MTS forces:
(Disable MTS with SD integrator (!822) · Merge requests · GROMACS / GROMACS · GitLab)
Otherwise, it may cause temperature control issues in certain systems:
(issues/3775)
According to the comments, the temperature rise may occur because: “An increase in temperature at the fluctuation-dissipation balance is not met.”
(issues/5053)

Recently, while conducting Free Energy (FE) calculations, we found that SD performs better in terms of stability for constraints (i.e., it’s less prone to LINCS warnings or breakdowns). In contrast, using the MD integrator can lead to instability. We are also attempting to accelerate long-range nonbonded forces using MTS (without applying MTS to other forces):

mts                     = yes  
mts-levels              = 2  
mts-level2-forces       = longrange-nonbonded  
mts-level2-factor       = 2  

We would like to use the combination of SD + MTS (longrange-nonbonded, factor=2) to ensure the stability of our FE calculations.

We’ve tested this combination on multiple FE systems, monitoring the transient temperature fluctuations over time, and we observed that:

  • The temperature fluctuates stably without gradual increase.
  • The temperature’s average is 0.4K higher compared to SD simulations without MTS, but the average is stable across multiple systems.

Thus, we have a few questions:

  • Given that the system’s temperature stabilizes within a reasonable range during our simulations, can we consider the SD + MTS (longrange-nonbonded, factor=2) combination to be valid? Specifically, does the current damping coefficient ensure that friction is controlling the temperature, leading to correct sampling?

Additionally, we would like to explore potential improvements to this issue and have some theoretical questions:

  • We assume that F_slow (4fs) contains only the long-range coul force (PME), and other forces are contained in F_fast (2fs).
  • Are the damping coefficients referring to the friction coefficient in the friction term, i.e., α in eq. (116) from the stochastic dynamics documentation?
  • Regarding the implementation, are the following steps correct?
    • First, decompose the force F into F_fast and F_slow​ (longrange-nonbonded is F_slow, MTS factor=2 as an example; this generalizes to multiple force groups).
    • Calculate the velocity updates v′ and delta_v corresponding to each force.
    • Apply different friction coefficients α to the delta_v terms for each force. The difference in α would only affect the timestep (δt) used in the expression exp⁡(−γδt), where δt should be the timestep corresponding to each force (e.g., F_slow =4 fs, F_fast =2 fs), but γ remains the same.
    • Finally, sum the two sets of v′ and delta_v to update the positions and velocities.
  • Are there any relevant papers we can refer to for further understanding?

Thank you so much for any assistance you can provide!

I don’t understand what you mean with this. MTS assumes a decomposition is slow and fast varying forces. Currently GROMACS only supports two levels.

Yes.

I have never looked into multiple time stepping with an SD integrator. This is the usual setup for NAMD. You could look what integrator they use.

For the impulse-type integrator in GROMACS, I suppose a straighforward way to make MTS work is to only apply noise and friction at the longest time step.

Thanks for Hess’s response!

Apologies for not phrasing this clearly earlier:
We assume that F_slow (4 fs) only includes long-range Coulomb force (PME), while other forces are included in F_fast (2 fs).
This has been corrected in the original question.

Thanks for confirming the definition of the damping coefficients. We will refer to NAMD again.

Regarding your mention of the impulse-type integrator in Gromacs, does the SD integrator here refer to an impulse-type integrator?

And I still have some questions based on your explanation:

  • In fact, as you mentioned, “only apply noise and friction at the longest time step” I understand there should also be a distinction in the friction coefficients for F_slow and F_fast at the longest time step (slow step), is that correct?

  • So, with the current Gromacs setup (SD + MTS), both the fast and slow steps use dt=2 fs (the fast timestep) for the friction coefficient calculation? Can we assume that if the temperature control is functioning properly, this will yield the correct results?

  • Additionally, if noise and friction are applied at the shorter time steps as well (with the friction coefficient recalculated according to the short time step), would this also be possible? I referred to the paper by Skeel and Izaguirre, “An impulse integrator for Langevin dynamics” (Molecular Physics 100.24, 2002), and Equation (72) seems to suggest that both F_fast and F_slow apply friction, but the friction coefficient is determined by the corresponding timestep for each force.

Thanks! :)

I didn’t think my first answer through sufficiently. Looking at the equations now, I think MTS can be applied “trivially”. In the formulation of SD used in GROMACS, the friction is applied to the velocity, not to the forces. So no additional friction parameters are required.

Thank you Hess for your checking and identifying this.

Yes, the friction in SD acts on delta_v, rather than directly on the force, which is somewhat different from the approach used in (Molecular Physics 100.24, 2002).

We will continue to observe and experiment with the algorithm. Thanks again!