AMBER Archive (2006)

Subject: Re: AMBER: PTRAJ generating wrong dihedral angles

From: Thomas E. Cheatham, III (
Date: Tue Jan 10 2006 - 13:42:42 CST

> However, on comparing the ptraj calculated dihedral angles to those obtained
> from VMD I noticed substantial differences. Indeed, it appears that the
> ptraj derived dihedrals are wildly wrong.

As you might have imagined, we tested the dihedral routine prior to
releasing it which suggests that something else is funny, either with
respect to the coordinates, atom selection or something else.

What version of ptraj are you running?

Just to check, I created a small blocked peptide (ACE-ALA-ALA-NME), ran
short GB dynamics and then calculated phi/psi and matched the results to
those calculated with Midas-Plus. The results agreed. So, the question
is why are you getting funny values?

(1) Note that (unless you are offset by one intentionally) unless you have
a blocking residue (like an acetyl or ACE) there is no phi for the first
residue as the definition is C-1, N, CA, C (in contrast to what the
ptraj tutorial says) so that for residue 11 you would want:

  dihedral phi_11 :10_at_C :11_at_N :11_at_CA :11_at_C out __phi_11

(2) Are you sure that the coordinates being read in and the prmtop

You can check this by:

  ptraj << EOF
  trajin parm.coords
  trajout test_pdb pdb

and then look at the resulting pdb file to see if it makes sense. Also,
if there is a mismatch between the number of coordinates read in from the
PDB and what ptraj expects, a warning is printed to the ptraj output.

(3) Are you sure the atom selections were recognized? You can see this by
looking at the output:

  PTRAJ: dihedral phi2 :1_at_C :2_at_N :2_at_CA :2_at_C out phi2.dat
  Mask [:1_at_C] represents 1 atoms
  Mask [:2_at_N] represents 1 atoms
  Mask [:2_at_CA] represents 1 atoms
  Mask [:2_at_C] represents 1 atoms


    1> DIHEDRAL: saved to array named phi2
        Atom selection 1 is :1_at_C
        Atom selection 2 is :2_at_N
        Atom selection 3 is :2_at_CA
        Atom selection 4 is :2_at_C
        Data will be dumped to a file named phi2.dat

(4) Another way to test is to simply build a default peptide with LEaP.
If coordinates are not specified, LEaP builds an extended (fully beta)
peptide with angles very close to 180.0 for phi/psi (which you can compare
with ptraj and vmd)

  tleap -f $AMBERHOME/dat/leap/cmd/leaprc.ff94
  aa = sequence { ACE ALA ALA NME}
  saveamberparm aa prmtop inpcrd

  ptraj prmtop << EOF
  trajin inpcrd
  dihedral psi1 :1_at_C :2_at_N :2_at_CA :2_at_C out phi1.dat
  dihedral phi1 :2_at_N :2_at_CA :2_at_C :3_at_N out psi1.dat
  dihedral psi2 :2_at_C :3_at_N :3_at_CA :3_at_C out phi2.dat
  dihedral phi2 :3_at_N :3_at_CA :3_at_C :4_at_N out psi2.dat

  head *.dat
  ==> phi1.dat <==
        1.00 -179.999776
  ==> psi1.dat <==
        1.00 179.999921
  ==> phi2.dat <==
        1.00 -179.999769
  ==> psi2.dat <==
        1.00 179.999923

If you try this simple test and it doesn't work, please let me know what
version of the ptraj program you are using (i.e. off the WWW version 6.?
or integrated with what version of AMBER) and I can try to track it down.


\-/ Thomas E. Cheatham, III (Assistant Professor) College of Pharmacy
-/- Departments of Med. Chem. and of Pharmaceutics and Pharm. Chem.
/-\ Adjunct Asst Prof of Bioeng.; Center for High Performance Computing
\-/ University of Utah, 30 S 2000 E, SH 201, Salt Lake City, UT 84112
/-\ (801) 587-9652; FAX: (801) 585-9119
\-/ BPRP295A
The AMBER Mail Reflector
To post, send mail to
To unsubscribe, send "unsubscribe amber" to