[gmx-developers] Recalculating forces every N steps

Alexander Björling alex.bjorling at gmail.com
Thu Feb 6 15:37:10 CET 2014

> > You should be able to use the force flags, I think. These encode what
> > needs to be done every step (e.g. NS step or not, energy or
> > force-only), it gets set in do_md and passed to do_force.
> That's only the easy part.
> Then you need to use a multiple timestep integrator. We have such an
> integrator, but it's currently linked to twin-range non-bonded
> interactions. You would need to modify some control code to make it work
> on your potential. The essential function is combine_forces in
> mdlib/update.c which combines the fast and slow forces for the integrator.

So I set the flag in do_md (considering bTwinRange and do_per_step), then
check it in do_force_lowlevel to decide whether or not to call my new code.
And then I need to store the forces and use them in combine_forces. Is that
the gist of it?

>> Cheers,
>> --
>> Szil?rd
>> On Wed, Feb 5, 2014 at 12:51 PM, Alexander Bj?rling
>> <alex.bjorling at gmail.com> wrote:
>>> Hi,
>>> Our new bonded interaction (at https://gerrit.gromacs.org/#/c/2659/) is
>>> expensive to evaluate and gives rise to a force which varies slowly in
>>> I'd like these forces to only be updated every N steps and to remain
>>> constant in between. What is the proper way to achieve this?
>>> Best,
>>> Alex
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20140206/19dc898a/attachment.html>

More information about the gromacs.org_gmx-developers mailing list