Preparing an AMBER topology file for a protein system
When you want to use AMBER, either on its own to run MD, or interfaced with any of the group software (GMIN, OPTIM or PATHSAMPLE), you need to have two files at your disposal. These are the topology file (which describes the atom types, connectivity of atoms, force field parameters for angles, etc.) and the coordinate file (which shockingly defines the coordinates of the atoms in your system).
To start work with AMBER you need files defining your system (topology and coordinates) and driving file with keyword defining conditions for molecular dynamics. The detailed tutorial referring specially to point 3 (how to get the topology and coordinate files for system with ligand) is presented in tutorial Preparing an AMBER topology file for a protein plus ligand system.
It is important that one uses the symmetrised version of the parameters that Edyta work. These are available via svn in AMBERTOOLS. When calling tleap it is important that you are using the version in AMBERTOOLS which utilises the correct version of these parameters. If not one could have some unfortunate problems when making connective with OPTIM and PATHSAMPLE. Below you can find simple LEaP scripts generating topology and coordinate files for three exemplary cases. In each case you need to run ONE of the following commands:
xleap -f leap.in xleap < leap.in tleap -f leap.in tleap < leap.in
where leap.in is a name of the script.
xleap is a graphical version of tleap therefore sometimes is easier to call tleap in the form of a script.
1. Generate topology and coordinate files.
You need to build a peptide from a sequence:
source leaprc.ff03 mol = sequence {NALA ALA ALA ALA ALA ALA ALA CALA} saveamberparm mol mol.prmtop mol.inpcrd savepdb mol mol.pdb quit
or you can build a protein from an existing pdb file. There are two energy function that are most likely to be used an ALL-ATOM model or an UNITED ATOM model. For the ALL-ATOM model source leaprc.ff03 or an UNITED ATOM model source leaprc.ff03ua
source leaprc.ff03 mol=loadpdb protein.pdb. saveamberparm mol mol.prmtop mol.inpcrd savepdb mol mol.pdb quit
On the beginning LEaP is reading force field parameters and AMBER libraries, and finally three files are produced: mol.prmtop with topology, mol.inpcrd with coordinates and mol.pdb which is PDB file that you can use to visualize the protein.
NOTE: Remove all hydrogens belonging to amino acid and nucleic residues, LEaP will add them according to AMBER libraries. In case of wrong atom names or atoms types or residue names, you will find appropriate warnings in leap.log file which is output file from LEaP.
NOTE: In case you want to use igb=8 implicit solvent model, add the following line to your leap.in file. (For more details, Ctrl+F igb=8 in AMBER manual)
set default PBradii mbondi3
2. Rename termini.
Now we have an AMBER topology file but there are a few changes we need to make before we can use it. The first is necessary and the second, while not essential - is highly recommended. The first step involves renaming the terminal residues.
When tleap created the topology file, it also renames the terminal residues, something we didn't want it to do! Open up 2hu4.top in an editor and look for the section that begins with:
%FLAG RESIDUE_LABEL %FORMAT(20a4)
This is where the sequence is defined, however the N and C terminal residues should be named differently i.e. in our case VAL should be NVAL and ILE should be CILE. This edit isn't quite that simple however as the topology file uses a fixed format with four spaces per residue so you need to remove a blank space when you edit the name. e.g.
One can use a simpile sed command to swap the sequence out file the below commands. They need to be specified by the unique sequence tag. sed 's/^GLN GLN ASN ALA/NGLNGLN ASN ALA/' mol.prmtop > mol.prmtop.temp sed 's/LEU ASN ASP ALA/LEU ASN ASP CALA/' mol.prmtop.temp > mol.prmtop
3. Symmeterize topology file.
If you followed the suggestions, you should have the scripts installed under svn already in the directory /home/$USER/svn/SCRIPTS/AMBER/symmetrise_prmtop.
If you use the ALL-ATOM function you need to use a command like:
/home/$USER/svn/SCRIPTS/AMBER/symmetrise_prmtop/perm-prmtop.ff03.py mol.prmtop.old mol.prmtop
If you use the UNITED-ATOM function you need to use a command like:
/home/$USER/svn/SCRIPTS/AMBER/symmetrise_prmtop/perm-prmtop.ff03us.py mol.prmtop.old mol.prmtop
4. For OPTIM and PATHSAMPLE generate a perm.allow file.
If you followed the suggestions, you should have the scripts installed under svn already in the directory /home/$USER/svn/SCRIPTS/make_perm.allow.
If you use the ALL-ATOM function you need to use a command like:
/home/$USER/svn/SCRIPTS/make_perm.allow/perm-pdb.py mol.prmtop.old mol.prmtop
If you use the UNITED-ATOM function you need to use a command like:
/home/$USER/svn/SCRIPTS/make_perm.allow/perm-pdb-ua.py mol.prmtop.old mol.prmtop