FairRoot/PandaRoot
Functions | Variables
overall_perf_toy.C File Reference

Go to the source code of this file.

Functions

void setStyle ()
 
void renorm (double *a, int n=4)
 
void config_graph (TGraph *g, int m=20, TString name="")
 
int overall_perf_toy ()
 

Variables

int cols [10] = {1,2,4,6,kOrange+5,9,kGreen+2, kBlue+3,kCyan-2,kMagenta+2}
 

Function Documentation

void config_graph ( TGraph *  g,
int  m = 20,
TString  name = "" 
)

Definition at line 25 of file overall_perf_toy.C.

References cols, m, and name.

26 {
27  g->SetMarkerStyle(m);
28  g->SetMarkerColor(1);
29  g->SetMarkerSize(1.2);
30  g->SetLineWidth(2);
31  g->SetLineColor(cols[m-20]);
32  g->SetMarkerColor(cols[m-20]);
33  g->SetName(name);
34 }
__m128 m
Definition: P4_F32vec4.h:28
TFile * g
int cols[10]
Definition: evaltrig.C:69
TString name
int overall_perf_toy ( )

Definition at line 36 of file overall_perf_toy.C.

References c2, c3, c4, config_graph(), h2, h3, h4, renorm(), SetLogy(), and setStyle().

