23 Style_t markers[32]= {20,21,22,23,29,29,21,22,20,21,22,23,29,20,21,22,
24 21,22,23,29,29,21,22,20,21,22,23,29,20,21,22,20 };
26 Color_t
colors[32] = { 8, 0, 2, 8,43, 7, 8, 4, 4, 2,43, 1, 3, 1, 6, 7,
27 6, 3, 2, 8,43, 7, 8, 4, 4, 2,43, 1, 3, 1, 6, 7 };
125 #define MODE "exclusive"
127 FAR_PATH[0]=
"FARvsRHO_ER8b_12Sep20Oct_C0101_BKG_LF_rMRA_run1ato10a_h1_glitch_removed_eunmodeled.txt";
128 FAR_PATH[1]=
"FARvsRHO_ER8b_12Sep20Oct_C0101_BKG_LF_rMRA_run1ato10a_h1_glitch_removed_econstrained.txt";
129 FAR_PATH[2]=
"FARvsRHO_ER8b_12Sep20Oct_C0101_BKG_LF_rMRA_run1ato10a_h1_glitch_removed_chirp.txt";
130 FAR_PATH[3]=
"FARvsLowRHO_ER8b_12Sep20Oct_C0101_BKG_LF_rMRA_run1ato10a_eunmodeled.txt";
131 FAR_PATH[4]=
"FARvsLowRHO_ER8b_12Sep20Oct_C0101_BKG_LF_rMRA_run1ato10a_econstrained.txt";
132 FAR_PATH[5]=
"FARvsLowRHO_ER8b_12Sep20Oct_C0101_BKG_LF_rMRA_run1ato10a_chirp.txt";
142 gStyle->SetFrameBorderMode(0);
145 gStyle->SetTitleFont(72);
146 gStyle->SetMarkerColor(50);
147 gStyle->SetLineColor(kWhite);
148 gStyle->SetTitleW(0.98);
149 gStyle->SetTitleH(0.05);
150 gStyle->SetTitleY(0.98);
151 gStyle->SetFillColor(kWhite);
152 gStyle->SetLineColor(kWhite);
153 gStyle->SetTitleFont(12,
"D");
155 TCanvas *
canvas =
new TCanvas(
"roc",
"roc", 300,40, 800, 500);
157 canvas->ToggleEventStatus();
161 canvas->SetFillColor(kWhite);
175 cout <<
n <<
" OBS_TIME : " <<
OBS_TIME[
n] << endl;
177 vector<double> rho_far;
181 cout <<
"rate_threshold : " << fname << endl;
187 #if ( MODE == "exclusive")
189 ofname.ReplaceAll(
".txt",
"_comp_paper.txt");
192 if(rmin<RHO[0]) rmin=RHO[0];
193 if(rmax>RHO[far_size-1]) rmax=RHO[far_size-1];
194 sigma_lines[nGR] =
false;
199 gr[nGR++] =
new TGraphErrors(far_size,RHO.
data,FAR.
data,eRHO.
data,eFAR.
data);
200 gr[nGR-1]->SetMarkerStyle(20);
201 gr[nGR-1]->SetMarkerSize(0.35);
202 if(n==0) gr[nGR-1]->SetMarkerColor(8);
203 if(n==1) gr[nGR-1]->SetMarkerColor(kBlack);
204 if(n==2) gr[nGR-1]->SetMarkerColor(kRed);
205 if(n==3) gr[nGR-1]->SetMarkerColor(8);
206 if(n==4) gr[nGR-1]->SetMarkerColor(kBlack);
207 if(n==5) gr[nGR-1]->SetMarkerColor(kRed);
208 gr[nGR-1]->SetName(TString::Format(
"gr%d",nGR-1));
213 RHO.data[0]=14.1*sqrt(2);
FAR.data[0]=1./(1369200.00/(365*24*3600));
215 gr[nGR] =
new TGraphErrors(1,
RHO.data,
FAR.data,
eRHO.data,
eFAR.data);
216 gr[nGR]->SetMarkerColor(4);
217 gr[nGR]->SetMarkerStyle(22);
218 gr[nGR]->SetMarkerSize(2);
219 FAR_name[nGR]=
"GW150914";
223 TMultiGraph*
mg =
new TMultiGraph();
226 else sprintf(gTitle,
"FAR Comparison");
229 #if ( MODE == "inclusive")
231 sprintf(gTitle,
"ER8b/O1 (C0101) background of unmodeled/constrained/chirp data sets (Sep 12 - Oct 20)");
233 #if ( MODE == "exclusive")
236 sprintf(gTitle,
"ER8b/O1 (C0101) background of edge/bulk/chirp data sets (Sep 12 - Oct 20)");
240 mg->SetTitle(gTitle);
241 for(
int n=0;
n<nGR;
n++) mg->Add(gr[
n]);
245 mg->GetHistogram()->GetXaxis()->SetLabelSize(0.05);
246 mg->GetHistogram()->GetYaxis()->SetLabelSize(0.05);
247 mg->GetHistogram()->GetXaxis()->SetTitleSize(0.05);
248 mg->GetHistogram()->GetYaxis()->SetTitleSize(0.05);
249 mg->GetHistogram()->GetXaxis()->SetLabelFont(42);
250 mg->GetHistogram()->GetYaxis()->SetLabelFont(42);
251 mg->GetHistogram()->GetYaxis()->SetLabelOffset(0.01);
252 mg->GetHistogram()->GetYaxis()->SetTitleOffset(1.5);
255 if(rho_min>=0) rmin=rho_min*sqrt(2);
256 if(rho_max>=0) rmax=rho_max*sqrt(2);
258 mg->GetHistogram()->GetXaxis()->SetRangeUser(rmin,rmax);
260 mg->GetXaxis()->SetTitle(gr[0]->
GetXaxis()->GetTitle());
261 mg->GetXaxis()->SetLabelFont(42);
262 mg->GetYaxis()->SetLabelFont(42);
263 mg->GetXaxis()->SetTitleFont(42);
264 mg->GetYaxis()->SetTitleFont(42);
265 mg->GetXaxis()->SetTitleOffset(1.20);
266 mg->GetYaxis()->SetTitleOffset(1.20);
267 mg->GetXaxis()->SetTitleSize(0.04);
268 mg->GetYaxis()->SetTitleSize(0.04);
269 mg->GetXaxis()->CenterTitle(
true);
270 mg->GetYaxis()->CenterTitle(
true);
271 mg->GetXaxis()->SetTitle(
"Coherent Network SNR ( #eta_{c} )");
273 mg->GetYaxis()->SetTitle(
"FAR ( yr^{-1} )");
280 TLatex *pS1 =
new TLatex(18.93,2.61,
"GW150914");
281 pS1->SetTextFont(52);
282 pS1->SetTextSize(0.040);
283 pS1->SetLineWidth(2);
284 pS1->SetTextColor(1);
287 TPad *pad = canvas->GetPad(0);;
289 TFile *
froot =
new TFile(
"chirp_set_low_high_rho_paper.root",
"RECREATE");
302 leg =
new TLegend(0.4120603,0.6265823,0.6306533,0.8607595,NULL,
"brNDC");
305 leg->SetBorderSize(1);
306 leg->SetTextAlign(22);
307 leg->SetTextFont(12);
308 leg->SetLineColor(1);
309 leg->SetLineStyle(1);
310 leg->SetLineWidth(1);
311 leg->SetFillColor(0);
312 leg->SetFillStyle(1001);
313 leg->SetTextSize(0.03);
314 leg->SetLineColor(kBlack);
315 leg->SetFillColor(kWhite);
318 for(
int n=0;n<nGR;n++) {
323 #if ( MODE == "inclusive")
326 if(n==0)
strcpy(legLabel,
"UnModeled");
327 if(n==1)
strcpy(legLabel,
"Constrained");
329 #if ( MODE == "exclusive")
334 if(n==0)
strcpy(legLabel,
"B1");
335 if(n==1)
strcpy(legLabel,
"B2");
337 if(n==2)
strcpy(legLabel,
"Chirp");
339 if(n==6)
strcpy(legLabel,
"GW150914");
341 TLegendEntry* eleg = leg->AddEntry(gr[n],legLabel,
"lp");
345 leg->SetBorderSize(1);
346 leg->SetTextAlign(22);
347 leg->SetTextFont(12);
348 leg->SetLineColor(1);
349 leg->SetLineStyle(1);
350 leg->SetLineWidth(1);
351 leg->SetFillColor(0);
352 leg->SetFillStyle(1001);
353 leg->SetTextSize(0.04);
354 leg->SetLineColor(kBlack);
359 TMarker *mP1 =
new TMarker(13.2658,2512.81, 20);
360 mP1->SetMarkerStyle(20);
361 mP1->SetMarkerSize(1);
362 mP1->SetMarkerColor(kGreen);
365 TMarker *mP2 =
new TMarker(13.2658,479.617, 20);
366 mP2->SetMarkerStyle(20);
367 mP2->SetMarkerSize(1);
368 mP2->SetMarkerColor(kBlack);
371 TMarker *mP3 =
new TMarker(13.2658,91.7268, 20);
372 mP3->SetMarkerStyle(20);
373 mP3->SetMarkerSize(1);
374 mP3->SetMarkerColor(kRed);
378 #if ( MODE == "inclusive")
380 far_plot_name =
"CompareFAR_C0101_UnModeled_Constrained_Chirp_run1ato10a_h1_glitch_removed_inclusive";
382 #if ( MODE == "exclusive")
384 far_plot_name =
"CompareFAR_C0101_eUnModeled_eConstrained_Chirp_run1ato10a_h1_glitch_removed_exclusive";
386 if(far_plot_name!=
"") {
387 char gfileName[1024];
388 sprintf(gfileName,
"%s.gif",far_plot_name.Data());
389 canvas->Print(gfileName);
391 pfileName.ReplaceAll(
".gif",
".png");
393 sprintf(cmd,
"convert %s %s",gfileName,pfileName.Data());
396 sprintf(cmd,
"rm %s",gfileName);
412 double year = (24.*3600.*365.);
421 if (!in.good()) {cout <<
"Error Opening File : " << fname.Data() << endl;
exit(1);}
427 if (!in.good())
break;
429 if(rho>22.)
continue;
453 if (!out.good()) {cout <<
"Error Opening File : " << fname.Data() << endl;
exit(1);}
455 for(
int i=0;
i<RHO.
size();
i++) {
456 out << RHO[
i] <<
"\t" << FAR[
i] << endl;
virtual size_t size() const
int LINE_MARKER[nFAR_MAX]
double OBS_TIME[nFAR_MAX]
double ZERO_LAG_TIME[nFAR_MAX]
TString FAR_NAME[nFAR_MAX]
void Draw_FARvsRHO_ER8b_12Sep20Oct_C0101_BKG_LF_rMRA_run1ato10a()
TString FAR_PATH[nFAR_MAX]
void PlotFAR(int nfar, TString far_plot_name, double rho_min=-1, double rho_max=-1)
int writeParameters(TString fname, wavearray< double > &RHO, wavearray< double > &FAR)
cout<<"Number of Entries: "<< num<< endl;double *slag1=new double[slag_entries];slag1=wave.GetV1();double *slag2=new double[slag_entries];slag2=wave.GetV2();char mytitle[256];double SlagMax=wave.GetMaximum("slag")+segLen/2.;double SlagMin=wave.GetMinimum("slag")-segLen/2.;int NSlag=TMath::FloorNint((SlagMax-SlagMin)/segLen);cout<< "SLAG MAX : "<< wave.GetMaximum("slag")<< " s SLAG MIN : "<< wave.GetMinimum("slag")<< " s #SLAGS : "<< NSlag-1<< endl;if(NSlag==1){cout<<"Just one slag....Skipping further execution!"<< endl;exit(0);}sprintf(mytitle,"FAR distribution over slags (post cat3 & rho>%f)", T_cut);TH2F *Slag=new TH2F("SLAG", mytitle, NSlag, SlagMin/86400., SlagMax/86400., NSlag, SlagMin/86400., SlagMax/86400.);Slag-> GetXaxis() -> SetTitle("slag[1] shift [day]")
strcpy(RunLabel, RUN_LABEL)
sprintf(tfres,"(1/%g)x(%g) (sec)x(Hz)", 2 *df, df)
virtual void resize(unsigned int)
int readParameters(TString fname, wavearray< double > &RHO, wavearray< double > &eRHO, wavearray< double > &FAR, wavearray< double > &eFAR)