[gmx-users] Trajectory protonation and inter proton distance calculation

Johannes Beck johannes.beck at tum.de
Wed Aug 18 18:32:28 CEST 2010


Dear GROMACS users,

I try to read inter-proton distances from an MD trajectory (GROMACS 
4.0.5, ffG53a6) of a peptide. As many distances referring to HAs, HBs 
etc. are to be evaluated for comparison with NMR distance restraints, I 
tried to use protonate to add all protons to the peptide trajectory (not 
to the solvent which is DMSO).

Both, protonation and evaluation of distances from the (putatively) 
protonated trajectory brought me into some trouble.

For protonate the GROMACS manual suggests the following:
If an index file is specified, please note that the atom numbers should 
correspond to the protonated state.

However, if the number of atoms in the corresponding index file group is 
equal to the total number of atoms in the protonated peptide (124 atoms 
in my case), protonate fails as follows:



--------------

 > protonate -s 65300.gro -f md.xtc -n ../Index_protonated.ndx -o 
md_protonated.xtc
                         :-)  G  R  O  M  A  C  S  (-:

              GROningen Mixture of Alchemy and Childrens' Stories

                            :-)  VERSION 4.0.5  (-:


      Written by David van der Spoel, Erik Lindahl, Berk Hess, and others.
       Copyright (c) 1991-2000, University of Groningen, The Netherlands.
             Copyright (c) 2001-2008, The GROMACS development team,
            check out http://www.gromacs.org for more information.

         This program is free software; you can redistribute it and/or
          modify it under the terms of the GNU General Public License
         as published by the Free Software Foundation; either version 2
             of the License, or (at your option) any later version.

                     :-)  protonate (double precision)  (-:

Option     Filename  Type         Description
------------------------------------------------------------
  -s      65300.gro  Input        Structure+mass(db): tpr tpb tpa gro 
g96 pdb
  -f         md.xtc  Input, Opt!  Trajectory: xtc trr trj gro g96 pdb cpt
  -n ../Index_protonated.ndx  Input, Opt!  Index file
  -o md_protonated.xtc  Output       Trajectory: xtc trr trj gro g96 pdb

Option       Type   Value   Description
------------------------------------------------------
-[no]h       bool   no      Print help info and quit
-nice        int    0       Set the nicelevel
-b           time   0       First frame (ps) to read from trajectory
-e           time   0       Last frame (ps) to read from trajectory
-dt          time   0       Only use frame when t MOD dt = first time (ps)

Select group to process:
Group     0 (         S33) has   124 elements
There is one group in the index
Reading frame       0 time    0.000
-------------------------------------------------------
Program protonate, VERSION 4.0.5
Source code file: protonate.c, line: 129

Fatal error:
An atom number in group S33 is larger than the number of atoms (82) in 
the coordinate file md.xtc
-------------------------------------------------------

"Boom Boom Boom Boom, I Want You in My Room" (Venga Boys)

----------------





when the number of Atoms in the corresponding index file group is 
reduced to the number present in the MD calculation, protonate runs 
properly as shown in the following:

----------------

 > protonate -s 65300.gro -f md.xtc -n ../Index_unprotonated.ndx -o 
md_protonated.xtc
                         :-)  G  R  O  M  A  C  S  (-:

               Gromacs Runs One Microsecond At Cannonball Speeds

                            :-)  VERSION 4.0.5  (-:


      Written by David van der Spoel, Erik Lindahl, Berk Hess, and others.
       Copyright (c) 1991-2000, University of Groningen, The Netherlands.
             Copyright (c) 2001-2008, The GROMACS development team,
            check out http://www.gromacs.org for more information.

         This program is free software; you can redistribute it and/or
          modify it under the terms of the GNU General Public License
         as published by the Free Software Foundation; either version 2
             of the License, or (at your option) any later version.

                     :-)  protonate (double precision)  (-:

Option     Filename  Type         Description
------------------------------------------------------------
  -s      65300.gro  Input        Structure+mass(db): tpr tpb tpa gro 
g96 pdb
  -f         md.xtc  Input, Opt!  Trajectory: xtc trr trj gro g96 pdb cpt
  -n ../Index_unprotonated.ndx  Input, Opt!  Index file
  -o md_protonated.xtc  Output       Trajectory: xtc trr trj gro g96 pdb

Option       Type   Value   Description
------------------------------------------------------
-[no]h       bool   no      Print help info and quit
-nice        int    0       Set the nicelevel
-b           time   0       First frame (ps) to read from trajectory
-e           time   0       Last frame (ps) to read from trajectory
-dt          time   0       Only use frame when t MOD dt = first time (ps)

Select group to process:
Group     0 (         S33) has    82 elements
There is one group in the index
Reading frame       0 time    0.000
Back Off! I just backed up md_protonated.xtc to ./#md_protonated.xtc.1#
Opening library file ffgmx2.hdb
Opening library file /usr/local/gromacs/share/gromacs/top/ffgmx2.atp
Atomtype 1
Opening library file /usr/local/gromacs/share/gromacs/top/ffgmx2-n.tdb
Opening library file /usr/local/gromacs/share/gromacs/top/ffgmx2-c.tdb
Reading frame  165000 time 165000.000

gcq#92: "Once Again Let Me Do This" (Urban Dance Squad)

-----------------

I wonder what is going wrong with protonate, when I use the number of 
atoms in the index file that corresponds to the protonated state. But as 
protonate produced a trajectory when the unprotonated index file was 
used, I decided to use this trajectory for distance calculations. This 
failed as shown next:

-----------------

 > g_dist -f md_protonated.xtc -n test.ndx -o test.xvg -s ../inmd.tpr
                         :-)  G  R  O  M  A  C  S  (-:

                       GRowing Old MAkes el Chrono Sweat

                            :-)  VERSION 4.0.5  (-:


      Written by David van der Spoel, Erik Lindahl, Berk Hess, and others.
       Copyright (c) 1991-2000, University of Groningen, The Netherlands.
             Copyright (c) 2001-2008, The GROMACS development team,
            check out http://www.gromacs.org for more information.

         This program is free software; you can redistribute it and/or
          modify it under the terms of the GNU General Public License
         as published by the Free Software Foundation; either version 2
             of the License, or (at your option) any later version.

                      :-)  g_dist (double precision)  (-:

Option     Filename  Type         Description
------------------------------------------------------------
  -f md_protonated.xtc  Input        Trajectory: xtc trr trj gro g96 pdb cpt
  -s    ../inmd.tpr  Input        Run input file: tpr tpb tpa
  -n       test.ndx  Input, Opt!  Index file
  -o       test.xvg  Output, Opt! xvgr/xmgr file
 -lt   lifetime.xvg  Output, Opt. xvgr/xmgr file

Option       Type   Value   Description
------------------------------------------------------
-[no]h       bool   no      Print help info and quit
-nice        int    19      Set the nicelevel
-b           time   0       First frame (ps) to read from trajectory
-e           time   0       Last frame (ps) to read from trajectory
-dt          time   0       Only use frame when t MOD dt = first time (ps)
-[no]xvgr    bool   yes     Add specific codes (legends etc.) in the output
                            xvg files for the xmgrace program
-dist        real   0       Print all atoms in group 2 closer than dist to
                            the center of mass of group 1

Reading file ../inmd.tpr, VERSION 4.0.5 (double precision)
Group     0 (         one) has     2 elements
There is one group in the index
There is one group in the index
Reading frame       0 time    0.000
Back Off! I just backed up test.xvg to ./#test.xvg.1#

-------------------------------------------------------
Program g_dist, VERSION 4.0.5
Source code file: mshift.c, line: 103

Fatal error:
Molecule in topology has atom numbers below and above natoms (128).
You are probably trying to use a trajectory which does not match the 
first 128 atoms of the run input file.
You can make a matching run input file with tpbconv.
-------------------------------------------------------

"All Work and No Play Makes Jack a Dull Boy" (The Shining)

------------------





the run input file used here (../inmd.tpr) is the one of the original MD 
run. Unfortunately, I did not manage to make a matching run input file 
using tpbconv. How could I do that?

Coordinates for individual timesteps extracted with g_traj from the 
original md.xtc and the putatively protonated md_protonated.xtc look the 
same. Both have the same number of atoms (non protonated state).

I wonder how I could get a properly protonated trajectory? The 
underlying MD calculation is currently running and will further run for 
some days. Could this maybe lead to the errors shown above.

I am grateful for any help!

Best regards,
Johannes






-- 
Johannes Beck
Institute for Advanced Study
Department Chemie
Technische Universität München
Lichtenbergstrasse 4
D-85747 Garching, Germany

Tel.: +49-(0)89-289-13760
Fax: +49-(0)89-289-13210
email: Johannes.Beck at tum.de




More information about the gromacs.org_gmx-users mailing list