Free-energy now works with the Verlet scheme
authorBerk Hess <hess@kth.se>
Tue, 26 Nov 2013 07:52:16 +0000 (08:52 +0100)
committerGerrit Code Review <gerrit@gerrit.gromacs.org>
Wed, 26 Feb 2014 18:10:35 +0000 (19:10 +0100)
commit99aa704d61062b0ef46cf00a7655ab759651e2ea
tree578a06b2fc4720ab833ac5f540a82ed4173548ea
parentb5879195b080520c294d76354f13ed373725c196
Free-energy now works with the Verlet scheme

Implemented perturbed non-bonded interactions with the Verlet
by masking them from the nbnxn pair lists and storing them in an
old-fashioned group neighbor list. This way we keep a single
free energy kernel.
The free energy kernel uses OpenMP atomic for reductions.

Also fixed grompp setting nstcalcenergy=0 with nstenergy=0.

Change-Id: I5a6a7e84b46e06250d141e2e08cb3a11077cddab
21 files changed:
src/gromacs/gmxlib/nonbonded/nb_free_energy.c
src/gromacs/gmxpreprocess/readir.c
src/gromacs/legacyheaders/nonbonded.h
src/gromacs/legacyheaders/ns.h
src/gromacs/legacyheaders/types/enums.h
src/gromacs/legacyheaders/types/forcerec.h
src/gromacs/legacyheaders/types/nblist.h
src/gromacs/legacyheaders/types/nbnxn_pairlist.h
src/gromacs/mdlib/force.c
src/gromacs/mdlib/forcerec.c
src/gromacs/mdlib/genborn.c
src/gromacs/mdlib/nbnxn_atomdata.c
src/gromacs/mdlib/nbnxn_consts.h
src/gromacs/mdlib/nbnxn_internal.h
src/gromacs/mdlib/nbnxn_search.c
src/gromacs/mdlib/nbnxn_search.h
src/gromacs/mdlib/ns.c
src/gromacs/mdlib/sim_util.c
src/programs/mdrun/md.c
src/programs/mdrun/pme_loadbal.c
src/programs/mdrun/runner.c