Shadow Contact Map
Click here to make your own Shadow contact map
A contact map is an important component of a structure-based model. It is a symmetric matrix that encodes the tertiary structure of the molecule by defining the interactions that stabilize the native state. A common method of choosing these interactions is to choose a cut-off distance and define all atoms within the cut-off distance in the native state as the stabilizing interactions. The cut-off distance needs to be long enough to include all relevant short range interactions, for proteins ~6Å should be sufficient. With a cut-off definition for contacts, in order to include the contacts between 5-6Å, several "unphysical" contacts will be introduced. The unphysical contacts being those that are acting through another atom. To avoid this situation we introduce the Shadow contact map (SCM).

The SCM algorithm is described in the above figure. It is a cut-off contact map with a screening term S introduced. All atoms are given a radius S. To determine the atoms contacting atom i, all atoms within a cutoff distance C of atom i are considered possible contacts. Those contacts which have an intervening atom are considered screened out and are discarded. The algorithm is simply stated: a light source is located at the center of atom i, any atoms within C which have no shadow cast upon them are considered contacts. One can change S to scale the amount of shadowing. S=1Å works well with proteins. The figure below highlights SCM in action. The upper figure shows an RNA double helix. With a cut-off of 4Å the blue atom is in contact with the orange and green atoms. With a shadowing radius of 1Å, only the green atoms are in contact with the blue. The lower figure shows the interior of chymotrypsin inhibitor 2 (PDB code 2CI2). The blue atoms are contacting with a 4Å cut-off map, but with S>0.5Å the orange atom shadows and throws out the contact.
Details are described in the following reference:
Noel JK, Whitford PC, Onuchic JN. (2012) "The shadow map: A general contact definition for capturing the dynamics of biomolecular folding and function" J. Phys. Chem. B DOI:10.1021/jp300852d
Shadow (SCM.jar) software
Compiled Bytecode: Download JAR current version 1.31User Manual: PDF
Version history
- Version 1.0: Original Release
- 1.1: Added option "--multiple [integer]" to read in several .gro at once.
- 1.11: Fixed bug that caused the Z component to lose one digit of precision.
- 1.12: Shadow gives a shadowing radius of 0.5A to all atoms connected by bonds. Changed the definition of bonds to mean only those atoms specified under "[ bonds ]" and not the connections under "[ dihedrals ]."
- 1.20: Added feature to reindex the contacts to start each chain at atom 1, residue 1. This is useful for systems that have more than 99999 atoms or 99999 residues since the PDB format cannot handle more than this. Enable with "--reindex." Also removed the unnecessary reading of dihedrals from the topology resulting in a speed increase and reduced memory footprint.
- 1.21: Added more output information to standard out dump, such as the total excluded volume.
- 1.22: --distance works correctly for AACA and CA graining as well.
- 1.23: Added explicit left justification to the 3rd PDB column output as Windows and Unix/MacOS default differently.
- 1.24: Added support for
SPLICE
separator (likeTER
). Treats the spliced residues as a different chain, i.e. the deltas are not enforced. As before, no contacts if connected by bonds or dihedrals. Also fixed a bug that used shadowing size 1 even if you set "-m shadow -s 0
". It now acts sanely and uses shadowing size 0 with that switch. - 1.25: Added option
-og,--outputGauss
which specifies a filename to dump [ pairs ] formatted for Gaussian type contacts available in the SBM extension for Gromacs. - 1.26: Added an error if a residue is missing a Calpha atom and option "--coarse CA" is requested. Also included atom type " ZN ".
- 1.27: Included atom types " NG " and " CH3", and protein residue types DBZ and ACE. ACE is an acetyl group, and only makes sense as a stand-alone residue at the terminals.
- 1.31 Bug fix regarding the use of BMG and Shadow. Shadow treated a BMG type 6 bond (used to constrain the ion) as a chemical bond, thus discarding native BMG contacts at an intermediate stage of generating the SBM Hamiltonian. Shadow now disregards type 6 bonds and BMG contacts are now correct. Also now compiled with Java7.
- 1.32 Added option
-bif <bif_file>
which will read a SMOG 2 .bif and pick out residues withtype=amino
and call them protein for the purposes of-pd
. All other residues are treated as type LIGAND and therefore have no residue delta between contacts. Also added various code for SMOG2 compatibility.
Known Bugs
- None known, dare you to find one...
HOW SCM WORKS:
- Determines which atoms are in contact using the following algorithm:
- Checks if two atoms are within cutoff (-c) angstroms.
- Checks if two atoms are greater than the specified number of residues apart or in separate chains.
- If so then checks to see if any atoms are between the two. This is determined by putting a light bulb at the center of each of the atoms and seeing if any of the other atoms cast a shadow on the potential contacting atom. If so then the contact is thrown out.
- The size of the atoms is determined by size (-s).
- A
potentially shadowing atom is given a size of 0.5 angstrom when it is
bonded to the shadowee. This is because the C-C bond length
is 1.5
angstrom and bonded neighbors should not shadow.
Please direct questions and comments to info@smog-server.org.
Page created and maintained by Jeff Noel and Paul Whitford