Chazin Home Chazin Home | Ca-binding Protein DB | Vanderbilt Home Vanderbilt Home
Research Description | Publications | Wisdom | Search
How to contribute | About this page

Instructions for Calculating an Electrostatic Surface with UHBD and Displaying it with AVS

By Melanie Nelson, last updated 12/1/97


These instructions are for calculating an electrostatic surface with the UHBD (University of Houston Brownian Dynamics) program and displaying it using AVS software.

Prepare a PDB file for UHBD calculations

These instructions are for a pdb file with only polar hydrogens explicitly included.

If you are using a crystal structure, you will have to add hydrogens. This can be done several ways. One way to do this is with Insight:

Insight will add all hydrogens. If you use this method to add hydrogens, or if you are starting with an NMR structure, you will need to filter out the non-polar hydrogens:

The terminal residues of the protein need to be named XXXN and XXXC. Currently, this is just done by hand (using vi or some other text editor). If you are working with a protein with disulfide bonds or bound metal clusters, other residue names must be modified. According to instructions written by Terry Lo in the Tainer lab, these modifications are:

The PDB coordinates must be converted to AMBER format. This requires some minor changes in the spacing (atom names are fully left justified in the AMBER format), and a slightly different system for naming hydrogens. I have a script originally written by Terry Lo, which I slightly modified to do this. It is called pdbamb, and can be found in ~mnelson/bin/pdb_tools.


Calculate the electrostatic potential grid

You will need a file called qtable.dat in the running directory. This is a file with the charges associated with each atom in each residue. I have an example qtable.dat file. However, you may need to modify it to add the necessary terminal residues (XXXN and XXXC) for your protein. This can be done by comparing with the terminal residues already in the qtable.dat file, and extrapolating. If either termini is near the region of interest in your protein, you might want to use a more rigorous method to get the charges. For most proteins, however, the termini are far from the region of interest, and this hack is acceptable.You will also need an input file that gives the commands to UHBD. I also have an example input file, which I have annotated to indicate the regions that will need to be changed for each individual protein.

You are now ready to run UHBD. UHBD 5.1 has been complied on krusty using a 128x128x128 grid. Make sure your protein is not longer than 128 angstroms in any dimension. If it is, the UHBD results will be unreliable. The executable can currently be found at: ~terrylo/bin/IP21/uhbd5.1/uhbd. Run as follows:
uhbd < xxx.inp > xxx.out

It is a very good idea to check to make sure that the charges and radii have been correctly assigned before allowing the program to chug through to the end. You can do this using the more utility. A few seconds after starting the job, type:
more xxx.out
This will allow you to look at the output file, and see that the charges on all residues add up to a whole number (+/-1 unless you are using a strange residue), and that the charge on the protein adds up to a whole number. There shoudl also be no unassigned radii (an unassigned radius for an atom probably indicates a format problem in the input pdb file). I have an annotated example output file that indicates where to look for these problems.

Once you have successfully run UHBD, you will have an xxx.grd file. You need to run two additional scripts to convert the output into an AVS readable format. These are:


Calculate the protein's Connolly surface

You also need a protein surface on which to map the electrostatic potential. There are probably several ways to create this (you need some reasonable surface representation of your protein in a format which is readable by AVS). The method I used involves using a program that only a few people here at Scripps are allowed to run. Mike Pique is on, Cliff Mol is another. The script that runs this program is called pdb_to_conn_surf, and runs with the command line:
pdb_to_conn_surf xxx.pdb
Whoever runs the script for you will probably know where to find it. However, I have a copy of it in ~mnelson/bin/pdb_tools.

You can not actually run the program, but you can prepare your files before you go bug one of these already very busy people to have them run the calculation for you! The only file you need to prepare is pdb file. Use the amber format file you created to run UHBD, and take out the N-terminal hydrogens. Also, since someone else will need to be running in your directory, make sure it is writeable by all. To do this, use the chmod command:
chmod a+x directoryname


Display the results in AVS

There is a rather complicated AVS network for displaying the results. I have an example network which you can download (it is a simple text file). You will need to edit it slightly before running it. To prepare the network file for use, simply search for every occurence of "example", and modify those lines appropriately (inserting your directories and your file names). There is also an additional macro which you will need in your home directory in order to use this network.

To display the surface, start AVS. Go to the network editor, click on "Read network," read in your modified network, and wait. It will take several minutes for the surface to be displayed.