5 #define FRLIST_NAME "S6A_LDR_L1_LDAS_C02_L2.frames"
7 #define CHANNEL_NAME "L1:LDAS-STRAIN"
18 c1->SetCanvasSize(800,1200);
41 "/tools/cwb/plugins/strains/advLIGO_NSNS_Opt_8khz_one_side.txt";
47 double start = 931081124;
52 cout <<
"nfiles : " << nfiles << endl;
75 TH1F* histS =
new TH1F(
"histS",
"histS",100,-4*rms,+4*rms);
76 for(
int i=0;
i<x.
size();
i++) histS->Fill(x[
i]);
78 gStyle->SetLineColor(kBlack);
80 histS->SetTitle(
"Strain data samples distribution");
91 plot->
graph[0]->SetTitle(
"Strain data PSD");;
97 int rate = RATE>>level;
99 double df = RATE/2./double(1<<level);
100 cout <<
"level : " << level <<
"\t rate : " << rate
101 <<
"\t df(hz) : " << df <<
"\t dt(ms) : " << dt << endl;
115 float wdt = 1./(2*wdf);
117 int wedge = segEdge/wdt;
125 plot->
hist2D->GetYaxis()->SetRangeUser(fLow, fHigh);
126 plot->
hist2D->GetZaxis()->SetLabelSize(0.04);
128 sprintf(title,
"Strain data TF sqrt((E00+E90)/2) - level:%d - dt:%g (ms) - df=%g (Hz)", level,dt,df);
129 plot->
hist2D->SetTitle(title);
138 nRMS = w.
white(whiteWindow,0,segEdge,whiteStride);
150 double fNinquist = nRMS.
rate()/2.;
160 double start = nRMS.
start();
163 plot->
hist2D->GetYaxis()->Set(plot->
hist2D->GetNbinsY(),0, fNinquist);
164 plot->
hist2D->GetYaxis()->SetRangeUser(fLow, fHigh);
165 plot->
hist2D->GetZaxis()->SetLabelSize(0.04);
167 plot->
hist2D->SetTitle(title);
175 plot->
hist2D->GetYaxis()->SetRangeUser(fLow, fHigh);
176 sprintf(title,
"Whiten data TF sqrt((E00+E90)/2) - level:%d - dt:%g (ms) - df=%g (Hz)", level,dt,df);
177 plot->
hist2D->SetTitle(title);
178 plot->
hist2D->GetZaxis()->SetLabelSize(0.04);
184 TH1F* histW =
new TH1F(
"histW",
"histW",100,-4,+4);
185 for(
int i=wedge;i<=wslices-wedge;i++) {
186 for(
int j=1;
j<=wlayers;
j++) {
188 double J = (
j-1)+0.01;
197 gStyle->SetLineColor(kBlack);
198 gPad->SetLogx(
false);
201 histW->SetTitle(
"Whitened WDM coefficients distribution");
212 plot->
graph[1]->SetTitle(
"Whitened data PSD");
219 double R = w.
rate()/
M;
223 for(
int n=0;
n<
N;
n++) {
226 for(
int m=0;
m<
M;
m++) {
232 rms = sqrt(rms/M-avr*avr);
235 TIM[
n]=
n*(1./double(M));
241 plot->
graph[2]->SetTitle(
"AVR (black )RMS (red) of the whitened data");
242 plot->
graph[2]->GetHistogram()->GetYaxis()->SetRangeUser(-1,2);
virtual size_t size() const
virtual void rate(double r)
cout<< "skymap size : "<< L<< endl;for(int l=0;l< L;l++) sm.set(l, l);sm > const_cast< char * >("skymap.dat")
cout<< endl;cout<< "ts size = "<< ts.size()<< " ts rate = "<< ts.rate()<< endl;tf.Forward(ts, wdm);int levels=tf.getLevel();cout<< "tf size = "<< tf.size()<< endl;double dF=tf.resolution();double dT=1./(2 *dF);cout<< "rate(hz) : "<< RATE<< "\t layers : "<< nLAYERS<< "\t dF(hz) : "<< dF<< "\t dT(ms) : "<< dT *1000.<< endl;int itime=TIME_PIXEL_INDEX;int ifreq=FREQ_PIXEL_INDEX;int index=(levels+1)*itime+ifreq;double time=itime *dT;double freq=(ifreq >0)?ifreq *dF:dF/4;cout<< endl;cout<< "PIXEL TIME = "<< time<< " sec "<< endl;cout<< "PIXEL FREQ = "<< freq<< " Hz "<< endl;cout<< endl;wavearray< double > x
WDM< double > wdm(nLAYERS, nLAYERS, 6, 10)
CWB::frame fr(FRLIST_NAME)
std::vector< TGraph * > graph
virtual void start(double s)
void plot(wavearray< double > &, char *=NULL, int=1, double=0., double=0., bool=false, float=0., float=0., bool=false, float=0., bool=false)
int getLayer(wavearray< DataType_t > &w, double n)
param: n - layer number
void readFrames(char *filename, char *channel, wavearray< double > &w)
void Forward(int n=-1)
param: wavelet - n is number of steps (-1 means full decomposition)
sprintf(tfres,"(1/%g)x(%g) (sec)x(Hz)", 2 *df, df)
frfile getFrList(int istart, int istop, int segEdge)
DataType_t getSample(int n, double m)
WaveDWT< DataType_t > * pWavelet
virtual void resize(unsigned int)
void Inverse(int n=-1)
param: n - number of steps (-1 means full reconstruction)
virtual WSeries< double > white(double, int, double=0., double=0.)
what it does: each wavelet layer is devided into k intervals.