Feature #632

Implementation of periodic improper dihedrals is incomplete

Added by Mark Abraham about 10 years ago. Updated about 8 years ago.

Target version:


src/kernel/convparm.c function assign_param() does not treat F_PIDIHS at all (see

src/gmxlib/ifunc.c array interaction_function should use eNR_IMPROPER for F_PIDIHS (see

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.

Associated revisions

Revision 4f2a07e3 (diff)
Added by Erik Lindahl about 8 years ago

Fixed flop-accounting for periodic improper dihedrals

Flops were incorrectly assigned as proper dihedrals.
Fixes #632.

Change-Id: Ifda09b9a0e6575c5f6f19f3c55979804fe1dc2eb


#1 Updated by Rossen Apostolov over 9 years ago

Do we want this fixed for 4.5.5?

#2 Updated by Rossen Apostolov almost 9 years ago

  • Category set to mdrun
  • Target version set to 4.5.6

#3 Updated by Roland Schulz over 8 years ago

  • Tracker changed from Bug to Feature

Changing to feature. Don't think it is a bug because implementation is missing and one gets an error (OK error message could be nicer but probably not a big deal). Please change back if you disagree.

#4 Updated by Szilárd Páll about 8 years ago

No features whatsoever can go into 4.5.x, so I'm tentatively bumping this to 4.6. However, unless there is someone to contribute the code asap, this could get bumped to 5.0.

#5 Updated by Szilárd Páll about 8 years ago

  • Target version changed from 4.5.6 to 4.6

#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 for the patch.

#7 Updated by Erik Lindahl about 8 years ago

See #1104 for the separate issue on dihedral restraints.

#8 Updated by Erik Lindahl about 8 years ago

  • Status changed from In Progress to Closed

Also available in: Atom PDF