Topology files

Attention: Please upload new topology files here.

Topology File

A topology file contains the physical and chemical parameters and bond information used by MCCE for the distinct residues and ligands. Among the parameters defined in these files we have:

- heavy atom connectivity
- number
- position of hydrogens
- rotamer building rules
- protonation and redox states
- atomic partial charges
- conformer reaction field energy in solution for each ionization state
- solution pKa (pKa, sol)
- solution electrochemical midpoint potential (Em, sol).

Topology Parameters

Topology parameters are defined in *.tpl files.
The general syntax of a topology parameter is:

Topology File Columns

1234567890123456789012345
~~~~~~~~|~~~~~|~~~~|~~~~~
ParamNam|Res  |Atom|Param

column 1-8 name of the parameter
column 9 left blank
column 10-14 residue or conformer name
column 15 left blank
column 16-19 atom name
column 20 left blank
column 21- formatted parameter

List of topology parameters:

  • CONFLIST residue name, ionization states included for this residue
  • NATOM number of atoms for each ionization state
  • IATOM,ATOMNAME atom names for each ionization state
  • PKA, EM solution pka and redox potential
  • RXN solution reaction field energy
  • CONNECT connectivity
  • RADIUS radius for each atom
  • CHARGE atomic partial charge
  • TORSION Torsion energies and how to build missing atoms
  • VDW_RAD VDW radius
  • VDW_ESP VDW potential

A table of topology files with short description


