Particle tracking using IDL -- John C. Crocker and
Eric R. Weeks (this page written primarily by Brenton
Hoffman)
Home |
Download software |
Tutorial |
Extra software
micrheo.pro
Click here to return to microrheology summary
page
BACKGROUND:
A program written to calculate shear moduli (G', G") from
either one point mean square displacement
(msd.pro)
or distinct
mean square displacements generated from two point correlation
tensors (msdd.pro).
It is based on power-law approximations
of the data and an algebraic approximation to the Generalized
Stokes-Einstein with second order logarithmic derivative
corrections. See
Mason, Rheologica Acta 2000 and
Dasgupta
PRE 2005 for details. The code deals best with power-laws and
can give erroneous results if the data has a lot of curvature.
The code has a fundamental problem common to all numerical
Fourier or Laplace transforms. These transforms are defined
for all lagtimes, but obviously data can only be obtained over
a finite range of lagtimes. The code uses the points at the
extrema of the msd to extrapolate to 0 and infinity. Therefore,
curvature near the extrema, whether actually physical or from
noise sources such as vibration or effects due to particles
diffusing out of the two-dimensional imaging plane, can lead
to erroneous results. In general, several data points from
the edge of the msd should not be used in the conversion.
The user needs to determine how many on a case by case basis.
Usually the ends of the resultant rheological curves will
fluctuate up and down as points are added or removed.
The transformation should be repeated until this artifact stops.
Because of these caveats there is no guarantee for reliable
results. In the past, we have found it useful to have new users
run theoretical data through the program to get an understanding
of these effects. Convenient analytical forms can be found in
Mason, Rheologica Acta 2000.
We strongly recommend this type
of exercise, preferably with theoretical data similar to the
experimental data, before publication.
REQUIRED INPUTS:
The code requires a set of time points and the corresponding msd values.
OPTIONAL INPUTS:
- A:
Optionally the particle radius a can be set. If a particle
radius is set in
msdd.pro
the same value should be used here.
For accurate determination of mechanical properties, the
particle size must be the same between these two programs.
- DIM:
The dimension can be changed with the dim keyword. This is
not the same as the dimension keyword in
msd2pnt.pro
and
msdd.pro.
The dimension keyword used in the other context
set the dimensionality of the trajectories that were used.
Used in this program the keyword sets the dimension used in
the Generalized Stokes Einstein equation. The default is set
to three and is equivalent to assuming an isotropic medium.
Discrepancies between the x and y coordinates or Drr and Drr two
point correlation tensors may suggest non-isotropic behavior.
- T:
Since the technique relies on Brownian motion there is a keyword
to set the temperature. The default is 290 K.
- WIDTH:
The program is
very sensitive to noise and curvature. Therefore, a smoothing
operation is included in the code. The width keyword controls
the width of a Gaussian used in a smoothing operation. A value
of 1 means a Gaussian with a width of one decade in time was
used to smooth the data. Large values may qualitative alter
results.
- CLIP: G'(w) and G"(w) are clipped at 0.03x G(w) as they are
almost certainly meaningless below that point unless the data
is *extremely* clean. Set 'clip' to less than 0.03 to see more.
SAMPLE CALL:
IDL>
g=micrheo(md(0,2:27),md(1,2:27),a=0.5,wid=0.9)
where md is the output of
msdd.pro,
a particle radius of 0.5
microns is assumed, and a width parameters of 0.9 is used.
The second through 27th points are used to generate data.
NOTE: The msd data from
msd.pro
is in the third column. A call using that structure would
look like:
IDL>
g=micrheo(m(0,2:27),m(3,2:27),a=0.5,wid=0.9)
where m is the output from
msd.pro.
Using column 2 in md and 4 in m would result in the rheology
generated from the theta-theat component of the two point
correlation tensor or the y componment of the particle
trajectory.
OUTPUT:
The output is a 4 column (4,number of time points) array where:
res(0,*): is the frequency (s or omega), rads/sec.
res(1,*): is G(s) in Pascals
res(2,*): is G'(w) in Pascals
res(3,*): is G"(w) in Pascals
This program was written by John, and this webpage was written
by Brenton Hoffman, a student working with John (with some
editing to html-ize it by Eric).
Click here to return to microrheology summary
page
Contact us