Problem of the function 'do_constraint' in file pull.c
I have frequently used pull code of GROMACS with constraint and distance geometry.
Recently, I got a chance to take a look at the source code of 'do_constraint' function and think that there is an error for the iteration for shake algorithm.
(i.e. "while (!bConverged && niter < max_iter)" loop)
Once the last constraint group satisfies the given constraint, the current code stops the iteration even if the rest groups don't satisfy the given constraints. (I tested this for distance geometry at least, but I think that direction, direction_periodic and cylinder geometries have the same problem.)
This problem cannnot be ignored if we have multiple constraint groups.
Please double-check and address this issue to the next version of GROMACS.
#1 Updated by Mark Abraham almost 10 years ago
- Assignee set to Berk Hess
- Target version changed from 4.5.1 to git master
- Affected version - extra info set to 4.5.3
This looks like it's been broken for a few years. As Yong says, the iteration will terminate whenever the final constraint group sets
bConverged = TRUE, without reference to the status of other groups.