00always_needed.tpl Global parameters
7MQ.tpl Menaquinone
ALA.tpl Alanine
ARG.tpl Arginine
ASN.tpl Asparagine
ASP.tpl Aspartate
BCB.tpl Bacteriochlorophyl a
BCL.tpl Bacteriochlorophyl monomer
BCT.tpl bicarbonate
BDL.tpl Bacteriochlorophyl a
BKB.tpl Backbone
BPB.tpl Bacteriochlorophyl monomer
BPH.tpl Bacteriopheophytin
_CA.tpl Calcium
CL1.tpl Bacteriochlorophyl monomer
CLD.tpl acteriochlorophyl
_CL Chloride
CTR.tpl c-terminal
CUA.tpl CuA site
CUB.tpl CuB site
_CU.tpl Copper
CYD.tpl CYS making disulfide bond to another CYS
CYS.tpl Cysteine
dua.tpl di-copper site
fal.tpl
far.tpl Farnesyl
fe2.tpl ion
fme.tpl formylmethionyl
fs4.tpl ion-sulfur cluster
gln.tpl Glutamine
glu.tpl Glutamate
gly.tpl Glycine
ha0.tpl heme (no ligands, old)
ha3.tpl heme a3
hea.tpl heme a
heb.tpl heme (with one His ligand)
hem.tpl heme (no ligands, hard charge)
hib.tpl Backbone of HIS, used when HIS side chain is a ligand
hil.tpl neutral His with two proton positions
his.tpl Histidine
hli.tpl Histidine (one neutral conformation with proton on ND1
hmb.tpl heme b
hoh.tpl water
ile.tpl Isoleucine
lda.tpl AURYL DIMETHYLAMINE-NOXIDE
leu.tpl Leucine
lhg.tpl PHOSPHATIDYL-GLYCEROLE
lys.tpl Lysine
mel.tpl Methionine (no backbone charge)
_mg.tpl Magnesium
myg.tpl glucose
nh4.tpl ammonium ion
ns5.tpl DIHYDRO-NEUROSPORENE (temporary, no proton)
ntg.tpl CH2NH2
ntr.tpl n-terminal
oec.tpl oxygen evolving complex
paa.tpl propionate A
pdd.tpl propionate D
PEH.tpl a phospholipid
TPO.tpl PHOSPHOTHREONINE
PTR.tpl Phosphotyrosine
PHO.tpl pheophytin a
PL9.tpl Plastoquinone
pqn.tpl quinone
pro.tpl Proline
rsb.tpl
ser.tpl Serine
so4.tpl sulfate
thr.tpl Threonine
trp.tpl Tryptophan
tyf.tpl Tyrosine (with extra ionization states)
tyr.tpl Tyrosine
ubq.tpl ubiquinone
UNK.tpl backbone with CB
UQ2.tpl quinone
val.tpl Valine


A table of topology files for Hemes


han five-coordinate b heme with one His ligand and one water/hydroxyl ligand
hcs five-coordinate c heme with one His ligand and one water/hydroxyl ligand
hce bis-his c type, esp charge
hcn bis-his c type, nbo charge
hcq his-met c type, charge from F. Autenrieth, J. Comp. Chem. 2004
hec his-met c type, hard charge

A table of topology files for 1,4-Benzoquinone

The following applies to both Q and Q-

bzq unsubstituted BQ
2mb one-methyl BQ
23d 2,3-dimethyl BQ
25d 2,5-dimethyl BQ
26d 2,6-dimethyl BQ
tri trimethyl BQ
tet tetra-methyl BQ
tri trimethyl BQ (duroquinone)
26o 2,6-dimethoxy BQ
235 2,3-dimethoxy, 5-methyl BQ
556 2,3-dimethoxy, 5,6-dimethyl BQ




Making new topology files


(For tricks and trade involved in tpl file making, also check out tpl_workshop)

A parameter file (tpl file) defines a cofactor. It contains structural information such as connectivity, physical properties such as atom sizes and charges, chemical properties such as the pKa values, and rules for making rotamers. The file name must have extension ".tpl" to be effective.

Here are three steps of making a complete tpl file.

Step1: Make a basic tpl file

One can use MCCE program to generate a tpl file template for a new group (residue or cofactor). To do so, you need to extract the coordinate lines corresponding to this group in a pdb file, and make it a new pdb file. You should prepare a working directory to run mcce program for this new pdb file. Here is an example:

1. Copy run.prm file and the new pdb file to your working directory.

Here is the NO3.pdb including a NO3 cofactor, grepped from 1A4C.pdb

HETATM 3620 N  NO3 C 3 20.959 -2.193 7.806 1.00 32.48 N
HETATM 3621 O1 NO3 C 3 20.007 -1.433 7.784 1.00 27.51 O
HETATM 3622 O2 NO3 C 3 21.063 -2.989 6.897 1.00 36.49 O
HETATM 3623 O3 NO3 C 3 21.553 -2.395 8.858 1.00 29.45 O


2. Edit run.prm:

  • Put the new pdb name, in this example NO3.pdb, to the line of "(INPPDB)".
  • Set the flag of step 1 to be "t", other steps to be "f".
  • If you want to combine several residues into one cofactor (e.g. heme and its ligands) or split one group into separate ionizable residues (e.g. propionates in a heme), copy the "name.txt" file (this file is located in the mcce directory by default) from mcce directory to the working directory, and then point the path in line (RENAME_RULES) to this file. In this "name.txt" file, you can manupilate the names and sequence numbers of residues as the following example. Here is an example of file "name.txt":
####_###_#_### ####_###_#_###
*D************ *H************ rename all atom D to H
***** CU A 005 *****CUB*A*005
*****HIS A 284 a****CUB*A*005
*****HIS A 333 b****CUB*A*005
*****HIS A 334 c****CUB*A*005
1****HIS A 284 1****CUB*A*005
2****HIS A 284 2****CUB*A*005

In this example, CU and several HIS residues are a part the same cofactor called CUB because these atoms now have the same chain ID, residue name, and sequence number.

3. Run mcce program: It will take a short time to get results from step1_out.pdb. Confirm all atoms are reformatted and loaded into step1_out.pdb. If there is no parameter for the new cofactor in the mcce parameter directory, you will see a new file named "new.tpl" in your working directory. This file contains the guessed connectivity based on inter-atom distances:

This is the output file "new.tpl"

### This is a temporary parameter file made for residue NO3 ###
CONFLIST NO3 NO3BK
NATOM NO3BK 4
IATOM NO3BK N 0
IATOM NO3BK O1 1
IATOM NO3BK O2 2
IATOM NO3BK O3 3
ATOMNAME NO3BK 0 N
ATOMNAME NO3BK 1 O1
ATOMNAME NO3BK 2 O2
ATOMNAME NO3BK 3 O3
CONNECT NO3BK N ion 0 O1 0 O2 0 O3
CONNECT NO3BK O1 ion 0 N 0 O2 0 O3
CONNECT NO3BK O2 ion 0 N 0 O1 0 O3
CONNECT NO3BK O3 ion 0 N 0 O1 0 O2

The most basic section in a parameter file is the connectivity. However, the connectivity guessed by the program as in "new.tpl" lacks the correct orbital types and Hydrogen atoms. Sometimes bonds are not correctly identified. You should assign the bond orbital types (s, sp, sp2, sp3 and d2sp3 are currently supported), correct the falsely bonded atoms if any, and add hydrogen atoms.

As most pdb files don't have Hydrogen atoms, you need to complete them in the connectivity table. To do this, one needs to know where these hydrogens are and give them the right names. Some third party programs like Gauss Viewer can show you hydrogen positions. To name the hydrogen names right, we will follow the pdb rule (http://www.rcsb.org/pdb/info.html#File_Formats_and_Standards). Usually the hydrogen atoms are named based on their connected non-hydrogen atoms. Programs like Babel (http://mercury.aichem.arizona.edu/babel.html) can covert from the Gaussian atom names to PDB atom names.

For each atom, there are two columns for every atom it is connected to. For the line of atom O3, in the example above, the connected N is defined by two fields "0" and "N". "0" means the connected atom is inside the same group. "N" means the connected atom name is "N". If an atom is connected to an atom from another residue or cofactor, we need account for this. The first column could should be "LIG", and the second column should be the atom name if it is known or a question mark if the atom is uncertain.

The cofactor may have more than one ionization states. Furthermore, one ionization state can have several isomers with different connectivity (for example the proton could be on two possible positions of the neutral histidine). In MCCE, different bonding between atoms give rise to different conformer types. Each conformer type needs its own unique 2-character ID, which should follow the cofactor name in the connectivity line to make a complete conformer type name. The convention is the first character is the sign of the net charge (0, -, +), and the second one is some unique identification character. You need to prepare different connectivity tables for each conformer type. Here is an example that NO3 may be ionized as NO3-, and protonated as HNO3. The tpl file is then modified as following;

This is "no3.tpl" file after making two conformer types of NO3

CONFLIST NO3 NO3BK
NATOM NO3BK 4
IATOM NO3BK N 0
IATOM NO3BK O1 1
IATOM NO3BK O2 2
IATOM NO3BK O3 3
ATOMNAME NO3BK 0 N
ATOMNAME NO3BK 1 O1
ATOMNAME NO3BK 2 O2
ATOMNAME NO3BK 3 O3
###----ionized conformer (2-character ID = -1)
CONNECT NO3-1 N sp2 0 O1 0 O2 0 O3
CONNECT NO3-1 O1 sp3 0 N
CONNECT NO3-1 O2 sp3 0 N
CONNECT NO3-1 O3 sp3 0 N
###----protonated conformer (2-character ID = 01)
CONNECT NO301 N sp2 0 O1 0 O2 0 O3
CONNECT NO301 O1 sp3 0 N 0 H1
CONNECT NO301 O2 sp3 0 N
CONNECT NO301 O3 sp3 0 N
CONNECT NO301 H1 s 0 O1


You can get help from the link "http://xray.bmc.uu.se/hicup/" when you check the connectivity.

5. After editing CONNECT entries, you need to update these four sections: CONFLIST, NATOM, IATOM and ATOMNAME. It can be automatically done by running program "mk_iatom". The way to run is "mk_iatom new.tpl outfile.tpl", and the result in outfile.tpl looks like:

File "no3.tpl" is output from mk_iatom new.tpl no3.tpl
CONFLIST NO3 NO3BK NO3-1 NO301
NATOM NO3BK 0
NATOM NO3-1 4
NATOM NO301 5
IATOM NO3-1 N 0
IATOM NO3-1 O1 1
IATOM NO3-1 O2 2
IATOM NO3-1 O3 3
IATOM NO301 N 0
IATOM NO301 O1 1
IATOM NO301 O2 2
IATOM NO301 O3 3
IATOM NO301 H1 4
ATOMNAME NO3-1 0 N
ATOMNAME NO3-1 1 O1
ATOMNAME NO3-1 2 O2
ATOMNAME NO3-1 3 O3
ATOMNAME NO301 0 N
ATOMNAME NO301 1 O1
ATOMNAME NO301 2 O2
ATOMNAME NO301 3 O3
ATOMNAME NO301 4 H1
### This is a temporary parameter file made for residue NO3 ###
CONNECT NO3-1 N sp2 0 O1 0 O2 0 O3
CONNECT NO3-1 O1 sp3 0 N
CONNECT NO3-1 O2 sp3 0 N
CONNECT NO3-1 O3 sp3 0 N
CONNECT NO301 N sp2 0 O1 0 O2 0 O3
CONNECT NO301 O1 sp3 0 N 0 H1
CONNECT NO301 O2 sp3 0 N
CONNECT NO301 O3 sp3 0 N
CONNECT NO301 H1 s 0 O1


CONFLIST is a list of conformer types, with the first one as backbone conformer and the rest as side chain conformers. The backbone conformer is a special conformer containing atoms that do not vary in position or charge. It should be listed in CONFLIST even though no atoms are really assigned as backbone atoms. The other conformer types are obtained from CONNECT section.

NATOM is the number of atoms for each conformer type.

IATOM is the index for searching atom slot from known atom name.

ATOMNAME is the backward searching index for atom name from atom slot number.

The program requires both IATOM and ATOMNAME to efficiently search atoms and fill in missing atoms.

7. Put this new tpl file into param directory (your local param directory is recommended). Remove the file "new.tpl" in the current directory. Then run mcce (step1 and step2) again.
If any warning message is found in the file "run.log" or "debug.log", fix the problem , and restart mcce (step1 and step2) until no warning message is shown.

Step2: Adding atomic charges into tpl files


The next step is to assign the partial charges to the atoms:

1. Run mcce(step 1 and step 2), make sure you can get the file step1_out.pdb and step2_out.pdb.

2. Convert the file format. Use program such as babel to convert the format of an output file with atomic charges (e.g. the output files from program gaussian) to the pdb format. We can use this command to convert formats in babel: $babel -i gauout abcd.log -o pdb abcd.pdb .

3. Convert the atom names. The program match_atoms can do most of the job. Run $match_atoms file1 file2. (File 1 is the pdb file from bable output. File 2 is step1_out.pdb). This program will print the matching atomic informations one by one. Check the output file matched.pdb. Note: This is important to check the matching information (from the screen) with the real structure. Sometimes, if some small optimization have been done to the original pdb crystal structure to get charges in some programs, the matching information of proton in matched.pdb file may not be right. In some other cases, some atoms will not be matched, check those atom names.

3. Now you have the charge part from some other program, and the pdb-format atom names. Try to use excel to match them. Paste this information into the tpl file (removing all tabs beforehand and using spaces instead) in the following format. Check the spacing between columns using another existing tpl file:

CHARGE HEA01 aCB -0.065
CHARGE HEA01 1HB 0.150
CHARGE HEA01 2HB 0.150
CHARGE HEA01 aCG -0.283


4.Now you can add the radius part also in tpl file following the following format:

# Radii from "Bondi, J.Phys.Chem., 68, 441, 1964."
RADIUS HEA FE 1.45
RADIUS HEA CHA 1.80
RADIUS HEA CHB 1.80
RADIUS HEA CHC 1.80


5. confirm integer charges

Step3: Get pKa, Em, and reference reaction field energy


1. MCCE calculates the pKa/Em shift compared with the reference system, so the knowledge about the reference system should be specified. This includes the number of protons or electrons transfered relative to the ground state (this can be defined arbitrarily, but the ground state is conventionally one of the neutral conformers), solution pKa or Em and reference reaction field energy, RXN (the reaction field energy of every conformer type of the cofactor alone in solution). The solution pKa and Em values are either taken from literature, or measured directly by experiments or calculations. The RXN can be calculated with MCCE (see next paragraph). The format of these entries can be seen in the following example or copied from an existing tpl file from mcce parameter directory.

This is an example:
#Basic Conformer Information: name, pka, em, rxn.
#23456789A123456789B123456789C
PROTON NO301 0
PKA NO301 0.0
ELECTRON NO301 0
EM NO301 0.0
RXN NO301 0.0
PROTON NO3-1 -1
PKA NO3-1 0.0
ELECTRON NO3-1 0
EM NO3-1 0.0
RXN NO3-1 0.0


2. In order to obtain the reference reaction field energy (RXN) you need to take step2_out.pdb as input file and run step 3. Remember to change the "t" to "f" for steps 1 and 2 but use "t" for step 3. The output of step 3 gives you the energies directory which contains the opp files (Dephi energy files). There is one opp file for each conformer. These files contain the pairwise interactions with the all other conformers. At the bottom of the opp file is a line called RXN single, the most negative value in that line is the suggested reference reaction field energy. Copy this number in the RXN line for each conformer in the tpl file.
Comments