Code covered by the BSD License  

Highlights from
allan v3.0

4.0

4.0 | 2 ratings Rate this file 51 Downloads (last 30 days) File Size: 2.69 KB File ID: #26659
image thumbnail

allan v3.0

by

 

allan.m calculates normal, modified and timed Allan deviations of time series in one function

| Watch this File

File Information
Description

Compute various Allan deviations for a constant-rate time series, therein normal, modified and timed Allan deviations of time series in one function.
[AVAR]=allan(DATA, TAU)
Inputs are a simple struct containing time series and rate, the outputs contain the assigned Allan deviations.

NOTES:
Calculations of modified and timed Allan deviations for very long time series might become slow. It is advisable to uncomment .msig* and .tsig*, only after calculations of .sig*, .sig2* and .osig* have been proven sufficiently fast.

No pre-processing of the data is performed.
For constant-rate time series, the deviations are only calculated for tau values greater than the minimum time between samples and less than half the total time.

FCz OCT2009
v3.0 faster and very plain code, no plotting; various Allan deviations
         can be calculated; script and sample data are availabie on
         www.nbi.dk/~czerwin/files/allan.zip
(Normal, overlapping and modified Allan deviations are calculated in one
         function, in strong contrast to MAHs approach of splitting up among various
         functions. This might be beneficial for individual cases though.)

MAH 2009/2010
v2.0 and others

FCz OCT2008
v1.71 'lookfor' gives now useful comments; script and sample data are
         availabie on www.nbi.dk/~czerwin/files/allan.zip
v1.7 Improve program performance by mainly predefining matrices outside
         of loops (avoiding memory allocation within loops); no changes to manual

early program core by Alaa MAKDISSI 2003
(documentation might be found http://www.alamath.com/)
revision and modification by Fabian CZERWINSKI 2009

For more information, see:
[1] Fabian Czerwinski, Andrew C. Richardson, and Lene B. Oddershede,
  "Quantifying Noise in Optical Tweezers by Allan Variance," Opt. Express 17, 13255-13269 (2009), http://dx.doi.org/10.1364/OE.17.013255

The screenshot shows the use of allan v3.0 in
[2] Fabian Czerwinski, Andrew C. Richardson, Christine Selhuber-Unkel, and Lene B. Oddershede, “Allan Variance Analysis as Useful Tool to Determine Noise in Various Single-Molecule Setups,” Proc. SPIE, Vol. 7400, 740004 (2009), http://dx.doi.org/10.1117/12.827975

MATLAB release MATLAB 7.9 (R2009b)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (5)
09 Jul 2013 Shashank

I am getting the samples at varying time intervals. I do have the timeStamps of the samples. But I am not able to feed it to your file. What modification do I need to do for the samples gathered at varying rate.

08 May 2013 Joe Wiegand

Great program, but in lines 117 and 118 you typed y instead of u. Also, I keep getting an error saying that the index is out of bounds.

08 Dec 2010 Engineers Bilal

Kindly help me how i can find out the angle random walk from allan variance curve as i know that when the slope of curve equal to the -0.5 the point shows the ARW but i require code for it...
help me soon plz

11 Oct 2010 Vinod Cherian

In the code Allan.m, v3.0, your calculation for modified Allan deviation uses an undefined vector, y[].

Uncommenting the lines causes 111-126 and executing your script throws an error:

.??? Undefined function or method 'y' for input arguments of type 'double'.

Error in ==> allan at 120
z1=z1-y(L)+y(L+m(j));

11 Oct 2010 Vinod Cherian

In the code Allan.m, v3.0, your calculation for modified Allan deviation uses an undefined vector, y[].

Uncommenting the lines causes 111-126 and executing your script throws an error:

.??? Undefined function or method 'y' for input arguments of type 'double'.

Error in ==> allan at 120
z1=z1-y(L)+y(L+m(j));

Contact us