37 {
38  setStyle();
39 
40  TCanvas *cb1=new TCanvas("cb1","cb1",10,10,700,500);
41  TCanvas *cb2=new TCanvas("cb2","cb2",30,30,700,500);
42  TCanvas *cb3=new TCanvas("cb3","cb3",50,50,700,500);
43 
44  TCanvas *c2=new TCanvas("c2","c2",900,10,700,500);
45  TCanvas *c3=new TCanvas("c3","c3",900,500,700,500);
46  TCanvas *c4=new TCanvas("c4","c4",900,500,700,500);
47 
48  TH1F *hb1=new TH1F("hb1","Background fraction",100,2.0, 6.0);
49  hb1->SetMaximum(0.3);
50  hb1->SetMinimum(0);
51  hb1->SetStats(0);
52  hb1->SetXTitle("#sqrt{s} [GeV]");
53 
54  TH1F *hb2=new TH1F("hb2","Background fraction",100,2.0, 6.0);
55  hb2->SetMaximum(1.0);
56  hb2->SetMinimum(5e-4);
57  hb2->SetStats(0);
58  hb2->SetXTitle("#sqrt{s} [GeV]");
59 
60  TH1F *hb3=new TH1F("hb3","Background fraction",100,2.0, 6.0);
61  hb3->SetMaximum(1.0);
62  hb3->SetMinimum(5e-4);
63  hb3->SetStats(0);
64  hb2->SetXTitle("#sqrt{s} [GeV]");
65 
66  TH1F *h2=new TH1F("h2","Efficiencies - mass cut only",100,2.0, 6.0);
67  h2->SetMaximum(1);
68  h2->SetMinimum(0.6);
69  h2->SetStats(0);
70  h2->SetXTitle("#sqrt{s} [GeV]");
71 
72  TH1F *h3=new TH1F("h3","Efficiencies - all cuts (high suppression)",100,2.0, 6.0);
73  h3->SetMaximum(1);
74  h3->SetMinimum(0.0);
75  h3->SetStats(0);
76  h3->SetXTitle("#sqrt{s} [GeV]");
77 
78  TH1F *h4=new TH1F("h4","Efficiencies - all cuts (high efficiency)",100,2.0, 6.0);
79  h4->SetMaximum(1);
80  h4->SetMinimum(0.6);
81  h4->SetStats(0);
82  h4->SetXTitle("#sqrt{s} [GeV]");
83 
84  double E[4]={2.4, 3.77, 4.5, 5.5};
85  double E2[3]={ 3.77, 4.5, 5.5};
86  double E3[2]={4.5, 5.5};
87  double E4[1]={ 5.5};
88 
89  // ****
90  // *** Combinatorics and mass cut only
91  // ****
92 // e^+e^- \phi \eta_cJ/\psi(ee)J/\psi(\mu\mu) D^0 D^\pm D_s \Lambda \Lambda_c DPM
93 // 2.4 | 79.41 88.32 - - - - - - 91.12 - 3.46
94 // 3.77 | 80.28 91.16 87.41 79.88 81.49 85.16 81.87 - 91.12 - 11.70
95 // 4.5 | 80.43 92.08 89.24 80.55 82.01 87.36 85.55 89.13 90.87 - 15.27
96 // 5.5 | 80.88 91.81 89.14 80.84 82.78 87.04 85.54 90.38 91.05 89.06 21.93
97 
98  double ee1[4] = {79.41 , 80.28 , 80.43, 80.88};
99  double phi1[4] = {88.32 , 91.16 , 92.08 , 91.81 };
100  double etac1[3] = { 87.41 , 89.24 , 89.14 };
101  double j11[3] = { 79.88 , 80.55 , 80.84};
102  double j21[3] = { 81.49 , 82.01 , 82.78};
103  double d01[3] = {85.16 , 87.36 , 87.04 };
104  double d1[3] = {81.87 , 85.55 , 85.54 };
105  double ds1[2] = {89.13 , 90.38 };
106  double lam1[4] = {91.12 , 91.12 , 90.87 , 91.05 };
107  double lamc1[1] = { 89.06 };
108  double dpm1[4] = {3.46 , 11.70 , 15.27 , 21.93};
109 
110  // ****
111  // *** values for forced factor 1000 suppression
112  // ****
113 // e^+e^- \phi \eta_cJ/\psi(ee)J/\psi(\mu\mu) D^0 D^\pm D_s \Lambda \Lambda_c DPM
114 // 2.4 | 79.41 83.99 - - - - - - 82.63 - 0.08
115 // 3.77 | 80.27 85.58 39.49 79.17 80.90 47.31 25.66 - 82.30 - 0.10
116 // 4.5 | 79.95 86.57 41.57 79.49 81.02 33.75 20.73 26.69 80.75 - 0.10
117 // 5.5 | 80.37 87.18 56.96 77.49 79.96 61.01 55.85 57.79 82.53 37.52 0.09
118 
119  double ee2[4] = {79.41 , 80.27 , 79.95 , 80.37};
120  double phi2[4] = {83.99 ,85.58 ,86.57 ,87.18 };
121  double etac2[3] = { 39.49, 41.57 , 56.96 };
122  double j12[3] = {79.17 , 79.49 , 77.49 };
123  double j22[3] = {80.90 ,81.02 , 79.96 };
124  double d02[3] = {47.31 ,33.75 , 61.01};
125  double d2[3] = { 25.66 ,20.73 ,55.85 };
126  double ds2[2] = { 26.69 , 57.79 };
127  double lam2[4] = { 82.63, 82.30,80.75 , 82.53};
128  double lamc2[1] = { 37.52 };
129  double dpm2[4] = {0.08 ,0.10 , 0.10,0.09 };
130 
131  // ****
132  // *** values for efficiency 90
133  // ****
134 
135 /* e^+e^- \phi \eta_cJ/\psi(ee)J/\psi(\mu\mu) D^0 D^\pm D_s \Lambda \Lambda_c DPM
136 2.4 | 79.41 83.99 - - - - - - 82.63 - 0.08
137 3.77 | 80.27 86.13 68.33 79.17 80.90 76.69 72.00 - 82.30 - 0.72
138 4.5 | 79.95 86.58 73.64 79.59 81.12 78.50 75.50 74.86 80.75 - 1.14
139 5.5 | 80.37 87.18 70.01 77.58 80.03 78.40 74.48 74.16 82.53 72.29 0.98 */
140 
141  double ee3[4] = {79.41 , 80.27 , 78.95 , 80.37};
142  double phi3[4] = { 83.99,86.13 , 86.58 , 87.18 };
143  double etac3[3] = { 68.33 , 73.64, 70.0};
144  double j13[3] = { 79.17, 79.59,77.58 };
145  double j23[3] = { 80.90, 81.12, 80.03 };
146  double d03[3] = {76.69 ,78.50 , 78.40 };
147  double d3[3] = { 72.00 , 75.50, 74.48 };
148  double ds3[2] = { 74.86, 74.16 };
149  double lam3[4] = {82.63 , 82.30, 80.75, 82.53};
150  double lamc3[1] = { 72.29 };
151  double dpm3[4] = { 0.08, 0.72 ,1.14 , 0.98};
152 
153  renorm(dpm1);
154  renorm(dpm2);
155  renorm(dpm3);
156  renorm(ee1);
157  renorm(ee2);
158  renorm(ee3);
159  renorm(phi1);
160  renorm(phi2);
161  renorm(phi3);
162  renorm(etac1,3);
163  renorm(etac2,3);
164  renorm(etac3,3);
165  renorm(j11,3);
166  renorm(j12,3);
167  renorm(j13,3);
168  renorm(j21,3);
169  renorm(j22,3);
170  renorm(j23,3);
171  renorm(d01,3);
172  renorm(d02,3);
173  renorm(d03,3);
174  renorm(d1,3);
175  renorm(d2,3);
176  renorm(d3,3);
177  renorm(ds1,2);
178  renorm(ds2,2);
179  renorm(ds3,2);
180  renorm(lam1);
181  renorm(lam2);
182  renorm(lam3);
183  renorm(lamc1,1);
184  renorm(lamc2,1);
185  renorm(lamc3,1);
186 
187  TGraph *gdpm1=new TGraph(4,E,dpm1);
188  TGraph *gdpm2=new TGraph(4,E,dpm2);
189  TGraph *gdpm3=new TGraph(4,E,dpm3);
190 
191  TGraph *gee1=new TGraph(4,E,ee1);
192  TGraph *gee2=new TGraph(4,E,ee2);
193  TGraph *gee3=new TGraph(4,E,ee3);
194 
195  TGraph *gphi1=new TGraph(4,E,phi1);
196  TGraph *gphi2=new TGraph(4,E,phi2);
197  TGraph *gphi3=new TGraph(4,E,phi3);
198 
199  TGraph *get1=new TGraph(3,E2,etac1);
200  TGraph *get2=new TGraph(3,E2,etac2);
201  TGraph *get3=new TGraph(3,E2,etac3);
202 
203  TGraph *gj11=new TGraph(3,E2,j11);
204  TGraph *gj12=new TGraph(3,E2,j12);
205  TGraph *gj13=new TGraph(3,E2,j13);
206 
207  TGraph *gj21=new TGraph(3,E2,j21);
208  TGraph *gj22=new TGraph(3,E2,j22);
209  TGraph *gj23=new TGraph(3,E2,j23);
210 
211  TGraph *gd01=new TGraph(3,E2,d01);
212  TGraph *gd02=new TGraph(3,E2,d02);
213  TGraph *gd03=new TGraph(3,E2,d03);
214 
215  TGraph *gd1=new TGraph(3,E2,d1);
216  TGraph *gd2=new TGraph(3,E2,d2);
217  TGraph *gd3=new TGraph(3,E2,d3);
218 
219  TGraph *gds1=new TGraph(2,E3,ds1);
220  TGraph *gds2=new TGraph(2,E3,ds2);
221  TGraph *gds3=new TGraph(2,E3,ds3);
222 
223  TGraph *glam1=new TGraph(4,E,lam1);
224  TGraph *glam2=new TGraph(4,E,lam2);
225  TGraph *glam3=new TGraph(4,E,lam3);
226 
227  TGraph *glc1=new TGraph(1,E4,lamc1);
228  TGraph *glc2=new TGraph(1,E4,lamc2);
229  TGraph *glc3=new TGraph(1,E4,lamc3);
230 
231 
232  config_graph(gdpm1,20, "gdpm1");config_graph(gdpm2,21, "gdpm2");
233  config_graph(gee1,20, "gee1");config_graph(gee2,20, "gee2");
234  config_graph(gphi1,21, "gphi1");config_graph(gphi2,21, "gphi2");
235  config_graph(gj11,22 , "gj11");config_graph(gj12,22, "gj12");
236  config_graph(gj21,23, "gj21");config_graph(gj22,23, "gj22");
237  config_graph(get1,24, "get1");config_graph(get2,24, "get2");
238  config_graph(gd01,25, "gd01");config_graph(gd02,25, "gd02");
239  config_graph(gd1,26, "gd1");config_graph(gd2,26, "gd2");
240  config_graph(gds1,27, "gds1");config_graph(gds2,27, "gds2");
241  config_graph(glam1,28, "glam1");config_graph(glam2,28, "glam2");
242  config_graph(glc1,29, "glc1");config_graph(glc2,29, "glc2");
243 
244  config_graph(gdpm3,21, "gdpm3");
245  config_graph(gee3,20, "gee3");
246  config_graph(gphi3,21, "gphi3");
247  config_graph(gj13,22 , "gj13");
248  config_graph(gj23,23, "gj23");
249  config_graph(get3,24, "get3");
250  config_graph(gd03,25, "gd03");
251  config_graph(gd3,26, "gd3");
252  config_graph(gds3,27, "gds3");
253  config_graph(glam3,28, "glam31");
254  config_graph(glc3,29, "glc3");
255 
256  glc1->SetMarkerSize(2);glc2->SetMarkerSize(2);glc3->SetMarkerSize(2);
257 
258 
259  // **********
260  // ********** background mass only
261  // **********
262 
263  (cb1->cd())->SetLogy(0);
264  gPad->SetGridx();
265  gPad->SetGridy();
266 
267  hb1->Draw();
268  gdpm1->Draw("LP same");
269  //gdpm2->Draw("LP same");
270  //TLegend *leg1 = new TLegend(0.12,0.75,0.58,0.9);
271  TLegend *leg1 = new TLegend(0.12,0.83,0.58,0.9);
272  leg1->AddEntry("gdpm1","mass cut only","lp");
273  //leg1->AddEntry("gdpm2","all cuts (high suppression)","lp");
274  leg1->Draw();
275 
276  cb1->SaveAs("figtoy_v2/Background_massonly.gif");
277  cb1->SaveAs("figtoy_v2/Background_massonly.pdf");
278 
279  // **********
280  // ********** background mass only + eff 90
281  // **********
282 
283  (cb2->cd())->SetLogy(1);
284  gPad->SetGridx();
285  gPad->SetGridy();
286 
287  hb2->Draw();
288  gdpm1->Draw("LP same");
289  gdpm2->Draw("LP same");
290  //TLegend *leg1 = new TLegend(0.12,0.75,0.58,0.9);
291  TLegend *leg11 = new TLegend(0.12,0.75,0.62,0.9);
292  leg11->AddEntry("gdpm1","mass cut only","lp");
293  leg11->AddEntry("gdpm2","all cuts (high supression)","lp");
294  leg11->Draw();
295 
296  cb2->SaveAs("figtoy_v2/Background_supr1000.gif");
297  cb2->SaveAs("figtoy_v2/Background_supr1000.pdf");
298 
299  // **********
300  // ********** background mass only + supr 1000
301  // **********
302 
303  (cb3->cd())->SetLogy(1);
304  gPad->SetGridx();
305  gPad->SetGridy();
306 
307  hb3->Draw();
308  gdpm1->Draw("LP same");
309  gdpm3->Draw("LP same");
310  //TLegend *leg1 = new TLegend(0.12,0.75,0.58,0.9);
311  TLegend *leg12 = new TLegend(0.12,0.75,0.62,0.9);
312  leg12->AddEntry("gdpm1","mass cut only","lp");
313  leg12->AddEntry("gdpm3","all cuts (high efficiency)","lp");
314  leg12->Draw();
315 
316  cb3->SaveAs("figtoy_v2/Background_eff90.gif");
317  cb3->SaveAs("figtoy_v2/Background_eff90.pdf");
318 
319  // **********
320  // ********** Efficiencies mass only
321  // **********
322 
323  c2->cd();
324  gPad->SetGridx();
325  gPad->SetGridy();
326  h2->Draw();
327  gee1->Draw("LP same");
328  gphi1->Draw("LP same");
329  get1->Draw("LP same");
330  gj11->Draw("LP same");
331  gj21->Draw("LP same");
332  gd01->Draw("LP same");
333  gd1->Draw("LP same");
334  gds1->Draw("LP same");
335  glam1->Draw("LP same");
336  glc1->Draw("LP same");
337 // TLegend *leg2 = new TLegend(0.12,0.68,0.5,0.9);
338  TLegend *leg2 = new TLegend(0.12,0.16,0.5,0.40);
339  leg2->SetNColumns(3);
340  leg2->AddEntry("glam1","#Lambda","lp");
341  leg2->AddEntry("glc1","#Lambda_{c}","lp");
342  leg2->AddEntry("gphi1","#phi","lp");
343  leg2->AddEntry("gj11","J/#psi(2e)","lp");
344  leg2->AddEntry("gj21","J/#psi(2#mu)","lp");
345  leg2->AddEntry("get1","#eta_{c}","lp");
346  leg2->AddEntry("gd01","D^{0}","lp");
347  leg2->AddEntry("gd1","D^{#pm}","lp");
348  leg2->AddEntry("gds1","D_{s}","lp");
349  leg2->AddEntry("gee1","e+e-","lp");
350  leg2->Draw();
351  c2->SaveAs("figtoy_v2/Efficiency_sum_mass_only.gif");
352  c2->SaveAs("figtoy_v2/Efficiency_sum_mass_only.pdf");
353 
354  // **********
355  // ********** Efficiencies eff 90
356  // **********
357 
358  c3->cd();
359  gPad->SetGridx();
360  gPad->SetGridy();
361  h3->Draw();
362  gee2->Draw("LP same");
363  gphi2->Draw("LP same");
364  get2->Draw("LP same");
365  gj12->Draw("LP same");
366  gj22->Draw("LP same");
367  gd02->Draw("LP same");
368  gd2->Draw("LP same");
369  gds2->Draw("LP same");
370  glam2->Draw("LP same");
371  glc2->Draw("LP same");
372 
373  TLegend *leg3 = new TLegend(0.12,0.16,0.45,0.45);
374  leg3->SetNColumns(2);
375 /* TLegend *leg3 = new TLegend(0.12,0.66,0.5,0.9);
376  leg3->SetNColumns(3);*/
377  leg3->AddEntry("glam2","#Lambda","lp");
378  leg3->AddEntry("glc2","#Lambda_{c}","lp");
379  leg3->AddEntry("gphi2","#phi","lp");
380  leg3->AddEntry("gj12","J/#psi(2e)","lp");
381  leg3->AddEntry("gj22","J/#psi(2#mu)","lp");
382  leg3->AddEntry("get2","#eta_{c}","lp");
383  leg3->AddEntry("gd02","D^{0}","lp");
384  leg3->AddEntry("gd2","D^{#pm}","lp");
385  leg3->AddEntry("gds2","D_{s}","lp");
386  leg3->AddEntry("gee2","e+e-","lp");
387  leg3->Draw();
388  c3->SaveAs("figtoy_v2/Efficiency_sum_opt_supr1000.gif");
389  c3->SaveAs("figtoy_v2/Efficiency_sum_opt_supr1000.pdf");
390 
391  // **********
392  // ********** Efficiencies supr 1000
393  // **********
394 
395  c4->cd();
396  gPad->SetGridx();
397  gPad->SetGridy();
398  h4->Draw();
399  gee3->Draw("LP same");
400  gphi3->Draw("LP same");
401  get3->Draw("LP same");
402  gj13->Draw("LP same");
403  gj23->Draw("LP same");
404  gd03->Draw("LP same");
405  gd3->Draw("LP same");
406  gds3->Draw("LP same");
407  glam3->Draw("LP same");
408  glc3->Draw("LP same");
409 
410  TLegend *leg4 = new TLegend(0.12,0.16,0.45,0.45);
411  leg4->SetNColumns(2);
412 /* TLegend *leg3 = new TLegend(0.12,0.66,0.5,0.9);
413  leg3->SetNColumns(3);*/
414  leg4->AddEntry("glam3","#Lambda","lp");
415  leg4->AddEntry("glc3","#Lambda_{c}","lp");
416  leg4->AddEntry("gphi3","#phi","lp");
417  leg4->AddEntry("gj13","J/#psi(2e)","lp");
418  leg4->AddEntry("gj23","J/#psi(2#mu)","lp");
419  leg4->AddEntry("get3","#eta_{c}","lp");
420  leg4->AddEntry("gd03","D^{0}","lp");
421  leg4->AddEntry("gd3","D^{#pm}","lp");
422  leg4->AddEntry("gds3","D_{s}","lp");
423  leg4->AddEntry("gee3","e+e-","lp");
424  leg4->Draw();
425  c4->SaveAs("figtoy_v2/Efficiency_sum_opt_eff90.gif");
426  c4->SaveAs("figtoy_v2/Efficiency_sum_opt_eff90.pdf");
427  return 0;
428 }
void config_graph(TGraph *g, int m=0, TString name="")
Definition: evaltrig.C:73
void setStyle()
Definition: crosstag.C:39
gPad SetLogy()
c4
Definition: plot_dirc.C:71
TH1F * h4
c2
Definition: plot_dirc.C:39
TH1F * h3
void renorm(double *a, int n=4)
c3
Definition: plot_dirc.C:50
void renorm ( double *  a,
int  n = 4 
)

Definition at line 20 of file overall_perf_toy.C.

References i, and n.

21 {
22  for (int i=0;i<n;++i) a[i]/=100.;
23 }
Int_t i
Definition: run_full.C:25
int n
Int_t a
Definition: anaLmdDigi.C:126
void setStyle ( )

Definition at line 5 of file overall_perf_toy.C.

6 {
7  gStyle->SetPadTopMargin(0.10);
8  gStyle->SetPadBottomMargin(0.16);
9  gStyle->SetPadLeftMargin(0.12);
10  gStyle->SetPadRightMargin(0.05);
11 
12  gStyle->SetLabelSize(0.05,"X");
13  gStyle->SetLabelSize(0.05,"Y");
14 
15  gStyle->SetTitleH(0.07);
16  gStyle->SetTitleX(0.08);
17  gStyle->SetTitleOffset(1.3,"x");
18  gStyle->SetTitleXSize(0.055);
19 }

Variable Documentation

int cols[10] = {1,2,4,6,kOrange+5,9,kGreen+2, kBlue+3,kCyan-2,kMagenta+2}

Definition at line 2 of file overall_perf_toy.C.