From: Axel Kohlmeyer (
Date: Fri Oct 19 2007 - 15:30:50 CDT

On Fri, 19 Oct 2007, Cesar Luis Avila wrote:

CLA> Dear all,

dear cesar,

CLA> I have a complex system composed of protein + membrane patch which
CLA> I have simulated. I would like to extract IR spectra from the
CLA> simulation. I would like to use "IR Spectra calculation" plugin.

CLA> Are there any tutorials on how to correctly use it? Any related

apart from the minimal plugin documentation on the VMD site, there
is also:

however, that does not explain the method used either.
for that you'll have to dig into some older literature and/or text
books on how to compute spectral densities from auto-correlation
functions. however, the plugin uses not the frequently adopted
method of fourier transforming the dipole (or velocity) auto-correlation
function, but rather does the fourier transform first and then
in creases the resolution with increasing number of data sets.

here is some more info from the source code:
 * This program takes time-data and calculates the
 * powerspectrum/fourier transform of the autocorrelation function.
 * This is a re-write of the fourier.x code written by volker kleinschmidt
 * and harald forbert as a tcl plugin for VMD by axel kohlmeyer.
 * (c) 2002-2005 Harald Forbert, Volker Kleinschmidt (c) 2002-2006 Axel Kohlmeyer.
 * usage: calc_specden(<ndata>,<input>,<deltat>,<maxfreq>,<temp>,<specr>);
 * <ndata> number of data sets
 * <input> time series data.
 * <deltat> time difference between data sets (in atomic units).
 * <maxfreq> max fequency (in wavenumbers).
 * <temp> temperature (in kelvin)
 * <specr> resolution of spectrum (1 gives maximal resolution and noise).
 * The output will contain the power-spectrum up to a maximum frequency.
 * The format of this file is:
 * <frequency> <value1> <value2> <value3> <value4> <value5>
 * <frequency> is the frequency in wave numbers.
 * <value1> is the plain power spectrum of the input data (normalized to
 * unity in the output frequency range.
 * <value2> is the power spectrum with a prefactor of
 * \omega ( 1 - \exp(-\beta \hbar \omega) )
 * corresponding to the classical/Gordon limit.
 * <value3> is the power spectrum with a prefactor of
 * \omega \tanh(\beta \hbar \omega/2)
 * corresponding to the Kubo correction
 * <value4> is the power spectrum with a prefactor of
 * \omega \beta \hbar \omega
 * corresponding to the high temperature / harmonic limit
 * NOTE: this is the _recommended_ correction factor.
 * <value5> is the power spectrum with a prefactor of
 * \omega ( 1 - \exp(-\beta \hbar \omega) ) *
 * \exp(\beta \hbar \omega /2)
 * corresponding to Schofield's correction
 * All spectra with their corresponding prefactor are separately normalized
 * in the output range to sum up to unity.
 * Note: the index of refraction of the medium is set to unity.

CLA> publications? Some advice or technical tips? I have saved frames
CLA> every 2 ps, but I suppose I should have it at least every fs. How
CLA> many frames would I need to analyze?

the distance between the frames determines the highest frequency
that you can look at. so with 2ps between frames you'll be stuck
with lower frequencies. the more data you have the higher the
resolution. but you can also crank up the oversampling and thus
get a less noisy spectral density. in any case, the more the better.

good luck,

CLA> Thanks for any help.
CLA> Regards
CLA> Cesar

Axel Kohlmeyer
   Center for Molecular Modeling   --   University of Pennsylvania
Department of Chemistry, 231 S.34th Street, Philadelphia, PA 19104-6323
tel: 1-215-898-1582,  fax: 1-215-573-6233,  office-tel: 1-215-898-5425
If you make something idiot-proof, the universe creates a better idiot.