Difference between revisions of "Perm-prmtop.py"

From CUC3
Jump to navigation Jump to search
import>Csw34
import>Em427
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
'''What is it and why is it important?'''
 
'''What is it and why is it important?'''
   
We have noticed that the AMBER9 potential is not symmetric with respect to permutations of chemically equivalent atoms e.g. hydrogen atoms in the amino group of Arginine or oxygen atoms in the COO group of Glutamate. The source of the problem is the definition of IMPROPER angles in AMBER. Correction of the appropriate source code in AMBER9 is not a trivial job because the atom order is changed many times and sorted according to some rules that speed up the LEaP program while it creates the topology file. Instead of this we have found a suitable order of atoms for all IMPROPER angles that can correct the definition in the topology file afterwards.
+
We have noticed that the AMBER9 potential is not symmetric with respect to permutations of identical atoms e.g. hydrogen atoms in the amino group of Arginine or oxygen atoms in the carboxyl group of Glutamate. The source of the problem is the definition of IMPROPER angles in AMBER. Correction of the appropriate source code in AMBER9 is not a trivial job because the atom order is changed many times and sorted according to some rules that speed up the LEaP program while it creates the topology file. Instead of this we have found a suitable order of atoms for all IMPROPER angles that can correct the definition in the topology file afterwards.
   
 
For the new topology file, the energy is invariant to permutation of the aforementioned atoms or groups :)
 
For the new topology file, the energy is invariant to permutation of the aforementioned atoms or groups :)
Line 8: Line 8:
 
'''How does it work?'''
 
'''How does it work?'''
   
Program perm-prmtop.py, written in Python reads topology file created by LEaP, finds wrongly defined IMPROPER angles, changes the order of appropriate atoms and finally writes the new topology file.
+
The program ''perm-prmtop.py'' written in Python reads topology file created by LEaP, finds wrongly defined IMPROPER angles, changes the order of appropriate atoms and finally writes the new topology file.
   
   
Line 16: Line 16:
   
   
'''Where you can find it?'''
+
'''Where can I find it?'''
   
 
The program can be downloaded [http://www-wales.ch.cam.ac.uk/software.html here].
 
The program can be downloaded [http://www-wales.ch.cam.ac.uk/software.html here].
   
   
'''What do you need to remember?'''
+
'''What do I need to remember?'''
   
1. The program works for amino and nucleic acid residues present in the following AMBER9 libraries: all_amino02.lib, all_aminont02.lib, all_aminoct02.lib, all_nucleic02.lib and should be modified if some other residues need to be corrected.
+
1. The program works for amino and nucleic acid residues present in the ff02 and ff03 AMBER force fields and should be modified if some other residues need to be corrected.
   
2. The names of terminal amino acid residues in the initial topology file created by LEaP are converted to three character format, e.g. NPRO -> PRO therefore you need to rename them before using perm-prmtop.py, e.g. PRO -> NPRO, LYS -> CLYS. Otherwise these residues will be treated as non terminal ones and e.g. the IMPROPER angle defining terminal the geometry of the COO- group will still be wrong.
+
2. The names of terminal amino acid residues in the initial topology file created by LEaP are converted to three character format, e.g. NPRO -> PRO therefore you need to rename them before using perm-prmtop.py, e.g. PRO -> NPRO, LYS -> CLYS. Otherwise these residues will be treated as non terminal ones and e.g. the IMPROPER angle defining the geometry of the terminal COO- group will still be wrong.
   
3. The format of topology file is fixed and for each residue name there are four spaces reserved. If you add C or N to get name of terminal residue, remember to remove a blank space before subsequent name. Here is an example:
+
3. The format of the topology file is fixed and for each residue name there are four spaces reserved. If you add C or N to get name of terminal residue, remember to remove a blank space before subsequent name. Here is an example:
   
 
line from original topology file created by LEaP:
 
line from original topology file created by LEaP:
Line 33: Line 33:
 
the same line after modification:
 
the same line after modification:
 
NPROARG GLY SER HIE MET ARG CLYSWAT WAT WAT WAT
 
NPROARG GLY SER HIE MET ARG CLYSWAT WAT WAT WAT
  +
  +
4. You might need to change the path that links to the AMBER libraries, this is right at the start of the script.
  +
  +
  +
'''Important'''
  +
  +
The script is available also in version for united atom force field, however in this case more changes is necessary including modifications of AMBER libraries, so we suggest using all-atom representation unless you are really sure that united-atom ff is obligatory.

Latest revision as of 09:19, 20 August 2009

What is it and why is it important?

We have noticed that the AMBER9 potential is not symmetric with respect to permutations of identical atoms e.g. hydrogen atoms in the amino group of Arginine or oxygen atoms in the carboxyl group of Glutamate. The source of the problem is the definition of IMPROPER angles in AMBER. Correction of the appropriate source code in AMBER9 is not a trivial job because the atom order is changed many times and sorted according to some rules that speed up the LEaP program while it creates the topology file. Instead of this we have found a suitable order of atoms for all IMPROPER angles that can correct the definition in the topology file afterwards.

For the new topology file, the energy is invariant to permutation of the aforementioned atoms or groups :)


How does it work?

The program perm-prmtop.py written in Python reads topology file created by LEaP, finds wrongly defined IMPROPER angles, changes the order of appropriate atoms and finally writes the new topology file.


How do I use it?

./perm-prmtop.py  name-of-topology-file  name-of-new-topology-file


Where can I find it?

The program can be downloaded here.


What do I need to remember?

1. The program works for amino and nucleic acid residues present in the ff02 and ff03 AMBER force fields and should be modified if some other residues need to be corrected.

2. The names of terminal amino acid residues in the initial topology file created by LEaP are converted to three character format, e.g. NPRO -> PRO therefore you need to rename them before using perm-prmtop.py, e.g. PRO -> NPRO, LYS -> CLYS. Otherwise these residues will be treated as non terminal ones and e.g. the IMPROPER angle defining the geometry of the terminal COO- group will still be wrong.

3. The format of the topology file is fixed and for each residue name there are four spaces reserved. If you add C or N to get name of terminal residue, remember to remove a blank space before subsequent name. Here is an example:

line from original topology file created by LEaP:

           PRO ARG GLY SER HIE MET ARG LYS WAT WAT WAT WAT

the same line after modification:

           NPROARG GLY SER HIE MET ARG CLYSWAT WAT WAT WAT

4. You might need to change the path that links to the AMBER libraries, this is right at the start of the script.


Important

The script is available also in version for united atom force field, however in this case more changes is necessary including modifications of AMBER libraries, so we suggest using all-atom representation unless you are really sure that united-atom ff is obligatory.