Applying external force to group of atoms

GROMACS version: 2018.6
GROMACS modification: Yes/No

Is there a way to apply a force to a group of atoms other than the pulling method (between two atoms)? Alternatively, how can we add a velocity to a group of atoms? Thank you.

Hi kyrstyno,

I don’t know if you can “impose” or add a given velocity to a group of atoms, but you can certainly add an external force (or rather acceleration) using non-equilibrium MD: https://manual.gromacs.org/documentation/5.1.2/user-guide/mdp-options.html.

The .mdp options you are looking for are acc-grps and accelerate.

Errata: you can impose a given velocity to a set of restrained atoms using free-energy. Beasically, you can interpolate between -r and -rb and tune delta-lambda to get the correct velocity. But I am not sure if that’s what you are aming for.

Thank you for pointing out the accelerate non-equilibrium MD function! I think that will work. While using accelerate, would it be necessary to use an NVE integrator?

No, quite the contrary I would say. You need to have a thermostat to dissipate the energy added by accelerate.

To follow up on this question, would I have to use a Berendsen pressure coupling scheme since using an acceleration group would mean that I am not in equilibrium and Parinello-Rahman will fail? Or is it still acceptable to use the Parinello Rahman barostat?

I don’t know, I have always run at constant volume with accelerate.

I see. Thank you so much for your advice. What range of values have you used for the accelerate package? In other words, with 0.1 nm/ps^2 acceleration in say the z direction, would you expect a vacuum layer to form in the system/ for the system to explode? This is some of what I have been seeing.

Additionally, I noticed that the accelerate package was removed from GROMACs 2022 but seemingly reinstated in the 2023 version. Is the major difference between the 2023 and 2021 accelerate packages supposed to be the speed of the simulations?

Hi,

What range of values have you used for the accelerate package? In other words, with 0.1 nm/ps^2 acceleration in say the z direction, would you expect a vacuum layer to form in the system/ for the system to explode? This is some of what I have been seeing.

I am not sure how to answer, since I don’t know the system you are simulating. I have mainly used accelerate to produce Poiseulle flows in systems consisting of a liquids confined between solid walls. I have been taking accelerate in a range roughly between 0.01 and 0.001 nm/ps^2.

Additionally, I noticed that the accelerate package was removed from GROMACs 2022 but seemingly reinstated in the 2023 version. Is the major difference between the 2023 and 2021 accelerate packages supposed to be the speed of the simulations?

Not really. The only ‘bug’ accelerate had in GMX2022 (which still has the feature, it’s just labelled as ‘deprecated’) was that the simulation didn’t output velocities, or any observable related to molecular velocities, in the .edr output. This has been fixed. The usage of accelerate is exactly the same.