Settings of `ReplicaExchangeType::Lambda` is mistakenly routed to `ReplicaExchangeType::TemperatureLambda`.
Summary
When replica exchange is enabled in the lambda-only mode, all reference temperatures ref-t
are the same among replicas.
However, the log tells that another branch temperature+lambda
is used.
Replica exchange in temperature and lambda state
298.1 298.1 298.1 298.1
0 1 2 3
GROMACS version
2021, 2022, etc.
Steps to reproduce
Suppose there are 4 simulation replicas with the MDP option snippet as below:
; Temperature coupling
tcoupl = V-rescale
ref-t = 298.1 ; Values are the same in other MDP option files
; Free energy control stuff
free_energy = yes
init_lambda_state = 0 ; Values in other MDP option files can be 1,2,3
Then, launch multiple simulations with the following command:
gmx mdrun -multidir 0 1 2 3 -replex 200 ...
What is the current bug behavior?
The log tells that another branch temperature+lambda
is used.
Replica exchange in temperature and lambda state
298.1 298.1 298.1 298.1
0 1 2 3
What did you expect the correct behavior to be?
Here are the log that we expect:
Replica exchange in lambda state
0 1 2 3
Possible fixes
Fix comparison of float numbers in function repl_quantity.
Edited by Shaochen Shi