Implementation of periodic improper dihedrals is incomplete
src/kernel/convparm.c function assign_param() does not treat F_PIDIHS at all (see http://lists.gromacs.org/pipermail/gmx-users/2011-January/057316.html)
src/gmxlib/ifunc.c array interaction_function should use eNR_IMPROPER for F_PIDIHS (see http://lists.gromacs.org/pipermail/gmx-users/2010-August/053262.html)
There may be other issues for all I know.
Erik's 2002 umbrella commit f251dc006328cb69b7844dc02c24a107e522376f notes that the implementation of periodic improper dihedrals was incomplete then, and it looks like it still is.
#6 Updated by Erik Lindahl about 8 years ago
- Status changed from New to In Progress
This report covers three separate and only partially related issues. First, as far as I can tell from the source code the only issue for normal periodic improper dihedrals was that the flopcount was not assigned correctly, but ended up in the proper torsions category.
Second, the parameters should be converted correctly in convparm.c since it is handled just as a proper dihedral, which uses the same parameters.
Finally, the "incomplete implementation" refers to dihedral restraints, which is completely unrelated to the two issues above. For that reason I think it's better to create a separate feature for that, but that will have 5.0 as a target.
See https://gerrit.gromacs.org/1996 for the patch.