Re: [AMBER] setBond

From: Jason Swails <>
Date: Tue, 3 Dec 2013 17:51:20 -0500

On Tue, Dec 3, 2013 at 2:43 PM, Aronica, Pietro <> wrote:

> The manipulations are done by removing specific dihedrals with the
> deleteDihedrals command, so that atoms that should not see each other but
> do because of their 1,4 connectivity have this interaction deleted.
> Using the first fix outlined in the previous email, the returned prmtop is
> unchanged (save, of course, for the timestamp), while the second one gives
> the same exclusion list reshuffling as with my original command.

Agh. I see what's happening. The problem is actually in deleteDihedrals.
 Each atom keeps a record of all other atoms it forms a bond, angle, and
dihedral with, and deleteDihedral only removes the dihedrals from the list
of all dihedrals. Since the exclusions are determined from each atoms'
record of bond/angle/dihedral partners (and deleteDihedral does not touch
this), the exclusions are not calculated correctly following deleteDihedral.

The setBond commands were triggering a 'recalculating' of the topology
which corrected these exclusions from the new topology file (that lacked
the dihedrals you deleted and so did not appear in the list of dihedral
atoms for the atoms in that dihedral). That's why the second test (which
just forces the topology to be 'recalculated') gives the same exclusion
list as the setBond commands (since setBond triggers the remake_parm()

A workaround before I release a fix for this is to do what you've been
doing: -p <prmtop> << EOF
deleteDihedral [options]
outparm new.prmtop

Then fix the exclusion list -e -p new.prmtop << EOF
outparm new.prmtop

and use this 'fixed' new.prmtop for your later tasks.

Thanks for the report,

Jason M. Swails
Rutgers University
Postdoctoral Researcher
AMBER mailing list
Received on Tue Dec 03 2013 - 15:00:03 PST
Custom Search