[gmx-developers] energies from previous step used for hamiltonian replica exchange evaluation?
Floris Buelens
floris_buelens at yahoo.com
Tue Jun 10 14:56:10 CEST 2014
Hi,
While trying to evaluate Hamiltonian replica exchange probabilities 'offline', e.g. not at runtime but from checkpoint files, I think I might have run into an inconsistency in how they're evaluated in Gromacs. My worry is that exchange probabilities are calculated at the very end of the MD step loop, after update() has been called. This would mean that the exchange criterion is evaluated using energies from step x, but coordinates from step x+1.
If I've got this right, the strictly correct way would be to evaluate replica exchanges before update() is called, and then to recalculate the energies and forces where the replica exchange attempt was successful (since they were calculated according to a different U(x) and are strictly no longer valid) - and only then to call update(). Or equivalently to implement hybrid MC/MD, where x MD steps are followed by a single MC step, where the exchange move is either accepted or rejected based on a fresh energy evaluation.
Am I missing something?
I had a look at replica exchange probabilities between successive steps and predictably the correlation is very high, but some of the deviations are not so small (some sample data pasted in below).
thanks,
Floris
p(n) p(n+1)
0.0080 0.0102
1.0000 1.0000
0.0137 0.0142
0.7724 0.6141
0.0418 0.0619
0.0731 0.0859
0.2771 0.2374
0.0092 0.0130
0.3064 0.2375
0.0804 0.0770
0.0349 0.0325
1.0000 1.0000
0.0506 0.0718
0.1385 0.2349
0.0003 0.0004
0.9125 0.8968
0.0000 0.0000
0.7520 0.7820
0.0116 0.0124
1.0000 0.8525
0.2255 0.2747
0.0112 0.0130
0.0241 0.0230
1.0000 1.0000
0.0015 0.0010
0.0018 0.0027
0.1365 0.2044
1.0000 1.0000
0.0104 0.0062
0.0238 0.0420
0.4723 0.5447
More information about the gromacs.org_gmx-developers
mailing list