Expanded ensemble changes.
authorMichael Shirts <michael.shirts@colorado.edu>
Fri, 1 Jan 2021 10:30:38 +0000 (10:30 +0000)
committerChristian Blau <cblau.mail@gmail.com>
Fri, 1 Jan 2021 10:30:38 +0000 (10:30 +0000)
commitb9d5324eb08e1a3a988648ba94e66856ec8fca4b
tree4294f74e9ae0cc7b2e6f1dd7c6f6214ba108e8f0
parent2e34693f9de673c9967248973aecf206eee62588
Expanded ensemble changes.

Fix the numerical stability issues encountered with simulated tempering (also, would have occurred with any alchemical problem with large energy differences between states). In most cases, we simply flip the form around and compute an alternate form that always gives a 0 instead of infinity when the energy difference between states is too far in any direction. Also added a citation. Fixes https://gitlab.com/gromacs/gromacs/-/issues/3304

Note that there is no way to get good estimates for free energy differences between states with the very large differences between examples. One of the numerical stability fixes is not expected to be great, but it's not really relevant since nothing would work in this case; using Wang-Landau (i.e. visitation based approaches) rather than metropolis style methods (energy difference analysis methods) is the only thing that works.
docs/release-notes/2020/2020.5.rst
src/gromacs/mdlib/expanded.cpp
src/gromacs/mdlib/expanded_internal.cpp [new file with mode: 0644]
src/gromacs/mdlib/expanded_internal.h [new file with mode: 0644]
src/gromacs/mdlib/tests/CMakeLists.txt
src/gromacs/mdlib/tests/expanded.cpp [new file with mode: 0644]