Mercurial > hg > fxanalyse
view Allan.h @ 10:239f2fe67cc0
Fix slope cancelling following Hg cavity
What we really want to do is to keep constant the frequency of the beat note
between comb and 1062 nm light from the Hg cavity, acting on the repetition
rate by stearing the frequency of the 1542 nm light from the local cavity to
which we lock the comb.
author | Daniele Nicolodi <daniele.nicolodi@obspm.fr> |
---|---|
date | Wed, 04 Jul 2012 14:39:50 +0200 |
parents | d9aae7d7f2c6 |
children | bd28161e5ac2 |
line wrap: on
line source
#include "YLCStuff.h" #define ALLAN_MAXPOINTSNUMBER 13 // can compute Allan dev for tau from 1s to 2^13 s =8192 s ~ 2h15' < 10000 s // Allan_Data : the data of crypto class Allan typedef struct { PanelHandle AllanPanel ; // le handle sur le graphe void (*OnClosePanel)(int); // pointer on a function to execute when the panel is closed (argument is the panel Handle) double AllanVar[ALLAN_MAXPOINTSNUMBER] ; // the values of variances for each tau = 2^n.tau_0 (with n from 0 to ALLAN_MAXPOINTSNUMBER) double FirstMean[ALLAN_MAXPOINTSNUMBER] ; // the means of the first block of 2^n data for which averaging was completed double LastMean[ALLAN_MAXPOINTSNUMBER] ; // the means of the last block of 2^n data for which averaging was completed int BlocksNumber[ALLAN_MAXPOINTSNUMBER] ; // the number of blocks of 2^n data (averaged) used for computing AVAR(2^ntau) double CurrentAverage[ALLAN_MAXPOINTSNUMBER] ; // the sum of the last p data points retrieved (with p<2^2n). used for averaging as soon as p=2^n int NbCurrentAverage[ALLAN_MAXPOINTSNUMBER] ; // number of data point being summed in CurrentAverage (from 0 up to 2^n) double Drift, Mean ; // the drift rate of the data (in Hz/s), and the mean value (in Hz) : only usefull for dedrifting... } Allan_Data ; // The functions of crypto class Allan int Allan_InitPanel(Allan_Data * Instance, char * title, double Normalizer, void (*OnCloseFunc)(int)) ; int Allan_ClosePanel(Allan_Data * Instance) ; int Allan_AddFrequency(Allan_Data * Instance, double Freq) ; int Allan_Reset(Allan_Data * Instance) ; int Allan_AddFrequency(Allan_Data * Instance, double Freq); int Allan_Display(Allan_Data * Instance, int ColorPt, int ColorErrorBar); int Allan_DisplayErrorBars(Allan_Data * Instance, int color);