MD and NMR, calculation of (r)^-3 and (r)^-6 averaged distances

The assumption is that you have a set of experimental NOE-derived distances which you want to compare with the results from your simulation. For the discussion that follows you will need carma plus two extra programs: a perl script '' and a C program 'noe_averaging'. Both of these are installed on norma, but for completeness, here is their source code., a perl script to calculate exhaustive table with all proton pairs

noe_averaging.c, a C program to calculate (r)^-3 and (r)^-6 averaged distances

noe_averaging.c, old (and extremely slow version)

There are two basic scenarios we need to consider:

  1. You want to compare only the observed NOE-derived distances with the calculated.
  2. You not only want to compare the observed NOE-derived distances with the calculated, but also want to see how many of the expected (from the simulation) distances have indeed been observed. This is based on this paper from the Gunsteren group.

For scenario (1) above, you will have to do some typing and pattern matching. Scenario (2) will require less typing but quite a lot of calculus (and can only be applied to small-to-tiny oligopeptides).

Scenario 2:

  • Get a copy of your peptide-only PSF file.
  • Use the script with your PSF to prepare an initial list of all possible proton pairs.
  • Note the number of pairs reported from and reflect on the following example: an 11-residue long peptide with a total of 88 hydrogens, gave a grant total of 3828 pairs (unedited result from Storing the distances for these pairs and for only ten thousand frames, resulted to a carma.distances file of size 371 Mbytes (it would have been 3.7 Gbytes for 100,000 frames). The take-home message is simple: just running, carma, and noe_averaging may get you in trouble. You will probably have to edit the proton list prepared from and remove all pairs that you know that are either too far apart, or otherwise equivalent or redundant.
  • Now that you have your edited list of proton pairs, use it with your latest version of carma, using something like carma -v -segid A -atmid ALLID -dist proton.list my.dcd my.psf . Carma will produce a file named carma.distances in your current working directory.
  • Feed the carma.distances file to noe_averaging to get your r^-3 and r^-6 averaged distances.
  • You have your distances, but (of course) can't remember which distance is for which pair ? Fear not, has added this information in your proton list file. Use the unix command paste to merge the output from noe_averaging and You are ready. You can even use awk to throw away all lines with an r^-6 averaged distance of less than 5.5A.

Scenario 1:

Everything is the same as above with one notable exception: after using the script to prepare the list of hydrogen pairs, you must remove all lines that do not have an experimentally observed distance bound. If you have a small number of pairs, it may turn out to be faster to type the list yourself.


# mkdir tmp
# cd tmp
# cp /somedirectory/pept.psf .
# pept.psf
# carma -v -segid A -atmid ALLID -distance pept.protons -last 50000 my.dcd my.psf
# noe_averaging carma.distances | tee LOG
# ed LOG          => remove the header lines
# paste LOG pept.protons > merged
# awk '$3 < 5.5' merged > selected
# ed selected     => remove redundant entries
research/howto/md_and_nmr_calculation_of_noes.txt · Last modified: 2010/04/19 17:10 (external edit)