Hydrogen Mass Repartitioning

Dear Prof @jalemkul ,

Is there any decrease in accuracy when “H mass repartitioning” is applied?

It seems to be a valuable option for efficiently doing the MD simulations. However, I haven’t seen people have used that option frequently in literature. Could this be due to it being a recently proposed thing (As I saw the date of the publication is 2021) or is there any significant accuracy decrease present?

Thank you!

A friend tested it on geometric properties of DNA and it seems to have virtually no effect. The recent implementation as an .mdp parameter in the 2024 versions also made it much more stable.

There was, however, this recent paper on the divergence between translational and rotational temperature of solvent molecules - nothing too drastic but certain properties can be affected, so mind where you apply it:

Dear All,

I am concerned that the mass-repartition-factor flag in the .mdp file is repartitioning the mass of water. I have two concerns with this:

(1) This is not needed as water bond lengths are handled by SETTLE.
(2) Previous work has shown that mass repartitioning the water dampens the dynamics of the solute

See Figures 6-7 of the above to see why we should not repartition water.

Can you please confirm that the mass-repartition-factor is working optimally by only repartitioning the non-water elements of the system.

Kind regards,
Billy

Hi Billy,

Looking at the Gromacs code for this feature:

it seems that atoms that are part of SETTLE are handled separately, and their masses are not altered. I agree it would be nice to have it stated explicitly in the documentation though.

Best,
Miłosz

No, no atoms are handled separately. All atoms with a mass less that the minimum mass time the factor are increased to that limit.

Oh I see - that’s just handling the H-H bonds, sorry I ran through it too fast.

That raises a good question though, should we distinguish between these strategies more clearly? I have an (arguably more naive) version implemented in Gromologist that just skips all molecules up to 5 atoms.

The implementation I made doesn’t care about any bonded interactions, apart from that the mass increase is taken from the bonded heavy atom.

That does not allow the user to only increase masses in the solute(s) and not in water. But I don’t know if that is a common use case.

I’m referring to the paper shared above, where there seem to be borderline-significant differences in kinetics between the two schemes:

Perhaps the differences are small enough to be ignored for most practical purposes, unless someone really tries to have precise validations.

Of course there are going to be kinetic differences: you are fiddling with the masses. But you anyhow loose kinetic information when changing some masses, so I wouldn’t worry about that. I think the question is if you can get faster, but still sufficiently accurate, sampling when not slowing down the water dynamics by not altering the masses in water. Mass repartitioning started, AFAIK, nearly 30 years ago in the group of Herman Berendsen when I was doing my PhD there. There we increased the masses a lot, also in water, to get to a timestep of 4 of 5 fs. But maybe you can get away with the normal masses in water with a 3 fs timestep.

Sure, fair point. We’ve been trying to track some instabilities with the standard .mdp repartitioning keyword + 4 fs these days, I’ll play around with these systems to see what works and what doesn’t.