ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/auterman/SusyScan/PlotScript/GlobalFunctions.h
Revision: 1.10
Committed: Wed Feb 9 21:00:29 2011 UTC (14 years, 3 months ago) by auterman
Content type: text/plain
Branch: MAIN
Changes since 1.9: +343 -64 lines
Log Message:
updated Tevatron and LEP contours

File Contents

# Content
1 #include "SusyScan.h"
2 #include "GeneratorMasses.h"
3
4 #include "TGraph.h"
5 #include "TLatex.h"
6 #include "TF1.h"
7 #include "TGraphErrors.h"
8 #include "TSpline.h"
9 #include "TStyle.h"
10 #include "TMath.h"
11
12 #include <cmath>
13 #include <iostream>
14
15
16 double Luminosity = 36.3; //[pb^-1]
17 double Mzero(const SusyScan* p){ return p->Mzero; }
18 double Mhalf(const SusyScan* p){ return p->Mhalf; }
19 double MGluino(const SusyScan* p){ return p->MGL; }
20 double MSquarkL(const SusyScan* p){ return p->MUL; }
21 double MSquarkR(const SusyScan* p){ return p->MUR; }
22 double MChi1(const SusyScan* p){ return p->MZ1; }
23 double MChi2(const SusyScan* p){ return p->MZ2; }
24 double MChi3(const SusyScan* p){ return p->MZ3; }
25 double MChi4(const SusyScan* p){ return p->MZ4; }
26 double MCha1(const SusyScan* p){ return p->MW1; }
27 double MCha2(const SusyScan* p){ return p->MW2; }
28 double Xsection(const SusyScan* p){ return p->Xsection; }
29 double ExpXsecLimit(const SusyScan* p){ return p->ExpXsecLimit; }
30 double ObsXsecLimit(const SusyScan* p){ return p->ObsXsecLimit; }
31 double Signal(const SusyScan* p){ return p->signal; }
32 double SignalUncertainty(const SusyScan* p){ return p->signal_uncertainty; }
33 double SignalRelUncertainty(const SusyScan* p){ return p->signal_uncertainty/p->signal; }
34 double ExpExclusion(const SusyScan* p){ return (ExpXsecLimit(p)<Xsection(p)&&ExpXsecLimit(p)>0.01?1:0.01); }
35 double ObsExclusion(const SusyScan* p){ return (ObsXsecLimit(p)<Xsection(p)&&ObsXsecLimit(p)>0.01?1:0.01); }
36 double ExpExclCL(const SusyScan* p){ return (p->CLs_b_xsec<=0.05 ? 1:0.01); }
37 double ExpExclCLm2sigma(const SusyScan* p){ return (p->CLs_b_n2_xsec<=0.05 ? 1:0.01); }
38 double ExpExclCLm1sigma(const SusyScan* p){ return (p->CLs_b_n1_xsec<=0.05 ? 1:0.01); }
39 double ExpExclCLp1sigma(const SusyScan* p){ return (p->CLs_b_p1_xsec<=0.05 ? 1:0.01); }
40 double ExpExclCLp2sigma(const SusyScan* p){ return (p->CLs_b_p2_xsec<=0.05 ? 1:0.01); }
41 double ObsExclCL(const SusyScan* p){ return (p->CLs_xsec<=0.05 ? 1:0.01); }
42 double SoverSqrtB(const SusyScan* p){ return p->signal/(sqrt(p->background)+p->background_uncertainty+p->signal_uncertainty); }
43 double XsecOverObserved(const SusyScan* p){ return (ObsXsecLimit(p)==0 ? 9999. : Xsection(p)/ObsXsecLimit(p)); }
44 double XsecOverExpected(const SusyScan* p){ return (ExpXsecLimit(p)==0 ? 9999. : Xsection(p)/ExpXsecLimit(p)); }
45 double SignalAcceptance(const SusyScan* p){ return p->signal / (Luminosity*Xsection(p)); }
46 double ExpNSignLimit(const SusyScan* p){ return p->ExpNsigLimit; }
47 double ObsNSignLimit(const SusyScan* p){ return p->ObsNsigLimit; }
48 double PLExpNSignLimit(const SusyScan* p){ return p->PLExpNsigLimit; }
49 double PLObsNSignLimit(const SusyScan* p){ return p->PLObsNsigLimit; }
50 double PLExpXsecLimit(const SusyScan* p){ return p->PLExpXsecLimit; }
51 double PLObsXsecLimit(const SusyScan* p){ return p->PLObsXsecLimit; }
52 double PLExpExclusion(const SusyScan* p){ return (PLExpXsecLimit(p)<Xsection(p)&&PLExpXsecLimit(p)>0.01?1:0.01); }
53 double PLObsExclusion(const SusyScan* p){ return (PLObsXsecLimit(p)<Xsection(p)&&PLObsXsecLimit(p)>0.01?1:0.01); }
54 double FCExpNSignLimit(const SusyScan* p){ return p->FCExpNsigLimit; }
55 double FCObsNSignLimit(const SusyScan* p){ return p->FCObsNsigLimit; }
56 double FCExpXsecLimit(const SusyScan* p){ return p->FCExpXsecLimit; }
57 double FCObsXsecLimit(const SusyScan* p){ return p->FCObsXsecLimit; }
58 double FCExpExclusion(const SusyScan* p){ return (FCExpXsecLimit(p)<Xsection(p)&&FCExpXsecLimit(p)>0.01?1:0.01); }
59 double FCObsExclusion(const SusyScan* p){ return (FCObsXsecLimit(p)<Xsection(p)&&FCObsXsecLimit(p)>0.01?1:0.01); }
60 double MCMCExpNSignLimit(const SusyScan* p){ return p->MCMCExpNsigLimit; }
61 double MCMCObsNSignLimit(const SusyScan* p){ return p->MCMCObsNsigLimit; }
62 double MCMCExpXsecLimit(const SusyScan* p){ return p->MCMCExpXsecLimit; }
63 double MCMCObsXsecLimit(const SusyScan* p){ return p->MCMCObsXsecLimit; }
64 double MCMCExpExclusion(const SusyScan* p){ return (MCMCExpXsecLimit(p)<Xsection(p)&&MCMCExpXsecLimit(p)>0.01?1:0.01); }
65 double MCMCObsExclusion(const SusyScan* p){ return (MCMCObsXsecLimit(p)<Xsection(p)&&MCMCObsXsecLimit(p)>0.01?1:0.01); }
66 double SignalContamination(const SusyScan* p){return p->signal_contamination; }
67
68 double Mzero(const GeneratorMasses* p){ return p->Mzero; }
69 double Mhalf(const GeneratorMasses* p){ return p->Mhalf; }
70 double MGluino(const GeneratorMasses* p){ return p->MGL; }
71 double MSquarkL(const GeneratorMasses* p){ return p->MUL; }
72 double MSquarkR(const GeneratorMasses* p){ return p->MUR; }
73 double MChi1(const GeneratorMasses* p){ return p->MZ1; }
74 double MChi2(const GeneratorMasses* p){ return p->MZ2; }
75 double MChi3(const GeneratorMasses* p){ return p->MZ3; }
76 double MChi4(const GeneratorMasses* p){ return p->MZ4; }
77 double MCha1(const GeneratorMasses* p){ return p->MW1; }
78 double MCha2(const GeneratorMasses* p){ return p->MW2; }
79
80 TGraph* set_sneutrino_d0_1(Int_t tanBeta){
81 double sn_m0[14]= {0, 0, 48, 55, 80, 90,100,105,109,105,100, 72, 55,0};
82 double sn_m12[14]={0,140,210,220,237,241,242,241,230,220,210,170,150,0};
83
84 TGraph* sn_d0_gr = new TGraph(14,sn_m0,sn_m12);
85
86 sn_d0_gr->SetFillColor(kGreen+3);
87 sn_d0_gr->SetFillStyle(1001);
88
89 return sn_d0_gr;
90 }
91
92 TGraph* set_sneutrino_d0_2(Int_t tanBeta){
93 double sn_m0[9]= {0, 45, 75,115,130,150,163,185,0};
94 double sn_m12[9]={0,140,170,213,202,183,168,140,0};
95
96 TGraph* sn_d0_gr_2 = new TGraph(9,sn_m0,sn_m12);
97
98 sn_d0_gr_2->SetFillColor(kGreen+3);
99 sn_d0_gr_2->SetFillStyle(1001);
100
101 return sn_d0_gr_2;
102 }
103
104
105 TGraph* set_lep_ch_tanBeta10(){
106
107 double ch_m0[11];
108 double ch_m12[11];
109
110 ch_m0[0] = 0;
111 ch_m0[1] = 100;
112 ch_m0[2] = 200;
113 ch_m0[3] = 300;
114 ch_m0[4] = 400;
115 ch_m0[5] = 500;
116 ch_m0[6] = 600;
117 ch_m0[7] = 700;
118 ch_m0[8] = 800;
119 ch_m0[9] = 800;
120 ch_m0[10] = 0;
121
122 ch_m12[0] = 163;
123 ch_m12[1] = 162;
124 ch_m12[2] = 161;
125 ch_m12[3] = 160;
126 ch_m12[4] = 159;
127 ch_m12[5] = 158;
128 ch_m12[6] = 157;
129 ch_m12[7] = 156;
130 ch_m12[8] = 155.4;
131 ch_m12[9] = 0;
132 ch_m12[10] = 0;
133
134
135 TGraph* ch_gr = new TGraph(11,ch_m0,ch_m12);
136
137 ch_gr->SetFillColor(3);
138 ch_gr->SetLineColor(3);
139 // ch_gr->SetLineWidth(3);
140 ch_gr->SetFillStyle(1001);
141
142 return ch_gr;
143
144 }
145
146
147
148 TGraph* set_lep_ch_tanBeta3(){
149
150 double ch_m0[17];
151 double ch_m12[17];
152
153 ch_m0[0] = 0;
154 ch_m0[1] = 100;
155 ch_m0[2] = 150;
156 ch_m0[3] = 200;
157 ch_m0[4] = 250;
158 ch_m0[5] = 300;
159 ch_m0[6] = 350;
160 ch_m0[7] = 400;
161 ch_m0[8] = 450;
162 ch_m0[9] = 500;
163 ch_m0[10] = 550;
164 ch_m0[11] = 600;
165 ch_m0[12] = 650;
166 ch_m0[13] = 700;
167 ch_m0[14] = 750;
168 ch_m0[15] = 750;
169 ch_m0[16] = 0;
170
171 ch_m12[0] = 170;
172 ch_m12[1] = 168;
173 ch_m12[2] = 167;
174 ch_m12[3] = 165;
175 ch_m12[4] = 163;
176 ch_m12[5] = 161;
177 ch_m12[6] = 158;
178 ch_m12[7] = 156;
179 ch_m12[8] = 154;
180 ch_m12[9] = 152;
181 ch_m12[10] = 150;
182 ch_m12[11] = 148;
183 ch_m12[12] = 147;
184 ch_m12[13] = 145;
185 ch_m12[14] = 144;
186 ch_m12[15] = 0;
187 ch_m12[16] = 0;
188
189 TGraph* ch_gr = new TGraph(17,ch_m0,ch_m12);
190
191 ch_gr->SetFillColor(3);
192 ch_gr->SetLineColor(3);
193 // ch_gr->SetLineWidth(3);
194 ch_gr->SetFillStyle(1001);
195
196 return ch_gr;
197
198 }
199
200
201 TGraph* set_lep_ch_tanBeta50(){
202
203 double ch_m0[21];
204 double ch_m12[21];
205
206 ch_m0[0] = 200;
207 ch_m0[1] = 250;
208 ch_m0[2] = 300;
209 ch_m0[3] = 350;
210 ch_m0[4] = 400;
211 ch_m0[5] = 450;
212 ch_m0[6] = 500;
213 ch_m0[7] = 550;
214 ch_m0[8] = 600;
215 ch_m0[9] = 650;
216 ch_m0[10] = 700;
217 ch_m0[11] = 750;
218 ch_m0[12] = 800;
219 ch_m0[13] =850;
220 ch_m0[14] = 900;
221 ch_m0[15] = 950;
222 ch_m0[16] = 1000;
223 ch_m0[17] = 1050;
224 ch_m0[18] = 1100;
225 ch_m0[19] = 1100;
226 ch_m0[20] = 200;
227
228 ch_m12[0] = 157;
229 ch_m12[1] = 156;
230 ch_m12[2] = 156;
231 ch_m12[3] = 155;
232 ch_m12[4] = 155;
233 ch_m12[5] = 154;
234 ch_m12[6] = 154;
235 ch_m12[7] = 153;
236 ch_m12[8] = 153;
237 ch_m12[9] = 152;
238 ch_m12[10] = 152;
239 ch_m12[11] = 152;
240 ch_m12[12] = 152;
241 ch_m12[13] = 152;
242 ch_m12[14] = 152;
243 ch_m12[15] = 153;
244 ch_m12[16] = 153;
245 ch_m12[17] = 153;
246 ch_m12[18] = 154;
247 ch_m12[19] = 0;
248 ch_m12[20] = 0;
249
250
251 TGraph* ch_gr = new TGraph(21,ch_m0,ch_m12);
252
253 ch_gr->SetFillColor(3);
254 ch_gr->SetLineColor(3);
255 ch_gr->SetFillStyle(1001);
256
257 return ch_gr;
258
259 }
260
261
262 TGraph* set_lep_ch(Int_t tanBeta){
263 if(tanBeta == 3) return set_lep_ch_tanBeta3();
264 if(tanBeta == 10) return set_lep_ch_tanBeta10();
265 if(tanBeta == 50) return set_lep_ch_tanBeta50();
266 }
267
268
269 TGraph* set_lep_sl(Int_t tanBeta){
270
271 // CMS SUSY Summer2010 implementation
272 // double sl_m0[] = {0, 0, 30, 50, 60, 75, 80,90,100};
273 // double sl_m12[] = {0,245,240,220,200,150,100,50,0};
274
275 //contour from D0 trilepton paper (PLB 680 (2009) 34-43)
276
277 double *sl_m0 = 0;
278 double *sl_m12 = 0;
279 int n = 0;
280
281 double sl_m0_3[] ={0, 0, 10, 20, 30, 40, 50, 60, 70, 77,88,95};
282 double sl_m12_3[]={0,245,242,239,232,222,209,189,165,140,60,0};
283 int n_3 = 12;
284
285 double sl_m0_10[]={ 0, 0, 11, 20, 24, 49, 70, 82,88,90};
286 double sl_m12_10[]={0,240,237,233,230,200,150,100,50,0};
287 int n_10 = 10;
288
289 if (tanBeta==3){
290 sl_m0 = sl_m0_3;
291 sl_m12 = sl_m12_3;
292 n = n_3;
293 }
294 //CMS PTDR-II
295 //* Selectron_R line mass=99, ISASUGRA7.69, A0=0, m_top=175, tan(beta]=10
296 if (tanBeta==10 || tanBeta==50){
297 sl_m0 = sl_m0_10;
298 sl_m12 = sl_m12_10;
299 n = n_10;
300 }
301
302 TGraph* lep_sl = new TGraph(n,sl_m0,sl_m12);
303
304 lep_sl->SetFillColor(5);
305 lep_sl->SetLineColor(5);
306 lep_sl->SetFillStyle(1001);
307
308 return lep_sl;
309 }
310
311
312 TGraph* set_tev_sg_cdf(Int_t tanBeta){
313
314 // double sg_m0[] = {0, 0, 20, 50,100,150,200,250,300,350,400,450,500,550,600,600};
315 // double sg_m12[] = {0,160,169,170,160,155,150,122,116,112,110,106,105,100, 98, 0};
316 // int np=16;
317 //New CHF from CDF plot in ICHEP2010 talk (E. Halkiadakis)
318 double sg_m0[]= {0, 0, 30, 75,150,185,225,310,360,400,430,500,600,600};
319 double sg_m12[]={0,162,168,170,160,150,130,120,109,108,100, 96, 95, 0};
320 int np=14;
321
322 TGraph* sg_gr = new TGraph(np,sg_m0,sg_m12);
323
324 // gStyle->SetHatchesLineWidth(3);
325
326 sg_gr->SetFillColor(2);
327 sg_gr->SetLineColor(2);
328 // sg_gr->SetLineWidth(3);
329 sg_gr->SetFillStyle(1001);
330
331 return sg_gr;
332
333 }
334
335 TGraph* set_tev_sg_d0(Int_t tanBeta){
336
337 // double sgd_m0[] = {0, 0, 50, 100,150,200,250,300,350,400,450,500,550,600,600};
338 // double sgd_m12[] = {0,168,167,162,157,145,125,120,110,108,95, 94 ,94 ,93,0};
339 // int np=15;
340 double sgd_m0[]= {0, 0, 30, 80,150,240,320,400,500,600,600,0};
341 double sgd_m12[]={0,167,166,162,156,138,121,109,105,105, 0,0};
342 int npd=12;
343
344 TGraph* sgd_gr = new TGraph(npd,sgd_m0,sgd_m12);
345
346 gStyle->SetHatchesLineWidth(3);
347
348 sgd_gr->SetFillColor(kMagenta+3);
349 sgd_gr->SetLineColor(kMagenta+3);
350 sgd_gr->SetLineWidth(3);
351 sgd_gr->SetFillStyle(3335);
352
353 return sgd_gr;
354
355 }
356
357 // TGraph* set_tev_tlp_cdf(Int_t tanBeta){
358 // double tlp1_m0[] = { 0, 20, 40, 60, 70, 80, 90, 80, 70, 60};
359 // double tlp1_m12[] = {170,185,200,215,220,215,210,190,175,160};
360 // TGraph* tlp1_gr = new TGraph(10,tlp1_m0,tlp1_m12);
361
362 // tlp1_gr->SetFillColor(4);
363 // tlp1_gr->SetLineColor(4);
364 // tlp1_gr->SetFillStyle(1001);
365
366 // return tlp1_gr;
367 // }
368
369 // TGraph* set_tev_tlp_d0(Int_t tanBeta){
370 // double tlp2_m0[] = { 70, 80, 90,100,105,110,120,130,140};
371 // double tlp2_m12[] = {160,172,184,196,205,195,185,173,160};
372 // TGraph* tlp2_gr = new TGraph(9,tlp2_m0,tlp2_m12);
373
374 // tlp2_gr->SetFillColor(4);
375 // tlp2_gr->SetFillStyle(1001);
376
377 // return tlp2_gr;
378
379 // }
380
381
382
383
384
385 TGraph* set_tev_stau(Int_t tanBeta){
386
387 double st_m0_tanBeta3[] = {0,10,20,30,40,50,60,70,80,90,100,0};
388 double st_m12_tanBeta3[] = {337,341,356,378,406,439,473,510,548,587,626,626};
389
390 double st_m0_tanBeta10[] = {0,10,20,30,40,50,60,70,80,90,100,0};
391 double st_m12_tanBeta10[] = {213,220,240,275,312,351,393,435,476,518,559,559};
392
393 double st_m0_tanBeta50[] = {200,210,220,230,240,250,260,270,280,290,310,325,200,200};
394 double st_m12_tanBeta50[] = {206,226,246,267,288,310,332,354,376,399,450,500,500,206};
395
396
397 TGraph* st_gr_tanBeta3 = new TGraph(12,st_m0_tanBeta3,st_m12_tanBeta3);
398 TGraph* st_gr_tanBeta10 = new TGraph(12,st_m0_tanBeta10,st_m12_tanBeta10);
399 TGraph* st_gr_tanBeta50 = new TGraph(14,st_m0_tanBeta50,st_m12_tanBeta50);
400
401 st_gr_tanBeta3->SetFillColor(40);
402 st_gr_tanBeta3->SetFillStyle(1001);
403
404 st_gr_tanBeta50->SetFillColor(40);
405 st_gr_tanBeta50->SetFillStyle(1001);
406
407 st_gr_tanBeta10->SetFillColor(40);
408 st_gr_tanBeta10->SetFillStyle(1001);
409
410
411 if(tanBeta == 3)return st_gr_tanBeta3;
412 if(tanBeta == 10)return st_gr_tanBeta10;
413 if(tanBeta == 50)return st_gr_tanBeta50;
414
415 }
416
417
418
419
420 TF1* constant_squark(int tanBeta,int i){
421 //---lines of constant gluino/squark
422 double coef1 = 0.35;
423 double coef2[] = {5,5,4.6,4.1};
424
425 char hname[200];
426
427 sprintf(hname,"lnsq_%i",i);
428
429
430 TF1* lnsq = new TF1(hname,"sqrt([0]-x*x*[1]-[2])",0,1000);
431 lnsq->SetParameter(0,(500+150*(i-1))*(500+150*(i-1))/coef2[i]);
432 lnsq->SetParameter(1,1./coef2[i]);
433 lnsq->SetParameter(2,-coef1*91*91*(2*TMath::Cos(TMath::ATan(tanBeta)))/coef2[i]);//--tanbeta=10 --> cos2beta = -99/101
434 lnsq->SetLineWidth(1);
435
436
437 lnsq->SetLineColor(kGray);
438
439 return lnsq;
440 }
441
442
443 TF1* constant_gluino(int tanBeta,int i){
444 //---lines of constant gluino/squark
445 double coef1 = 0.35;
446 double coef2[] = {5,5,4.6,4.1};
447
448 char hname[200];
449
450 sprintf(hname,"lngl_%i",i);
451
452 TF1* lngl = new TF1(hname,"[0]+x*[1]",0,1000);
453 lngl->SetParameter(0,(500+150.*(i-1))/2.4);
454 lngl->SetParameter(1,-40./1400);
455 lngl->SetLineWidth(1);
456 lngl->SetLineColor(kGray);
457
458 return lngl;
459 }
460
461
462 TLatex* constant_squark_text(Int_t it,TF1& lnsq,Int_t tanBeta_){
463 char legnm[200];
464
465 sprintf(legnm,"#font[92]{#tilde{q}(%i)GeV}",500+150*(it-1));
466 Double_t place_x = 170;
467 if(tanBeta_ == 50)place_x = 290;
468 TLatex* t3 = new TLatex(place_x+10*(it-1),lnsq.Eval(place_x+10*(it-1))+5,legnm);
469 t3->SetTextSize(0.03);
470 t3->SetTextAngle(-8);
471 t3->SetTextColor(kGray+2);
472
473
474
475 return t3;
476 }
477
478 TLatex* constant_gluino_text(Int_t it,TF1& lngl){
479 char legnm[200];
480
481 sprintf(legnm,"#font[12]{#tilde{g}}#font[92]{(%i)GeV}",500+150*(it-1));
482 TLatex* t4 = new TLatex(423,18+lngl.Eval(480),legnm);
483 t4->SetTextSize(0.03);
484 t4->SetTextAlign(13);
485 t4->SetTextColor(kGray+2);
486
487 return t4;
488 }
489
490
491 TGraphErrors* getLO_tanBeta3(){
492
493
494
495 Int_t nl = 9;
496 Double_t xl[9];
497 Double_t yl[9];
498 Double_t exl[9];
499 Double_t eyl[9];
500
501 // cout << " n " << hist->GetXaxis()->GetNbins() << endl;
502
503
504 xl[0] = 0;
505 yl[0] = 265;
506 xl[1] = 100;
507 yl[1] = 258;
508 xl[2] = 200;
509 yl[2] = 250;
510 xl[3] = 250;
511 yl[3] = 240;
512 xl[4] = 300;
513 yl[4] = 210;
514 xl[5] = 340;
515 yl[5] = 177;
516 xl[6] = 400;
517 yl[6] = 140;
518 xl[7] = 450;
519 yl[7] = 120;
520 xl[8] = 520;
521 yl[8] =100;
522
523
524 TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl);
525 gr1->SetMarkerColor(kGreen+2);
526 gr1->SetMarkerStyle(21);
527
528
529 //gr1->Draw("LP");
530
531 TSpline3 *s = new TSpline3("grs",gr1);
532 s->SetLineColor(kGreen+2);
533 s->SetLineStyle(4);
534 s->SetLineWidth(3);
535
536
537 return gr1;
538
539
540
541 }
542
543 TGraphErrors* getLO_tanBeta10(){
544
545
546
547 Int_t nl = 10;
548 Double_t xl[10];
549 Double_t yl[10];
550 Double_t exl[10];
551 Double_t eyl[10];
552
553 // cout << " n " << hist->GetXaxis()->GetNbins() << endl;
554
555 xl[0] = 0;
556 yl[0] = 270;
557 xl[1] = 100;
558 yl[1] = 260;
559 xl[2] = 200;
560 yl[2] = 250;
561 xl[3] = 250;
562 yl[3] = 240;
563 xl[4] = 300;
564 yl[4] = 210;
565 xl[5] = 350;
566 yl[5] = 174;
567 xl[6] = 400;
568 yl[6] = 147;
569 xl[7] = 450;
570 yl[7] = 127;
571 xl[8] = 500;
572 yl[8] =115;
573 xl[9] = 520;
574 yl[9] = 112;
575
576
577
578
579
580
581 TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl);
582 gr1->SetMarkerColor(kGreen+2);
583 gr1->SetMarkerStyle(21);
584
585
586 //gr1->Draw("LP");
587
588 TSpline3 *s = new TSpline3("grs",gr1);
589 s->SetLineColor(kGreen+2);
590 s->SetLineStyle(4);
591 s->SetLineWidth(3);
592
593
594 return gr1;
595
596
597
598 }
599
600 TGraphErrors* getLO_tanBeta50(){
601
602
603
604 Int_t nl = 10;
605 Double_t xl[10];
606 Double_t yl[10];
607 Double_t exl[10];
608 Double_t eyl[10];
609
610 // cout << " n " << hist->GetXaxis()->GetNbins() << endl;
611
612
613 xl[0] = 200;
614 yl[0] = 239;
615 xl[1] = 210;
616 yl[1] = 249;
617 xl[2] = 229;
618 yl[2] = 260;
619 xl[3] = 250;
620 yl[3] = 245;
621 xl[4] = 300;
622 yl[4] = 210;
623 xl[5] = 350;
624 yl[5] = 180;
625 xl[6] = 400;
626 yl[6] = 160;
627 xl[7] = 450;
628 yl[7] = 150;
629 xl[8] = 500;
630 yl[8] =140;
631 xl[9] = 520;
632 yl[9] = 137;
633
634
635
636
637
638
639 TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl);
640 gr1->SetMarkerColor(kGreen+2);
641 gr1->SetMarkerStyle(21);
642
643
644 //gr1->Draw("LP");
645
646 TSpline3 *s = new TSpline3("grs",gr1);
647 s->SetLineColor(kGreen+2);
648 s->SetLineStyle(4);
649 s->SetLineWidth(3);
650
651
652 return gr1;
653
654
655
656 }
657
658
659
660 TGraphErrors* getExpected_NLO_tanBeta3(){
661
662 Int_t nl = 11;
663 Double_t xl[11];
664 Double_t yl[11];
665 Double_t exl[11];
666 Double_t eyl[11];
667
668 xl[0] = 0;
669 yl[0] = 283;
670 xl[1] = 100;
671 yl[1] = 280;
672 xl[2] = 150;
673 yl[2] = 279;
674 xl[3] = 200;
675 yl[3] = 275;
676 xl[4] = 250;
677 yl[4] = 270;
678 xl[5] = 300;
679 yl[5] = 255;
680 xl[6] = 350;
681 yl[6] = 225;
682 xl[7] = 400;
683 yl[7] = 195;
684 xl[8] = 450;
685 yl[8] = 175;
686 xl[9] = 500;
687 yl[9] = 155;
688 xl[10] = 550;
689 yl[10] = 150;
690
691
692
693 TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl);
694 gr1->SetMarkerColor(kBlue);
695 gr1->SetMarkerStyle(21);
696
697
698 //gr1->Draw("LP");
699
700 TSpline3 *s = new TSpline3("grs",gr1);
701 s->SetLineColor(kBlue);
702 s->SetLineStyle(2);
703 s->SetLineWidth(3);
704
705
706 return gr1;
707
708
709
710
711
712 }
713
714 TGraphErrors* getExpected_NLO_tanBeta10(){
715
716 Int_t nl = 11;
717 Double_t xl[11];
718 Double_t yl[11];
719 Double_t exl[11];
720 Double_t eyl[11];
721
722 // cout << " n " << hist->GetXaxis()->GetNbins() << endl;
723
724 xl[0] = 0;
725 yl[0] = 283;
726 xl[1] = 100;
727 yl[1] = 280;
728 xl[2] = 150;
729 yl[2] = 279;
730 xl[3] = 200;
731 yl[3] = 275;
732 xl[4] = 250;
733 yl[4] = 270;
734 xl[5] = 300;
735 yl[5] = 255;
736 xl[6] = 350;
737 yl[6] = 225;
738 xl[7] = 400;
739 yl[7] = 195;
740 xl[8] = 450;
741 yl[8] = 175;
742 xl[9] = 500;
743 yl[9] = 165;
744 xl[10] = 550;
745 yl[10] = 150;
746
747
748
749
750
751 TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl);
752 gr1->SetMarkerColor(kBlue);
753 gr1->SetMarkerStyle(21);
754
755
756 //gr1->Draw("LP");
757
758 TSpline3 *s = new TSpline3("grs",gr1);
759 s->SetLineColor(kBlue);
760 s->SetLineStyle(2);
761 s->SetLineWidth(3);
762
763
764 return gr1;
765
766
767
768
769
770 }
771
772
773 TGraphErrors* getExpected_NLO_tanBeta50(){
774
775 Int_t nl = 10;
776 Double_t xl[10];
777 Double_t yl[10];
778 Double_t exl[10];
779 Double_t eyl[10];
780
781 // cout << " n " << hist->GetXaxis()->GetNbins() << endl;
782
783 xl[0] = 200;
784 yl[0] = 287;
785 xl[1] = 220;
786 yl[1] = 287;
787 xl[2] = 245;
788 yl[2] = 287;
789 xl[3] = 270;
790 yl[3] = 265;
791 xl[4] = 300;
792 yl[4] = 245;
793 xl[5] = 350;
794 yl[5] = 222;
795 xl[6] = 400;
796 yl[6] = 197;
797 xl[7] = 450;
798 yl[7] = 180;
799 xl[8] = 500;
800 yl[8] = 168;
801 xl[9] = 550;
802 yl[9] = 145;
803
804
805
806
807
808 TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl);
809 gr1->SetMarkerColor(kBlue);
810 gr1->SetMarkerStyle(21);
811
812
813 //gr1->Draw("LP");
814
815 TSpline3 *s = new TSpline3("grs",gr1);
816 s->SetLineColor(kBlue);
817 s->SetLineStyle(2);
818 s->SetLineWidth(3);
819
820
821 return gr1;
822
823
824
825
826
827 }
828
829
830 TGraphErrors* getObserved_NLO_tanBeta3(){
831
832 Int_t nl = 11;
833 Double_t xl[11];
834 Double_t yl[11];
835 Double_t exl[11];
836 Double_t eyl[11];
837
838 // cout << " n " << hist->GetXaxis()->GetNbins() << endl;
839
840
841
842 xl[0] = 0;
843 yl[0] = 274;
844 xl[1] = 100;
845 yl[1] = 270;
846 xl[2] = 150;
847 yl[2] = 268;
848 xl[3] = 200;
849 yl[3] = 265;
850 xl[4] = 250;
851 yl[4] = 255;
852 xl[5] = 300;
853 yl[5] = 230;
854 xl[6] = 350;
855 yl[6] = 195;
856 xl[7] = 400;
857 yl[7] = 160;
858 xl[8] = 450;
859 yl[8] = 140;
860 xl[9] = 480;
861 yl[9] = 130;
862 xl[10] = 530;
863 yl[10] = 120;
864
865
866
867
868 TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl);
869 gr1->SetMarkerColor(kBlue);
870 gr1->SetMarkerStyle(21);
871
872
873 //gr1->Draw("LP");
874
875 TSpline3 *s = new TSpline3("grs",gr1);
876 s->SetLineColor(kRed);
877 // s->SetLineStyle(2);
878 s->SetLineWidth(3);
879
880
881 return gr1;
882
883
884
885
886
887 }
888
889
890
891 TGraphErrors* getObserved_NLO_tanBeta10(){
892
893 Int_t nl = 11;
894 Double_t xl[11];
895 Double_t yl[11];
896 Double_t exl[11];
897 Double_t eyl[11];
898
899 // cout << " n " << hist->GetXaxis()->GetNbins() << endl;
900
901 xl[0] = 0;
902 yl[0] = 278;
903 xl[1] = 100;
904 yl[1] = 270;
905 xl[2] = 150;
906 yl[2] = 267;
907 xl[3] = 200;
908 yl[3] = 262;
909 xl[4] = 250;
910 yl[4] = 250;
911 xl[5] = 300;
912 yl[5] = 225;
913 xl[6] = 350;
914 yl[6] = 192;
915 xl[7] = 400;
916 yl[7] = 163;
917 xl[8] = 450;
918 yl[8] = 148;
919 xl[9] = 500;
920 yl[9] = 140;
921 xl[10] = 520;
922 yl[10] = 137;
923
924
925
926
927
928 TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl);
929 gr1->SetMarkerColor(kBlue);
930 gr1->SetMarkerStyle(21);
931
932
933 //gr1->Draw("LP");
934
935 TSpline3 *s = new TSpline3("grs",gr1);
936 s->SetLineColor(kRed);
937 // s->SetLineStyle(2);
938 s->SetLineWidth(3);
939
940
941 return gr1;
942
943
944
945
946
947 }
948
949
950 TGraphErrors* getObserved_NLO_tanBeta50(){
951
952 Int_t nl = 10;
953 Double_t xl[10];
954 Double_t yl[10];
955 Double_t exl[10];
956 Double_t eyl[10];
957
958 // cout << " n " << hist->GetXaxis()->GetNbins() << endl;
959
960
961 xl[0] = 200;
962 yl[0] = 243;
963 xl[1] = 220;
964 yl[1] = 264;
965 xl[2] = 235;
966 yl[2] = 278;
967 xl[3] = 250;
968 yl[3] = 267;
969 xl[4] = 300;
970 yl[4] = 230;
971 xl[5] = 350;
972 yl[5] = 205;
973 xl[6] = 400;
974 yl[6] = 184;
975 xl[7] = 450;
976 yl[7] = 168;
977 xl[8] = 500;
978 yl[8] = 156;
979 xl[9] = 520;
980 yl[9] = 148;
981
982
983
984
985
986 TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl);
987 gr1->SetMarkerColor(kBlue);
988 gr1->SetMarkerStyle(21);
989
990
991 //gr1->Draw("LP");
992
993 TSpline3 *s = new TSpline3("grs",gr1);
994 s->SetLineColor(kRed);
995 // s->SetLineStyle(2);
996 s->SetLineWidth(3);
997
998
999 return gr1;
1000
1001
1002
1003
1004
1005 }
1006