Multi-Conformer Continuum Electrostatics (MCCE)

Gunner Lab at the City College of New York

[Home] [Manual] [Tools] [About Us]

MCCE utility tools:

Data Analysis Parameter Preparation
Improving MCCE runs Exporting and Debug

All programs are located at /home/mcce/mcce1.0/bin unless otherwise stated.

Web Analysis Tool (In campus access only) - by Junjun

MCCE web analysis tool uses mean field approach to eastimate residue-residue interaction. The breakdown analysis helps understanding why a conformer is occupied and why a residue is ionized.

MCCE analysis tool on Hestia (

MCCE analysis tool on Metis (

MCCE analysis tool on Sibyl (

MFE - by Junjun

MFE approximation of residue ionization energy. This is the command line version of the web-interfaced analysis tool.

Synopsis res_id titration_point [pH_cutoff]


res_id is the identification string of an ionizable residue, as appeared in file "pK.out"

titration_point is the titration point that mfe is carried out. If this number is between two titration values of Monte Carlo simulations, a linear interpolation will be performed.

pH_cutoff is the cutoff value in unit pH of printing residue pairwise interaction. It is an optional argument, without which all pairwise interactions will be printed out.

Close up atoms - by Yifan

This program measures distance of each atom to [x,y,z], and print out those pdb lines within the threshold.


closeup pdbfile x y z threshold


pdbfile is your input pdb file

x y z are coordinate of a point where distances are measured, you can copy x y z from the pdb line and paste it here

threshold is the distance limit of printing the atoms. Only those within this threshold are printed out.

The serial number field of an ATOM line in the output will be replaced by the atom distance.

RMSD of conformers in a residue - by Junjun

This program prints out the RMSD between the specified conformer and other conformers in the same residue.

Synopsis IDstring1 [IDstring2 [IDstring3 ...]]


IDstring1 is the identification string that appeared in the ATOM line of that conformer in step3_out.pdb

IDstring2 is optional identification string to help uniquely identify a conformer

IDstring3 and more are more optional identification string to help uniquely identify a conformer

This program expects file "step3_out.pdb" so it must be called in a working directory. The ID strings are not sensitive to the order.

Example GLU A0073_051

Coupled residues - by Yifan

This program finds the residues with strong interations.


getinfo residue [threshold]


This program is trying to guess coupled residues for the input residue, you need to run it in the directory with head3.lst and opp files in energies/.

residue: the residue you want to analyze, it can be the residue number (for example: 212) or it can be a string defining the residue (for example: L0212, GLUL0212 etc., L212 would not be recognized in this case)

threshold: energy threshold for deciding if two residues are coupled (in pK units), default value is 2.

Remove unoccupied conformers - by Junjun

This program reads in step3_out.pdb and fort.38, then remove all unoccupied conformers except the native conformers which have "O000" in the history string. The resulted ATOM lines are printed out, which can be redirected to file step2_out.pdb. The purpose is to use this step2_out.pdb as the input of step3 for better dielectric boundary in DelPhi calculation.



This program expects file "step3_out.pdb" so it must be called in a working directory.

Example > step2_out.pdb

Merge Conformers - by Yifan

This program merges several mcce formatted pdb files into one, duplicated conformers are deleted.


merge_pdb -i input_list_file -o output.pdb -p param_directory 


-i input_list_file, input_list_flie is a text file with a list of pdb files you want to merge, each line has one pdb file

-o output.pdb, output.pdb is the merged pdb file

-p param_directory, param_directory is the location of the parameter directory, if you have extra residues need new.tpl, put new.tpl in the local directory where this program runs

Update opp files with the latest head3.lst - by Yifan

This program takes head3.lst and opp files under energies/ directory as input and complete the opp file if they are asymmetric.


rewrite_opp [-d]


-d: If you have this flag in the command line, and opp file has extra line than head3.lst (for example some conformers in step2_out.pdb has been deleted), then those extra conformers in opp file will be deleted. Otherwise, if -d is not in the command line, then those extra line are kept at the end of the opp file, but not deleted.

Creat derived entries for a prrameter file - by Jinran

This program updates the derived entries (CONFLIST, NATOM, IATOM, and ATOMNAME) of a parameter (tpl) file from the connectivity table.


mk_iatom input.tpl output.tpl


input.tpl is the input tpl file.

output.tpl is the output tpl file.

Convert Hicup to MCCE format - by Yifan

It uses connectivity in PDB dictionary file from hicup website and write out connectivity in the format of out tpl file.

Synopsis hicup_file

Show the content of DelPhi unformated file - by Junjun

This program reads in an unformatted pdb file used by DelPhi and print out its content.


testfmt unpdb


unpdb is unformatted pdb file such as fort.13.


testfmt fort.13

Get a pdb file from one command line - by Yanjun

This program gets a pdb file from Protein Data Bank at


getpdb pdb


pdb is the 4-character pdb id. The pdb id is not case sensitive, and it can be appened with the extention ".pdb"


getpdb 1akk

Compose a pdb file with the most occupied conformers - by Junjun

This program prints out a pdb file that each residue is represented the most occupied conformer. The output pdb file can be viewed by other protein structure visiualization programs.

Synopsis column_in_fort.38


column_in_fort.38 is the column number counted from 1 in the file "fort.38".

The program reads in fort.38 and step3_out.pdb, then picks up the backbone atoms and the most occupied conformer at the pH/Eh specified by column_in_fort.38.

Example 8

Substract two files - by yifan

This program substarcts the number fields of file2 from file1, and prints the result bigger than the given threshold. String fileds are ignored.

Synopsis file1 file2 [option]


[-t threshold] : threshold for printing, default = 0.05

[-hl n_headline] : skip first n lines, default = 1

[-hc n_headcolumn] : using first n columns for matching lines between two files

[-cf n_column_per_field] : use every n column as one field to get numbers, default = delimited by space

[-c column_file1 column_file2] : only compare one defined column from each file


to compare two sum_crg.out: sum_crg.out.1 sum_crg.out.2

to compare two fort.38: fort.38.1 fort.38.2 -hc 14

to compare two opp files: file1.opp file2.opp -hl 0 -hc 20 -t 1.0

Prune step2_out.pdb standalone program - by Junjun

This program reduces conformers of step2_out.pdb by eliminating "similar" conformers. Similar conformers are defined by geometry, vdw pairwise interaction vector and ele pairwise interaction vector. If the atom distance difference in Angstroms, the vdw and ele pairwise interactions in Kcal/Mole of two conformers are all under the threshold values, then the second conformer is a "similar" conformer and will be deleted. Note any big vdw interaction (> 50) all treated as identical values.


prune [geometry ele vdw]


The first line is the threshold values of pruning and the number of deleted conformers. The rest is a mcce pdb file which can be used as a new step2_out.pdb. This program will take a few minutes for a 2000-conformer step2_out.pdb.

geometry: threshold of geometry difference, default = 0.5

ele: threshold of electrostatic pairwise interaction difference, default = 1.0

vdw: threshold of vdw pairwise interaction difference, default = 8.0. In Monte Carlo sampling the vdw is scaled down by the protein dielectric constant. So 8.0 here is actually 1.0 viewed by Monte Carlo step when epsilon is 8.


to prune step2_out.pdb and write the result to a file:

prune 2 1 8 > temp.pdb

to do it with default values

prune > temp.pdb

Divide NMR structures - by Rajesh

Type the following at unix prompt  "perl". It will prompt you for your pdb file that contains many structures. Then it will make individual files out of them.