1 |
|
#include "SusyScan.h" |
2 |
|
#include "GeneratorMasses.h" |
3 |
+ |
#include "ExclusionPlot.h" |
4 |
|
|
5 |
|
#include "TGraph.h" |
6 |
|
#include "TLatex.h" |
7 |
|
#include "TF1.h" |
8 |
+ |
#include "TH1F.h" |
9 |
|
#include "TGraphErrors.h" |
10 |
|
#include "TSpline.h" |
11 |
|
#include "TStyle.h" |
12 |
|
#include "TMath.h" |
13 |
+ |
#include "TRint.h" |
14 |
+ |
#include "TROOT.h" |
15 |
+ |
#include "TPad.h" |
16 |
|
|
17 |
|
#include <cmath> |
18 |
|
#include <iostream> |
19 |
|
|
20 |
|
|
21 |
< |
double Luminosity = 36.3; //[pb^-1] |
21 |
> |
double Luminosity = 36.0; //[pb^-1] |
22 |
|
double Mzero(const SusyScan* p){ return p->Mzero; } |
23 |
|
double Mhalf(const SusyScan* p){ return p->Mhalf; } |
24 |
|
double MGluino(const SusyScan* p){ return p->MGL; } |
25 |
< |
double MSquarkL(const SusyScan* p){ return p->MUL; } |
25 |
> |
double MSquarkL(const SusyScan* p){ return fabs(p->MUL); } |
26 |
|
double MSquarkR(const SusyScan* p){ return p->MUR; } |
27 |
|
double MChi1(const SusyScan* p){ return p->MZ1; } |
28 |
|
double MChi2(const SusyScan* p){ return p->MZ2; } |
30 |
|
double MChi4(const SusyScan* p){ return p->MZ4; } |
31 |
|
double MCha1(const SusyScan* p){ return p->MW1; } |
32 |
|
double MCha2(const SusyScan* p){ return p->MW2; } |
33 |
+ |
double MTAU1(const SusyScan* p){ return p->MTAU1; } |
34 |
|
double SignalUncertKfactor(const SusyScan* p){return fabs(p->signal_kfactor_UP-p->signal_kfactor_DN)/(2.0*p->signal_kfactor); } |
35 |
|
double SignalUncertJEC(const SusyScan* p){ return (fabs(p->signal_JEC_UP)+fabs(p->signal_JEC_DN))/(2.0*p->signal); } |
36 |
|
double SignalUncertMuIso(const SusyScan* p){ return (fabs(p->signal_MuIso_UP)+fabs(p->signal_MuIso_DN))/(2.0*p->signal); } |
37 |
+ |
double SignalUncertPDF(const SusyScan* p){ |
38 |
+ |
double up=sqrt(p->signal_PDF_UP*p->signal_PDF_UP+p->signal_XSPDF_UP*p->signal_XSPDF_UP); |
39 |
+ |
double dn=sqrt(p->signal_PDF_DN*p->signal_PDF_DN+p->signal_XSPDF_DN*p->signal_XSPDF_DN); |
40 |
+ |
return (up+dn)/(2.0*p->signal); } |
41 |
|
double SignalKfactor(const SusyScan* p){return p->signal_kfactor; } |
42 |
+ |
double ChargedLSP(const SusyScan* p){ return (fabs(p->MTAU1) < fabs(p->MZ1) ? 0.01 : 1); } |
43 |
|
|
44 |
|
double Xsection(const SusyScan* p){ return p->Xsection; } |
45 |
|
double ExpXsecLimit(const SusyScan* p){ return p->ExpXsecLimit; } |
49 |
|
double SignalRelUncertainty(const SusyScan* p){ return p->signal_uncertainty/p->signal; } |
50 |
|
double ExpExclusion(const SusyScan* p){ return (ExpXsecLimit(p)<Xsection(p)&&ExpXsecLimit(p)>0.01?1:0.01); } |
51 |
|
double ObsExclusion(const SusyScan* p){ return (ObsXsecLimit(p)<Xsection(p)&&ObsXsecLimit(p)>0.01?1:0.01); } |
52 |
+ |
double ExpNoSigExclCL(const SusyScan* p){ return (p->CLs_bNoSig_xsec<=0.05 ? 1:0.01); } |
53 |
|
double ExpExclCL(const SusyScan* p){ return (p->CLs_b_xsec<=0.05 ? 1:0.01); } |
54 |
|
double ExpExclCLm2sigma(const SusyScan* p){ return (p->CLs_b_n2_xsec<=0.05 ? 1:0.01); } |
55 |
|
double ExpExclCLm1sigma(const SusyScan* p){ return (p->CLs_b_n1_xsec<=0.05 ? 1:0.01); } |
90 |
|
double NLOSignalRelUncertainty(const SusyScan* p){ return p->NLO_signal_uncertainty/p->NLO_signal; } |
91 |
|
double NLOExpExclusion(const SusyScan* p){ return (NLOExpXsecLimit(p)<NLOXsection(p)&&NLOExpXsecLimit(p)>0.01?1:0.01); } |
92 |
|
double NLOObsExclusion(const SusyScan* p){ return (NLOObsXsecLimit(p)<NLOXsection(p)&&NLOObsXsecLimit(p)>0.01?1:0.01); } |
93 |
+ |
double NLOExpCL(const SusyScan* p){ return (p->NLO_CLs_b_xsec); } |
94 |
+ |
double NLOExpNoSigExclCL(const SusyScan* p){ return (p->NLO_CLs_bNoSig_xsec<=0.05 ? 1:0.01); } |
95 |
|
double NLOExpExclCL(const SusyScan* p){ return (p->NLO_CLs_b_xsec<=0.05 ? 1:0.01); } |
96 |
|
double NLOExpExclCLm2sigma(const SusyScan* p){ return (p->NLO_CLs_b_n2_xsec<=0.05 ? 1:0.01); } |
97 |
|
double NLOExpExclCLm1sigma(const SusyScan* p){ return (p->NLO_CLs_b_n1_xsec<=0.05 ? 1:0.01); } |
98 |
|
double NLOExpExclCLp1sigma(const SusyScan* p){ return (p->NLO_CLs_b_p1_xsec<=0.05 ? 1:0.01); } |
99 |
|
double NLOExpExclCLp2sigma(const SusyScan* p){ return (p->NLO_CLs_b_p2_xsec<=0.05 ? 1:0.01); } |
100 |
|
double NLOObsExclCL(const SusyScan* p){ return (p->NLO_CLs_xsec<=0.05 ? 1:0.01); } |
101 |
+ |
|
102 |
+ |
double NLOHybridObsCL(const SusyScan* p){ return p->NLOHybrid_CLs_xsec; } |
103 |
+ |
double NLOHybridObsExclCL(const SusyScan* p){ return (p->NLOHybrid_CLs_xsec<=0.05 ? 1:0.01); } |
104 |
+ |
double NLOHybridObsErrorCL(const SusyScan* p){ return (p->NLOHybrid_CLs_xsec_error<=0.05 ? 1:0.01); } |
105 |
+ |
|
106 |
|
double NLOSoverSqrtB(const SusyScan* p){ return p->NLO_signal/(sqrt(p->background)+p->background_uncertainty+p->NLO_signal_uncertainty); } |
107 |
|
double NLOXsecOverObserved(const SusyScan* p){ return (NLOObsXsecLimit(p)==0 ? 9999. : NLOXsection(p)/NLOObsXsecLimit(p)); } |
108 |
|
double NLOXsecOverExpected(const SusyScan* p){ return (NLOExpXsecLimit(p)==0 ? 9999. : NLOXsection(p)/NLOExpXsecLimit(p)); } |
132 |
|
double Mzero(const GeneratorMasses* p){ return p->Mzero; } |
133 |
|
double Mhalf(const GeneratorMasses* p){ return p->Mhalf; } |
134 |
|
double MGluino(const GeneratorMasses* p){ return p->MGL; } |
135 |
< |
double MSquarkL(const GeneratorMasses* p){ return p->MUL; } |
135 |
> |
double MSquarkL(const GeneratorMasses* p){ return fabs(p->MUL); } |
136 |
|
double MSquarkR(const GeneratorMasses* p){ return p->MUR; } |
137 |
|
double MChi1(const GeneratorMasses* p){ return p->MZ1; } |
138 |
|
double MChi2(const GeneratorMasses* p){ return p->MZ2; } |
141 |
|
double MCha1(const GeneratorMasses* p){ return p->MW1; } |
142 |
|
double MCha2(const GeneratorMasses* p){ return p->MW2; } |
143 |
|
|
144 |
+ |
|
145 |
+ |
|
146 |
+ |
void setPlottingStyle(TH1F& hsig){ |
147 |
+ |
|
148 |
+ |
hsig.SetStats(kFALSE); |
149 |
+ |
|
150 |
+ |
hsig.SetAxisRange(80,500,"Y"); |
151 |
+ |
hsig.SetAxisRange(0,520,"X"); |
152 |
+ |
hsig.SetAxisRange(200,520,"X"); |
153 |
+ |
|
154 |
+ |
hsig.GetXaxis()->SetTitle("m_{0} (GeV)"); |
155 |
+ |
hsig.GetYaxis()->SetTitle("m_{1/2} (GeV)"); |
156 |
+ |
hsig.GetYaxis()->SetTitleOffset(0.8); |
157 |
+ |
hsig.GetYaxis()->SetTitleSize(0.06); |
158 |
+ |
hsig.GetYaxis()->SetLabelSize(0.06); |
159 |
+ |
hsig.GetXaxis()->SetTitleOffset(0.9); |
160 |
+ |
hsig.GetXaxis()->SetTitleSize(0.06); |
161 |
+ |
hsig.GetXaxis()->SetLabelSize(0.06); |
162 |
+ |
|
163 |
+ |
hsig.SetLineWidth(1); |
164 |
+ |
hsig.SetLineColor(kBlue); |
165 |
+ |
|
166 |
+ |
} |
167 |
+ |
|
168 |
+ |
|
169 |
+ |
|
170 |
+ |
|
171 |
|
TGraph* set_sneutrino_d0_1(Int_t tanBeta){ |
172 |
|
double sn_m0[14]= {0, 0, 48, 55, 80, 90,100,105,109,105,100, 72, 55,0}; |
173 |
|
double sn_m12[14]={0,140,210,220,237,241,242,241,230,220,210,170,150,0}; |
175 |
|
TGraph* sn_d0_gr = new TGraph(14,sn_m0,sn_m12); |
176 |
|
|
177 |
|
sn_d0_gr->SetFillColor(kGreen+3); |
178 |
< |
sn_d0_gr->SetFillStyle(1001); |
178 |
> |
sn_d0_gr->SetFillStyle(3001); |
179 |
|
|
180 |
|
return sn_d0_gr; |
181 |
|
} |
187 |
|
TGraph* sn_d0_gr_2 = new TGraph(9,sn_m0,sn_m12); |
188 |
|
|
189 |
|
sn_d0_gr_2->SetFillColor(kGreen+3); |
190 |
< |
sn_d0_gr_2->SetFillStyle(1001); |
190 |
> |
sn_d0_gr_2->SetFillStyle(3001); |
191 |
|
|
192 |
|
return sn_d0_gr_2; |
193 |
|
} |
194 |
|
|
195 |
+ |
TGraph* set_lep_ch(Int_t tanBeta){ |
196 |
+ |
if(tanBeta == 3) return set_lep_ch_tanBeta3(); |
197 |
+ |
if(tanBeta == 10) return set_lep_ch_tanBeta10(); |
198 |
+ |
if(tanBeta == 50) return set_lep_ch_tanBeta50(); |
199 |
+ |
} |
200 |
|
|
201 |
|
TGraph* set_lep_ch_tanBeta10(){ |
202 |
|
|
225 |
|
ch_m12[6] = 157; |
226 |
|
ch_m12[7] = 156; |
227 |
|
ch_m12[8] = 155.4; |
228 |
< |
ch_m12[9] = 154; |
228 |
> |
ch_m12[9] = 155.05; |
229 |
|
ch_m12[10] = 0; |
230 |
|
ch_m12[11] = 0; |
231 |
|
|
235 |
|
ch_gr->SetFillColor(3); |
236 |
|
ch_gr->SetLineColor(3); |
237 |
|
// ch_gr->SetLineWidth(3); |
238 |
< |
ch_gr->SetFillStyle(1001); |
238 |
> |
ch_gr->SetFillStyle(3001); |
239 |
|
|
240 |
|
return ch_gr; |
241 |
|
|
289 |
|
ch_gr->SetFillColor(3); |
290 |
|
ch_gr->SetLineColor(3); |
291 |
|
// ch_gr->SetLineWidth(3); |
292 |
< |
ch_gr->SetFillStyle(1001); |
292 |
> |
ch_gr->SetFillStyle(3001); |
293 |
|
|
294 |
|
return ch_gr; |
295 |
|
|
350 |
|
|
351 |
|
ch_gr->SetFillColor(3); |
352 |
|
ch_gr->SetLineColor(3); |
353 |
< |
ch_gr->SetFillStyle(1001); |
353 |
> |
ch_gr->SetFillStyle(3001); |
354 |
|
|
355 |
|
return ch_gr; |
356 |
|
|
357 |
|
} |
358 |
|
|
359 |
|
|
309 |
– |
TGraph* set_lep_ch(Int_t tanBeta){ |
310 |
– |
if(tanBeta == 3) return set_lep_ch_tanBeta3(); |
311 |
– |
if(tanBeta == 10) return set_lep_ch_tanBeta10(); |
312 |
– |
if(tanBeta == 50) return set_lep_ch_tanBeta50(); |
313 |
– |
} |
360 |
|
|
361 |
|
|
362 |
|
TGraph* set_lep_sl(Int_t tanBeta){ |
366 |
|
// double sl_m12[] = {0,245,240,220,200,150,100,50,0}; |
367 |
|
|
368 |
|
//contour from D0 trilepton paper (PLB 680 (2009) 34-43) |
369 |
< |
|
324 |
< |
double *sl_m0 = 0; |
325 |
< |
double *sl_m12 = 0; |
326 |
< |
int n = 0; |
327 |
< |
|
328 |
< |
double sl_m0_3[] ={0, 0, 10, 20, 30, 40, 50, 60, 70, 77,88,95}; |
329 |
< |
double sl_m12_3[]={0,245,242,239,232,222,209,189,165,140,60,0}; |
330 |
< |
int n_3 = 12; |
331 |
< |
|
332 |
< |
double sl_m0_10[]={ 0, 0, 11, 20, 24, 49, 70, 82,88,90}; |
333 |
< |
double sl_m12_10[]={0,240,237,233,230,200,150,100,50,0}; |
334 |
< |
int n_10 = 10; |
335 |
< |
|
369 |
> |
TGraph* lep_sl = 0; |
370 |
|
if (tanBeta==3){ |
371 |
< |
sl_m0 = sl_m0_3; |
372 |
< |
sl_m12 = sl_m12_3; |
373 |
< |
n = n_3; |
371 |
> |
double sl_m0[] ={0, 0, 10, 20, 30, 40, 50, 60, 70, 77,88,95}; |
372 |
> |
double sl_m12[]={0,245,242,239,232,222,209,189,165,140,60,0}; |
373 |
> |
int n = 12; |
374 |
> |
lep_sl = new TGraph(n,sl_m0,sl_m12); |
375 |
|
} |
376 |
|
//CMS PTDR-II |
377 |
|
//* Selectron_R line mass=99, ISASUGRA7.69, A0=0, m_top=175, tan(beta]=10 |
378 |
|
if (tanBeta==10 || tanBeta==50){ |
379 |
< |
sl_m0 = sl_m0_10; |
380 |
< |
sl_m12 = sl_m12_10; |
381 |
< |
n = n_10; |
379 |
> |
double sl_m0[]={ 0, 0, 11, 20, 24, 49, 70, 82,88,90}; |
380 |
> |
double sl_m12[]={0,240,237,233,230,200,150,100,50,0}; |
381 |
> |
int n = 10; |
382 |
> |
lep_sl = new TGraph(n,sl_m0,sl_m12); |
383 |
|
} |
384 |
|
|
349 |
– |
TGraph* lep_sl = new TGraph(n,sl_m0,sl_m12); |
385 |
|
|
386 |
|
lep_sl->SetFillColor(5); |
387 |
|
lep_sl->SetLineColor(5); |
388 |
< |
lep_sl->SetFillStyle(1001); |
388 |
> |
lep_sl->SetFillStyle(3001); |
389 |
|
|
390 |
|
return lep_sl; |
391 |
|
} |
408 |
|
sg_gr->SetFillColor(2); |
409 |
|
sg_gr->SetLineColor(2); |
410 |
|
// sg_gr->SetLineWidth(3); |
411 |
< |
sg_gr->SetFillStyle(1001); |
411 |
> |
sg_gr->SetFillStyle(3001); |
412 |
|
|
413 |
|
return sg_gr; |
414 |
|
|
416 |
|
|
417 |
|
TGraph* set_tev_sg_d0(Int_t tanBeta){ |
418 |
|
|
419 |
< |
// double sgd_m0[] = {0, 0, 50, 100,150,200,250,300,350,400,450,500,550,600,600}; |
420 |
< |
// double sgd_m12[] = {0,168,167,162,157,145,125,120,110,108,95, 94 ,94 ,93,0}; |
421 |
< |
// int np=15; |
422 |
< |
double sgd_m0[]= {0, 0, 30, 80,150,240,320,400,500,600,600,0}; |
388 |
< |
double sgd_m12[]={0,167,166,162,156,138,121,109,105,105, 0,0}; |
389 |
< |
int npd=12; |
419 |
> |
//official D0 contour from P. Verdier |
420 |
> |
double sgd_m0[]= {0, 0., 25., 80.,100.,150.,192.,250.,300. ,350.,400.,450. ,500.,600.,600.,0.}; |
421 |
> |
double sgd_m12[]={0,167.,167.,163.,162.,157.,149.,136.,125.5,116.,109.,106.5,105.,105., 0.,0.}; |
422 |
> |
int npd=16; |
423 |
|
|
424 |
|
TGraph* sgd_gr = new TGraph(npd,sgd_m0,sgd_m12); |
425 |
|
|
426 |
|
gStyle->SetHatchesLineWidth(3); |
427 |
|
|
428 |
< |
sgd_gr->SetFillColor(kMagenta+3); |
429 |
< |
sgd_gr->SetLineColor(kMagenta+3); |
428 |
> |
sgd_gr->SetFillColor(kMagenta+1); |
429 |
> |
sgd_gr->SetLineColor(kMagenta+1); |
430 |
|
sgd_gr->SetLineWidth(3); |
431 |
|
sgd_gr->SetFillStyle(3335); |
432 |
+ |
//sgd_gr->SetFillStyle(3001); |
433 |
|
|
434 |
|
return sgd_gr; |
435 |
|
|
495 |
|
|
496 |
|
} |
497 |
|
|
464 |
– |
TGraph* sq_LEP(){ |
465 |
– |
double sq[] = {0,0,100,100}; |
466 |
– |
double gl[] = {0,2000,2000,0}; |
467 |
– |
TGraph* res = new TGraph(4,sq,gl); |
468 |
– |
res->SetFillColor(kBlue); |
469 |
– |
return res; |
470 |
– |
} |
471 |
– |
|
472 |
– |
TGraph* gl_TEV(){ |
473 |
– |
double sq[] = {0,2000,2000,0}; |
474 |
– |
double gl[] = {0,0,190,190}; |
475 |
– |
TGraph* res = new TGraph(4,sq,gl); |
476 |
– |
res->SetFillColor(kGreen+2); |
477 |
– |
return res; |
478 |
– |
} |
479 |
– |
|
480 |
– |
TGraph* gl_CDF(){ |
481 |
– |
double sq[] = {0,2000,2000,0}; |
482 |
– |
double gl[] = {190,190,230,230}; |
483 |
– |
TGraph* res = new TGraph(4,sq,gl); |
484 |
– |
res->SetFillColor(kOrange+5); |
485 |
– |
return res; |
486 |
– |
} |
487 |
– |
|
488 |
– |
TGraph* gl_DEZ(){ |
489 |
– |
double sq[] = {0,2000,2000,0}; |
490 |
– |
double gl[] = {230,230,255,255}; |
491 |
– |
TGraph* res = new TGraph(4,sq,gl); |
492 |
– |
res->SetFillColor(kYellow-5); |
493 |
– |
return res; |
494 |
– |
} |
495 |
– |
|
496 |
– |
TGraph* gl_WHT(){ |
497 |
– |
double sq[] = {101,2000,2000,101}; |
498 |
– |
double gl[] = {256,256,400,400}; |
499 |
– |
TGraph* res = new TGraph(4,sq,gl); |
500 |
– |
res->SetFillColor(kWhite); |
501 |
– |
return res; |
502 |
– |
} |
498 |
|
|
499 |
|
|
500 |
|
|
547 |
|
Double_t place_x = 170; |
548 |
|
if(tanBeta_ == 50)place_x = 290; |
549 |
|
TLatex* t3 = new TLatex(place_x+10*(it-1),lnsq.Eval(place_x+10*(it-1))+5,legnm); |
550 |
< |
t3->SetTextSize(0.03); |
550 |
> |
t3->SetTextSize(0.02); |
551 |
|
t3->SetTextAngle(-8); |
552 |
|
t3->SetTextColor(kGray+2); |
553 |
|
|
561 |
|
|
562 |
|
sprintf(legnm,"#font[12]{#tilde{g}}#font[92]{(%i)GeV}",500+150*(it-1)); |
563 |
|
TLatex* t4 = new TLatex(423,18+lngl.Eval(480),legnm); |
564 |
< |
t4->SetTextSize(0.03); |
564 |
> |
t4->SetTextSize(0.02); |
565 |
|
t4->SetTextAlign(13); |
566 |
|
t4->SetTextColor(kGray+2); |
567 |
|
|
569 |
|
} |
570 |
|
|
571 |
|
|
577 |
– |
TGraphErrors* getLO_tanBeta3(){ |
578 |
– |
|
579 |
– |
|
580 |
– |
|
581 |
– |
Int_t nl = 9; |
582 |
– |
Double_t xl[9]; |
583 |
– |
Double_t yl[9]; |
584 |
– |
Double_t exl[9]; |
585 |
– |
Double_t eyl[9]; |
586 |
– |
|
587 |
– |
// cout << " n " << hist->GetXaxis()->GetNbins() << endl; |
588 |
– |
|
589 |
– |
|
590 |
– |
xl[0] = 0; |
591 |
– |
yl[0] = 265; |
592 |
– |
xl[1] = 100; |
593 |
– |
yl[1] = 258; |
594 |
– |
xl[2] = 200; |
595 |
– |
yl[2] = 250; |
596 |
– |
xl[3] = 250; |
597 |
– |
yl[3] = 240; |
598 |
– |
xl[4] = 300; |
599 |
– |
yl[4] = 210; |
600 |
– |
xl[5] = 340; |
601 |
– |
yl[5] = 177; |
602 |
– |
xl[6] = 400; |
603 |
– |
yl[6] = 140; |
604 |
– |
xl[7] = 450; |
605 |
– |
yl[7] = 120; |
606 |
– |
xl[8] = 520; |
607 |
– |
yl[8] =100; |
608 |
– |
|
609 |
– |
|
610 |
– |
TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl); |
611 |
– |
gr1->SetMarkerColor(kGreen+2); |
612 |
– |
gr1->SetMarkerStyle(21); |
613 |
– |
|
614 |
– |
|
615 |
– |
//gr1->Draw("LP"); |
616 |
– |
|
617 |
– |
TSpline3 *s = new TSpline3("grs",gr1); |
618 |
– |
s->SetLineColor(kGreen+2); |
619 |
– |
s->SetLineStyle(4); |
620 |
– |
s->SetLineWidth(3); |
621 |
– |
|
622 |
– |
|
623 |
– |
return gr1; |
624 |
– |
|
625 |
– |
|
626 |
– |
|
627 |
– |
} |
628 |
– |
|
629 |
– |
TGraphErrors* getLO_tanBeta10(){ |
630 |
– |
|
631 |
– |
|
632 |
– |
|
633 |
– |
Int_t nl = 10; |
634 |
– |
Double_t xl[10]; |
635 |
– |
Double_t yl[10]; |
636 |
– |
Double_t exl[10]; |
637 |
– |
Double_t eyl[10]; |
638 |
– |
|
639 |
– |
// cout << " n " << hist->GetXaxis()->GetNbins() << endl; |
640 |
– |
|
641 |
– |
xl[0] = 0; |
642 |
– |
yl[0] = 270; |
643 |
– |
xl[1] = 100; |
644 |
– |
yl[1] = 260; |
645 |
– |
xl[2] = 200; |
646 |
– |
yl[2] = 250; |
647 |
– |
xl[3] = 250; |
648 |
– |
yl[3] = 240; |
649 |
– |
xl[4] = 300; |
650 |
– |
yl[4] = 210; |
651 |
– |
xl[5] = 350; |
652 |
– |
yl[5] = 174; |
653 |
– |
xl[6] = 400; |
654 |
– |
yl[6] = 147; |
655 |
– |
xl[7] = 450; |
656 |
– |
yl[7] = 127; |
657 |
– |
xl[8] = 500; |
658 |
– |
yl[8] =115; |
659 |
– |
xl[9] = 520; |
660 |
– |
yl[9] = 112; |
661 |
– |
|
662 |
– |
|
663 |
– |
|
664 |
– |
|
665 |
– |
|
666 |
– |
|
667 |
– |
TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl); |
668 |
– |
gr1->SetMarkerColor(kGreen+2); |
669 |
– |
gr1->SetMarkerStyle(21); |
670 |
– |
|
671 |
– |
|
672 |
– |
//gr1->Draw("LP"); |
673 |
– |
|
674 |
– |
TSpline3 *s = new TSpline3("grs",gr1); |
675 |
– |
s->SetLineColor(kGreen+2); |
676 |
– |
s->SetLineStyle(4); |
677 |
– |
s->SetLineWidth(3); |
678 |
– |
|
679 |
– |
|
680 |
– |
return gr1; |
681 |
– |
|
682 |
– |
|
683 |
– |
|
684 |
– |
} |
685 |
– |
|
686 |
– |
TGraphErrors* getLO_tanBeta50(){ |
687 |
– |
|
688 |
– |
|
689 |
– |
|
690 |
– |
Int_t nl = 10; |
691 |
– |
Double_t xl[10]; |
692 |
– |
Double_t yl[10]; |
693 |
– |
Double_t exl[10]; |
694 |
– |
Double_t eyl[10]; |
695 |
– |
|
696 |
– |
// cout << " n " << hist->GetXaxis()->GetNbins() << endl; |
697 |
– |
|
698 |
– |
|
699 |
– |
xl[0] = 200; |
700 |
– |
yl[0] = 239; |
701 |
– |
xl[1] = 210; |
702 |
– |
yl[1] = 249; |
703 |
– |
xl[2] = 229; |
704 |
– |
yl[2] = 260; |
705 |
– |
xl[3] = 250; |
706 |
– |
yl[3] = 245; |
707 |
– |
xl[4] = 300; |
708 |
– |
yl[4] = 210; |
709 |
– |
xl[5] = 350; |
710 |
– |
yl[5] = 180; |
711 |
– |
xl[6] = 400; |
712 |
– |
yl[6] = 160; |
713 |
– |
xl[7] = 450; |
714 |
– |
yl[7] = 150; |
715 |
– |
xl[8] = 500; |
716 |
– |
yl[8] =140; |
717 |
– |
xl[9] = 520; |
718 |
– |
yl[9] = 137; |
719 |
– |
|
720 |
– |
|
721 |
– |
|
722 |
– |
|
723 |
– |
|
724 |
– |
|
725 |
– |
TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl); |
726 |
– |
gr1->SetMarkerColor(kGreen+2); |
727 |
– |
gr1->SetMarkerStyle(21); |
728 |
– |
|
729 |
– |
|
730 |
– |
//gr1->Draw("LP"); |
731 |
– |
|
732 |
– |
TSpline3 *s = new TSpline3("grs",gr1); |
733 |
– |
s->SetLineColor(kGreen+2); |
734 |
– |
s->SetLineStyle(4); |
735 |
– |
s->SetLineWidth(3); |
736 |
– |
|
737 |
– |
|
738 |
– |
return gr1; |
739 |
– |
|
572 |
|
|
573 |
+ |
TLegend* makeStauLegend(Double_t txtsz,Int_t tanBeta_){ |
574 |
+ |
Double_t ypos_1 = 0.86; |
575 |
+ |
Double_t ypos_2 = 0.88; |
576 |
+ |
Double_t xpos_1 = 0.16; |
577 |
+ |
Double_t xpos_2 = 0.17; |
578 |
+ |
if(tanBeta_ == 50){ |
579 |
+ |
xpos_1 = 0.17; |
580 |
+ |
xpos_2 = 0.18; |
581 |
+ |
ypos_1 = 0.76; |
582 |
+ |
ypos_2 = 0.78; |
583 |
|
|
584 |
+ |
} |
585 |
+ |
TLegend* legst = new TLegend(xpos_1,ypos_1,xpos_2,ypos_2); |
586 |
+ |
legst->SetHeader("#tilde{#tau} = LSP"); |
587 |
+ |
legst->SetFillStyle(0); |
588 |
+ |
legst->SetBorderSize(0); |
589 |
+ |
legst->SetTextSize(0.03); |
590 |
+ |
|
591 |
+ |
return legst; |
592 |
|
} |
593 |
|
|
594 |
|
|
595 |
< |
|
596 |
< |
TGraphErrors* getExpected_NLO_tanBeta3(){ |
597 |
< |
|
598 |
< |
Int_t nl = 11; |
599 |
< |
Double_t xl[11]; |
600 |
< |
Double_t yl[11]; |
601 |
< |
Double_t exl[11]; |
602 |
< |
Double_t eyl[11]; |
603 |
< |
|
604 |
< |
xl[0] = 0; |
605 |
< |
yl[0] = 283; |
606 |
< |
xl[1] = 100; |
607 |
< |
yl[1] = 280; |
608 |
< |
xl[2] = 150; |
609 |
< |
yl[2] = 279; |
610 |
< |
xl[3] = 200; |
611 |
< |
yl[3] = 275; |
612 |
< |
xl[4] = 250; |
613 |
< |
yl[4] = 270; |
764 |
< |
xl[5] = 300; |
765 |
< |
yl[5] = 255; |
766 |
< |
xl[6] = 350; |
767 |
< |
yl[6] = 225; |
768 |
< |
xl[7] = 400; |
769 |
< |
yl[7] = 195; |
770 |
< |
xl[8] = 450; |
771 |
< |
yl[8] = 175; |
772 |
< |
xl[9] = 500; |
773 |
< |
yl[9] = 155; |
774 |
< |
xl[10] = 550; |
775 |
< |
yl[10] = 150; |
776 |
< |
|
595 |
> |
TLegend* makeExpLegend(TGraph& sg_gr, TGraph& sgd_gr,TGraph& ch_gr,TGraph& sl_gr,TGraph& tev_sn,Double_t txtsz,Int_t tanbeta){ |
596 |
> |
TLegend* legexp = new TLegend(0.64,0.65,0.99,0.9,NULL,"brNDC"); |
597 |
> |
legexp->SetFillColor(0); |
598 |
> |
legexp->SetShadowColor(0); |
599 |
> |
legexp->SetTextSize(txtsz); |
600 |
> |
legexp->SetBorderSize(0); |
601 |
> |
|
602 |
> |
sg_gr.SetLineColor(1); |
603 |
> |
legexp->AddEntry(&sg_gr,"CDF #tilde{#font[12]{g}}, #tilde{#font[12]{q}}, #scale[0.8]{tan#beta=5, #mu<0}","f"); |
604 |
> |
// sgd_gr.SetLineColor(1); |
605 |
> |
// sgd_gr.SetLineWidth(1); |
606 |
> |
|
607 |
> |
legexp->AddEntry(&sgd_gr,"D0 #tilde{#font[12]{g}}, #tilde{#font[12]{q}}, #scale[0.8]{tan#beta=3, #mu<0}","f"); |
608 |
> |
ch_gr.SetLineColor(1); |
609 |
> |
legexp->AddEntry(&ch_gr,"LEP2 #tilde{#chi}_{1}^{#pm}","f"); |
610 |
> |
|
611 |
> |
sl_gr.SetLineColor(1); |
612 |
> |
if(tanbeta != 50) legexp->AddEntry(&sl_gr,"LEP2 #tilde{#font[12]{l}}^{#pm}","f"); |
613 |
> |
if(tanbeta == 3) legexp->AddEntry(&tev_sn,"D0 #chi^{#pm}_{1}, #chi^{0}_{2}","f"); |
614 |
|
|
778 |
– |
|
779 |
– |
TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl); |
780 |
– |
gr1->SetMarkerColor(kBlue); |
781 |
– |
gr1->SetMarkerStyle(21); |
782 |
– |
|
783 |
– |
|
784 |
– |
//gr1->Draw("LP"); |
785 |
– |
|
786 |
– |
TSpline3 *s = new TSpline3("grs",gr1); |
787 |
– |
s->SetLineColor(kBlue); |
788 |
– |
s->SetLineStyle(2); |
789 |
– |
s->SetLineWidth(3); |
790 |
– |
|
791 |
– |
|
792 |
– |
return gr1; |
793 |
– |
|
794 |
– |
|
795 |
– |
|
615 |
|
|
616 |
+ |
return legexp; |
617 |
|
|
618 |
|
} |
619 |
|
|
800 |
– |
TGraphErrors* getExpected_NLO_tanBeta10(){ |
801 |
– |
|
802 |
– |
Int_t nl = 11; |
803 |
– |
Double_t xl[11]; |
804 |
– |
Double_t yl[11]; |
805 |
– |
Double_t exl[11]; |
806 |
– |
Double_t eyl[11]; |
807 |
– |
|
808 |
– |
// cout << " n " << hist->GetXaxis()->GetNbins() << endl; |
809 |
– |
|
810 |
– |
xl[0] = 0; |
811 |
– |
yl[0] = 283; |
812 |
– |
xl[1] = 100; |
813 |
– |
yl[1] = 280; |
814 |
– |
xl[2] = 150; |
815 |
– |
yl[2] = 279; |
816 |
– |
xl[3] = 200; |
817 |
– |
yl[3] = 275; |
818 |
– |
xl[4] = 250; |
819 |
– |
yl[4] = 270; |
820 |
– |
xl[5] = 300; |
821 |
– |
yl[5] = 255; |
822 |
– |
xl[6] = 350; |
823 |
– |
yl[6] = 225; |
824 |
– |
xl[7] = 400; |
825 |
– |
yl[7] = 195; |
826 |
– |
xl[8] = 450; |
827 |
– |
yl[8] = 175; |
828 |
– |
xl[9] = 500; |
829 |
– |
yl[9] = 165; |
830 |
– |
xl[10] = 550; |
831 |
– |
yl[10] = 150; |
832 |
– |
|
833 |
– |
|
834 |
– |
|
835 |
– |
|
836 |
– |
|
837 |
– |
TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl); |
838 |
– |
gr1->SetMarkerColor(kBlue); |
839 |
– |
gr1->SetMarkerStyle(21); |
840 |
– |
|
841 |
– |
|
842 |
– |
//gr1->Draw("LP"); |
843 |
– |
|
844 |
– |
TSpline3 *s = new TSpline3("grs",gr1); |
845 |
– |
s->SetLineColor(kBlue); |
846 |
– |
s->SetLineStyle(2); |
847 |
– |
s->SetLineWidth(3); |
848 |
– |
|
849 |
– |
|
850 |
– |
return gr1; |
851 |
– |
|
620 |
|
|
621 |
+ |
TGraph* getGraph(TH2F* h1, double level){ |
622 |
|
|
623 |
+ |
h1->SetContour(1); |
624 |
+ |
h1->SetContourLevel(0,level); |
625 |
+ |
h1->Draw("CONT LIST"); |
626 |
+ |
gPad->Update(); |
627 |
+ |
|
628 |
+ |
TObjArray* contours = (TObjArray*)gROOT->GetListOfSpecials()->FindObject("contours"); |
629 |
+ |
|
630 |
+ |
std::cout << "contours: " << contours << std::endl; |
631 |
+ |
// Draw contours |
632 |
+ |
TList* graphList = (TList*)(contours->At(0)); |
633 |
+ |
std::cout << "number of graphs: " << graphList->GetSize() << std::endl; |
634 |
+ |
TGraph* myGraph = 0; |
635 |
+ |
for (int igraph = 0; igraph<graphList->GetSize();++igraph) { |
636 |
+ |
myGraph = (TGraph*)graphList->At(igraph); |
637 |
+ |
|
638 |
+ |
std::cout << " - graph " << igraph << " has " << myGraph->GetN() << " points" << std::endl; |
639 |
+ |
if (myGraph->GetN() > 50){ |
640 |
+ |
std::cout << "Drawing " << myGraph->GetN() <<" points" << std::endl; |
641 |
+ |
// myGraph->Print("all"); |
642 |
+ |
// myGraph->SetLineColor(9); |
643 |
+ |
// myGraph->SetLineColor(46); |
644 |
+ |
//myGraph->SetLineWidth(3); |
645 |
+ |
// myGraph->SetLineStyle(2); |
646 |
+ |
// myGraph->SetMarkerStyle(20); |
647 |
+ |
// myGraph->SetMarkerColor(9); |
648 |
+ |
|
649 |
+ |
// myGraph->Draw("C"); |
650 |
+ |
// cvsSys->Update(); |
651 |
+ |
|
652 |
+ |
// TString graphName("graph"+name+"_"); |
653 |
+ |
// graphName += igraph; |
654 |
+ |
// myGraph->SetName(graphName); |
655 |
+ |
break; |
656 |
+ |
} |
657 |
+ |
} |
658 |
+ |
return myGraph; |
659 |
+ |
} |
660 |
|
|
661 |
+ |
TH2F* fillHoles(TH2F* h2){ |
662 |
|
|
663 |
+ |
int nx = h2->GetNbinsX(); |
664 |
+ |
int ny = h2->GetNbinsY(); |
665 |
+ |
std::cout << "Nbins: " << nx << " " << ny << std::endl; |
666 |
+ |
|
667 |
+ |
for (int i=1;i<nx+1;i++){ |
668 |
+ |
for (int j=ny;j>0;j--){ |
669 |
+ |
int pos = j; |
670 |
+ |
int count =0; |
671 |
+ |
if (h2->GetBinContent(i,j)==0 && h2->GetBinContent(i-1,j)==-1 && h2->GetBinContent(i+1,j)==-1) h2->SetBinContent(i,j,-1.); |
672 |
+ |
|
673 |
+ |
if (h2->GetBinContent(i,j)==1 |
674 |
+ |
&& h2->GetBinContent(i-1,j)==-1 |
675 |
+ |
&& h2->GetBinContent(i+1,j)==-1 |
676 |
+ |
&& h2->GetBinContent(i,j+1)==-1 |
677 |
+ |
&& h2->GetBinContent(i,j-1)==-1) |
678 |
+ |
h2->SetBinContent(i,j,-1.); |
679 |
+ |
|
680 |
+ |
// if (h2->GetBinContent(i,j)<0){ |
681 |
+ |
if (h2->GetBinContent(i,j)<0 && h2->GetBinContent(i,j-1)<0){ |
682 |
+ |
// cout <<" bin content " << i <<" " << j<< " " << pos << " " << h2->GetBinContent(i,j) <<endl; |
683 |
+ |
for (int k=pos;k>0;k--){ |
684 |
+ |
h2->SetBinContent(i,k,-1.); |
685 |
+ |
} |
686 |
+ |
break; |
687 |
+ |
} |
688 |
+ |
|
689 |
+ |
|
690 |
+ |
} |
691 |
+ |
} |
692 |
+ |
return h2; |
693 |
|
} |
694 |
|
|
695 |
|
|
859 |
– |
TGraphErrors* getExpected_NLO_tanBeta50(){ |
696 |
|
|
861 |
– |
Int_t nl = 10; |
862 |
– |
Double_t xl[10]; |
863 |
– |
Double_t yl[10]; |
864 |
– |
Double_t exl[10]; |
865 |
– |
Double_t eyl[10]; |
866 |
– |
|
867 |
– |
// cout << " n " << hist->GetXaxis()->GetNbins() << endl; |
868 |
– |
|
869 |
– |
xl[0] = 200; |
870 |
– |
yl[0] = 287; |
871 |
– |
xl[1] = 220; |
872 |
– |
yl[1] = 287; |
873 |
– |
xl[2] = 245; |
874 |
– |
yl[2] = 287; |
875 |
– |
xl[3] = 270; |
876 |
– |
yl[3] = 265; |
877 |
– |
xl[4] = 300; |
878 |
– |
yl[4] = 245; |
879 |
– |
xl[5] = 350; |
880 |
– |
yl[5] = 222; |
881 |
– |
xl[6] = 400; |
882 |
– |
yl[6] = 197; |
883 |
– |
xl[7] = 450; |
884 |
– |
yl[7] = 180; |
885 |
– |
xl[8] = 500; |
886 |
– |
yl[8] = 168; |
887 |
– |
xl[9] = 550; |
888 |
– |
yl[9] = 145; |
697 |
|
|
698 |
|
|
699 |
|
|
892 |
– |
|
893 |
– |
|
894 |
– |
TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl); |
895 |
– |
gr1->SetMarkerColor(kBlue); |
896 |
– |
gr1->SetMarkerStyle(21); |
897 |
– |
|
898 |
– |
|
899 |
– |
//gr1->Draw("LP"); |
700 |
|
|
901 |
– |
TSpline3 *s = new TSpline3("grs",gr1); |
902 |
– |
s->SetLineColor(kBlue); |
903 |
– |
s->SetLineStyle(2); |
904 |
– |
s->SetLineWidth(3); |
905 |
– |
|
701 |
|
|
907 |
– |
return gr1; |
702 |
|
|
703 |
|
|
704 |
|
|
705 |
|
|
706 |
+ |
//old------------------------------------------------------------------------ |
707 |
|
|
708 |
+ |
TGraph* sq_LEP(){//sq-gl |
709 |
+ |
double sq[] = {0,0,100,100}; |
710 |
+ |
double gl[] = {0,2000,2000,0}; |
711 |
+ |
TGraph* res = new TGraph(4,sq,gl); |
712 |
+ |
res->SetFillColor(kBlue); |
713 |
+ |
return res; |
714 |
|
} |
715 |
< |
|
716 |
< |
|
717 |
< |
TGraphErrors* getObserved_NLO_tanBeta3(){ |
718 |
< |
|
719 |
< |
Int_t nl = 11; |
720 |
< |
Double_t xl[11]; |
920 |
< |
Double_t yl[11]; |
921 |
< |
Double_t exl[11]; |
922 |
< |
Double_t eyl[11]; |
923 |
< |
|
924 |
< |
// cout << " n " << hist->GetXaxis()->GetNbins() << endl; |
925 |
< |
|
926 |
< |
|
927 |
< |
|
928 |
< |
xl[0] = 0; |
929 |
< |
yl[0] = 274; |
930 |
< |
xl[1] = 100; |
931 |
< |
yl[1] = 270; |
932 |
< |
xl[2] = 150; |
933 |
< |
yl[2] = 268; |
934 |
< |
xl[3] = 200; |
935 |
< |
yl[3] = 265; |
936 |
< |
xl[4] = 250; |
937 |
< |
yl[4] = 255; |
938 |
< |
xl[5] = 300; |
939 |
< |
yl[5] = 230; |
940 |
< |
xl[6] = 350; |
941 |
< |
yl[6] = 195; |
942 |
< |
xl[7] = 400; |
943 |
< |
yl[7] = 160; |
944 |
< |
xl[8] = 450; |
945 |
< |
yl[8] = 140; |
946 |
< |
xl[9] = 480; |
947 |
< |
yl[9] = 130; |
948 |
< |
xl[10] = 530; |
949 |
< |
yl[10] = 120; |
950 |
< |
|
951 |
< |
|
952 |
< |
|
953 |
< |
|
954 |
< |
TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl); |
955 |
< |
gr1->SetMarkerColor(kBlue); |
956 |
< |
gr1->SetMarkerStyle(21); |
957 |
< |
|
958 |
< |
|
959 |
< |
//gr1->Draw("LP"); |
960 |
< |
|
961 |
< |
TSpline3 *s = new TSpline3("grs",gr1); |
962 |
< |
s->SetLineColor(kRed); |
963 |
< |
// s->SetLineStyle(2); |
964 |
< |
s->SetLineWidth(3); |
965 |
< |
|
966 |
< |
|
967 |
< |
return gr1; |
968 |
< |
|
969 |
< |
|
970 |
< |
|
971 |
< |
|
972 |
< |
|
715 |
> |
TGraph* gl_TEV(){//sq-gl |
716 |
> |
double sq[] = {0,2000,2000,0}; |
717 |
> |
double gl[] = {0,0,190,190}; |
718 |
> |
TGraph* res = new TGraph(4,sq,gl); |
719 |
> |
res->SetFillColor(kGreen+2); |
720 |
> |
return res; |
721 |
|
} |
722 |
|
|
723 |
+ |
TGraph* gl_CDF(){//sq-gl |
724 |
+ |
double sq[] = {0,2000,2000,0}; |
725 |
+ |
double gl[] = {190,190,230,230}; |
726 |
+ |
TGraph* res = new TGraph(4,sq,gl); |
727 |
+ |
res->SetFillColor(kOrange+5); |
728 |
+ |
return res; |
729 |
+ |
} |
730 |
|
|
731 |
+ |
TGraph* gl_DEZ(){//sq-gl |
732 |
+ |
double sq[] = {0,2000,2000,0}; |
733 |
+ |
double gl[] = {230,230,255,255}; |
734 |
+ |
TGraph* res = new TGraph(4,sq,gl); |
735 |
+ |
res->SetFillColor(kYellow-5); |
736 |
+ |
return res; |
737 |
+ |
} |
738 |
|
|
739 |
< |
TGraphErrors* getObserved_NLO_tanBeta10(){ |
740 |
< |
|
741 |
< |
Int_t nl = 11; |
742 |
< |
Double_t xl[11]; |
743 |
< |
Double_t yl[11]; |
744 |
< |
Double_t exl[11]; |
745 |
< |
Double_t eyl[11]; |
984 |
< |
|
985 |
< |
// cout << " n " << hist->GetXaxis()->GetNbins() << endl; |
986 |
< |
|
987 |
< |
xl[0] = 0; |
988 |
< |
yl[0] = 278; |
989 |
< |
xl[1] = 100; |
990 |
< |
yl[1] = 270; |
991 |
< |
xl[2] = 150; |
992 |
< |
yl[2] = 267; |
993 |
< |
xl[3] = 200; |
994 |
< |
yl[3] = 262; |
995 |
< |
xl[4] = 250; |
996 |
< |
yl[4] = 250; |
997 |
< |
xl[5] = 300; |
998 |
< |
yl[5] = 225; |
999 |
< |
xl[6] = 350; |
1000 |
< |
yl[6] = 192; |
1001 |
< |
xl[7] = 400; |
1002 |
< |
yl[7] = 163; |
1003 |
< |
xl[8] = 450; |
1004 |
< |
yl[8] = 148; |
1005 |
< |
xl[9] = 500; |
1006 |
< |
yl[9] = 140; |
1007 |
< |
xl[10] = 520; |
1008 |
< |
yl[10] = 137; |
1009 |
< |
|
1010 |
< |
|
1011 |
< |
|
1012 |
< |
|
1013 |
< |
|
1014 |
< |
TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl); |
1015 |
< |
gr1->SetMarkerColor(kBlue); |
1016 |
< |
gr1->SetMarkerStyle(21); |
1017 |
< |
|
1018 |
< |
|
1019 |
< |
//gr1->Draw("LP"); |
1020 |
< |
|
1021 |
< |
TSpline3 *s = new TSpline3("grs",gr1); |
1022 |
< |
s->SetLineColor(kRed); |
1023 |
< |
// s->SetLineStyle(2); |
1024 |
< |
s->SetLineWidth(3); |
1025 |
< |
|
1026 |
< |
|
1027 |
< |
return gr1; |
1028 |
< |
|
1029 |
< |
|
1030 |
< |
|
739 |
> |
TGraph* gl_WHT(){//sq-gl |
740 |
> |
double sq[] = {101,2000,2000,101}; |
741 |
> |
double gl[] = {256,256,400,400}; |
742 |
> |
TGraph* res = new TGraph(4,sq,gl); |
743 |
> |
res->SetFillColor(kWhite); |
744 |
> |
return res; |
745 |
> |
} |
746 |
|
|
747 |
|
|
748 |
+ |
//////////////////////////////////////////// |
749 |
+ |
TGraph* gl_LEP(){//gl-sq |
750 |
+ |
double sq[] = {0,0,100,100}; |
751 |
+ |
double gl[] = {0,2000,2000,0}; |
752 |
+ |
TGraph* res = new TGraph(4,gl,sq); |
753 |
+ |
res->SetFillColor(kBlue); |
754 |
+ |
return res; |
755 |
|
} |
756 |
|
|
757 |
+ |
TGraph* sq_TEV(){//gl-sq |
758 |
+ |
double sq[] = {0,2000,2000,330,250,300,200,150,100,0}; |
759 |
+ |
double gl[] = {0,0,190,190,260,300,500,560,500,500}; |
760 |
|
|
761 |
< |
TGraphErrors* getObserved_NLO_tanBeta50(){ |
761 |
> |
TGraph* res = new TGraph(10,gl,sq); |
762 |
> |
res->SetFillColor(kGreen+2); |
763 |
> |
return res; |
764 |
> |
} |
765 |
|
|
766 |
< |
Int_t nl = 10; |
767 |
< |
Double_t xl[10]; |
768 |
< |
Double_t yl[10]; |
769 |
< |
Double_t exl[10]; |
770 |
< |
Double_t eyl[10]; |
771 |
< |
|
772 |
< |
// cout << " n " << hist->GetXaxis()->GetNbins() << endl; |
773 |
< |
|
766 |
> |
TGraph* sq_CDF(){//gl-sq |
767 |
> |
double sq[] = {0,2000,2000,480,460,420,410,380,390,290,0}; |
768 |
> |
double gl[] = {0,0,280,280,300,310,330,340,440,320,320}; |
769 |
> |
TGraph* res = new TGraph(11,gl,sq); |
770 |
> |
res->SetFillColor(kOrange+5); |
771 |
> |
return res; |
772 |
> |
} |
773 |
> |
TGraph* sq_DEZ(){//gl-sq |
774 |
> |
double sq[] = {0,2000,2000,460,430,400,390,290,0}; |
775 |
> |
double gl[] = {0,0,305,305,320,350,440,320,320}; |
776 |
> |
TGraph* res = new TGraph(9,gl,sq); |
777 |
> |
res->SetFillColor(kYellow-5); |
778 |
> |
return res; |
779 |
> |
} |
780 |
|
|
781 |
< |
xl[0] = 200; |
782 |
< |
yl[0] = 243; |
783 |
< |
xl[1] = 220; |
784 |
< |
yl[1] = 264; |
785 |
< |
xl[2] = 235; |
786 |
< |
yl[2] = 278; |
787 |
< |
xl[3] = 250; |
788 |
< |
yl[3] = 267; |
789 |
< |
xl[4] = 300; |
790 |
< |
yl[4] = 230; |
791 |
< |
xl[5] = 350; |
1058 |
< |
yl[5] = 205; |
1059 |
< |
xl[6] = 400; |
1060 |
< |
yl[6] = 184; |
1061 |
< |
xl[7] = 450; |
1062 |
< |
yl[7] = 168; |
1063 |
< |
xl[8] = 500; |
1064 |
< |
yl[8] = 156; |
1065 |
< |
xl[9] = 520; |
1066 |
< |
yl[9] = 148; |
1067 |
< |
|
1068 |
< |
|
1069 |
< |
|
1070 |
< |
|
1071 |
< |
|
1072 |
< |
TGraphErrors* gr1 = new TGraphErrors(nl,xl,yl,exl,eyl); |
1073 |
< |
gr1->SetMarkerColor(kBlue); |
1074 |
< |
gr1->SetMarkerStyle(21); |
1075 |
< |
|
1076 |
< |
|
1077 |
< |
//gr1->Draw("LP"); |
781 |
> |
TGraph* glsq_NoSol(){//sq-gl |
782 |
> |
gStyle->SetHatchesSpacing(2.0); |
783 |
> |
gStyle->SetHatchesLineWidth(1); |
784 |
> |
double sq[] = {83,83,110,1297.6,0, 0}; |
785 |
> |
double gl[] = { 0,63,120,1466, 1466,0}; |
786 |
> |
TGraph* res = new TGraph(6,gl,sq); |
787 |
> |
res->SetLineColor(1); |
788 |
> |
res->SetLineWidth(2); |
789 |
> |
res->SetFillStyle(3354); |
790 |
> |
return res; |
791 |
> |
} |
792 |
|
|
1079 |
– |
TSpline3 *s = new TSpline3("grs",gr1); |
1080 |
– |
s->SetLineColor(kRed); |
1081 |
– |
// s->SetLineStyle(2); |
1082 |
– |
s->SetLineWidth(3); |
1083 |
– |
|
793 |
|
|
1085 |
– |
return gr1; |
794 |
|
|
795 |
|
|
796 |
|
|
797 |
+ |
TGraph * Atlas_m0_m12_tb3_obs() |
798 |
+ |
{ |
799 |
+ |
TGraph *graph = new TGraph(71); |
800 |
+ |
graph->SetLineWidth(2); |
801 |
+ |
graph->SetPoint(0,54,357.341); |
802 |
+ |
graph->SetPoint(1,82,358.4171); |
803 |
+ |
graph->SetPoint(2,110,359.8179); |
804 |
+ |
graph->SetPoint(3,110.934,359.875); |
805 |
+ |
graph->SetPoint(4,138,361.5302); |
806 |
+ |
graph->SetPoint(5,166,362.5696); |
807 |
+ |
graph->SetPoint(6,189.0676,359.875); |
808 |
+ |
graph->SetPoint(7,194,359.1415); |
809 |
+ |
graph->SetPoint(8,222,354.5211); |
810 |
+ |
graph->SetPoint(9,248.1714,351.625); |
811 |
+ |
graph->SetPoint(10,250,351.4583); |
812 |
+ |
graph->SetPoint(11,278,349.4991); |
813 |
+ |
graph->SetPoint(12,306,343.4051); |
814 |
+ |
graph->SetPoint(13,306.1313,343.375); |
815 |
+ |
graph->SetPoint(14,334,335.3855); |
816 |
+ |
graph->SetPoint(15,334.7966,335.125); |
817 |
+ |
graph->SetPoint(16,350.8793,326.875); |
818 |
+ |
graph->SetPoint(17,362,319.7823); |
819 |
+ |
graph->SetPoint(18,364.6568,318.625); |
820 |
+ |
graph->SetPoint(19,383.5969,310.375); |
821 |
+ |
graph->SetPoint(20,390,308.6978); |
822 |
+ |
graph->SetPoint(21,415.0931,302.125); |
823 |
+ |
graph->SetPoint(22,418,300.2992); |
824 |
+ |
graph->SetPoint(23,423.9359,293.875); |
825 |
+ |
graph->SetPoint(24,431.0348,285.625); |
826 |
+ |
graph->SetPoint(25,441.6066,277.375); |
827 |
+ |
graph->SetPoint(26,446,275.3629); |
828 |
+ |
graph->SetPoint(27,468.0485,269.125); |
829 |
+ |
graph->SetPoint(28,474,267.2393); |
830 |
+ |
graph->SetPoint(29,486.3632,260.875); |
831 |
+ |
graph->SetPoint(30,495.8534,252.625); |
832 |
+ |
graph->SetPoint(31,502,244.7684); |
833 |
+ |
graph->SetPoint(32,502.3699,244.375); |
834 |
+ |
graph->SetPoint(33,508.424,236.125); |
835 |
+ |
graph->SetPoint(34,514.4781,227.875); |
836 |
+ |
graph->SetPoint(35,518.8059,219.625); |
837 |
+ |
graph->SetPoint(36,521.5056,211.375); |
838 |
+ |
graph->SetPoint(37,524.324,203.125); |
839 |
+ |
graph->SetPoint(38,527.1424,194.875); |
840 |
+ |
graph->SetPoint(39,530,193.5052); |
841 |
+ |
graph->SetPoint(40,552.5782,186.625); |
842 |
+ |
graph->SetPoint(41,558,185.8767); |
843 |
+ |
graph->SetPoint(42,586,180.1476); |
844 |
+ |
graph->SetPoint(43,592.2836,178.375); |
845 |
+ |
graph->SetPoint(44,614,171.422); |
846 |
+ |
graph->SetPoint(45,617.5927,170.125); |
847 |
+ |
graph->SetPoint(46,627.5396,161.875); |
848 |
+ |
graph->SetPoint(47,642,157.9876); |
849 |
+ |
graph->SetPoint(48,658.2277,153.625); |
850 |
+ |
graph->SetPoint(49,670,151.1225); |
851 |
+ |
graph->SetPoint(50,698,146.9886); |
852 |
+ |
graph->SetPoint(51,711.5425,145.375); |
853 |
+ |
graph->SetPoint(52,726,143.6935); |
854 |
+ |
graph->SetPoint(53,754,140.0648); |
855 |
+ |
graph->SetPoint(54,782,137.4563); |
856 |
+ |
graph->SetPoint(55,783.0426,137.125); |
857 |
+ |
graph->SetPoint(56,796.0326,128.875); |
858 |
+ |
graph->SetPoint(57,810,125.0328); |
859 |
+ |
graph->SetPoint(58,826.0235,120.625); |
860 |
+ |
graph->SetPoint(59,838,117.3305); |
861 |
+ |
graph->SetPoint(60,866,116.7462); |
862 |
+ |
graph->SetPoint(61,894,116.1044); |
863 |
+ |
graph->SetPoint(62,922,114.6645); |
864 |
+ |
graph->SetPoint(63,950,116.937); |
865 |
+ |
graph->SetPoint(64,978,117.6956); |
866 |
+ |
graph->SetPoint(65,1006,115.198); |
867 |
+ |
graph->SetPoint(66,1034,113.1166); |
868 |
+ |
graph->SetPoint(67,1038.967,112.375); |
869 |
+ |
graph->SetPoint(68,1062,108.0997); |
870 |
+ |
graph->SetPoint(69,1090,104.373); |
871 |
+ |
graph->SetPoint(70,1096.429,104.125); |
872 |
+ |
graph->SetFillColor(0); |
873 |
+ |
return graph; |
874 |
+ |
} |
875 |
+ |
TGraph * Atlas_mGl_mSq_obs() |
876 |
+ |
{ |
877 |
+ |
//x:gluino mass, y:squark mass |
878 |
+ |
TGraph *graph = new TGraph(64); |
879 |
+ |
graph->SetLineWidth(2); |
880 |
+ |
graph->SetPoint(0,511.2569,1976.25); |
881 |
+ |
graph->SetPoint(1,513.125,1936.181); |
882 |
+ |
graph->SetPoint(2,513.4714,1928.75); |
883 |
+ |
graph->SetPoint(3,515.6859,1881.25); |
884 |
+ |
graph->SetPoint(4,517.9004,1833.75); |
885 |
+ |
graph->SetPoint(5,520.1148,1786.25); |
886 |
+ |
graph->SetPoint(6,522.3293,1738.75); |
887 |
+ |
graph->SetPoint(7,524.5438,1691.25); |
888 |
+ |
graph->SetPoint(8,526.1095,1643.75); |
889 |
+ |
graph->SetPoint(9,526.5267,1596.25); |
890 |
+ |
graph->SetPoint(10,526.9924,1548.75); |
891 |
+ |
graph->SetPoint(11,527.2745,1501.25); |
892 |
+ |
graph->SetPoint(12,526.9487,1453.75); |
893 |
+ |
graph->SetPoint(13,526.6228,1406.25); |
894 |
+ |
graph->SetPoint(14,532.902,1358.75); |
895 |
+ |
graph->SetPoint(15,540.182,1311.25); |
896 |
+ |
graph->SetPoint(16,547.4619,1263.75); |
897 |
+ |
graph->SetPoint(17,558.0438,1216.25); |
898 |
+ |
graph->SetPoint(18,561.875,1203.002); |
899 |
+ |
graph->SetPoint(19,579.4475,1168.75); |
900 |
+ |
graph->SetPoint(20,603.8166,1121.25); |
901 |
+ |
graph->SetPoint(21,610.625,1107.979); |
902 |
+ |
graph->SetPoint(22,630.8311,1073.75); |
903 |
+ |
graph->SetPoint(23,658.8712,1026.25); |
904 |
+ |
graph->SetPoint(24,659.375,1025.691); |
905 |
+ |
graph->SetPoint(25,703.8609,978.75); |
906 |
+ |
graph->SetPoint(26,708.125,975.5966); |
907 |
+ |
graph->SetPoint(27,756.875,945.0332); |
908 |
+ |
graph->SetPoint(28,778.5082,931.25); |
909 |
+ |
graph->SetPoint(29,805.625,916.3566); |
910 |
+ |
graph->SetPoint(30,847.5791,883.75); |
911 |
+ |
graph->SetPoint(31,854.375,879.4212); |
912 |
+ |
graph->SetPoint(32,903.125,848.0476); |
913 |
+ |
graph->SetPoint(33,927.7959,836.25); |
914 |
+ |
graph->SetPoint(34,951.875,823.2943); |
915 |
+ |
graph->SetPoint(35,1000.625,790.1523); |
916 |
+ |
graph->SetPoint(36,1004.488,788.75); |
917 |
+ |
graph->SetPoint(37,1049.375,774.2142); |
918 |
+ |
graph->SetPoint(38,1098.125,755.1404); |
919 |
+ |
graph->SetPoint(39,1130.904,741.25); |
920 |
+ |
graph->SetPoint(40,1146.875,736.2226); |
921 |
+ |
graph->SetPoint(41,1195.625,720.3208); |
922 |
+ |
graph->SetPoint(42,1244.375,701.1234); |
923 |
+ |
graph->SetPoint(43,1266.694,693.75); |
924 |
+ |
graph->SetPoint(44,1293.125,685.9941); |
925 |
+ |
graph->SetPoint(45,1341.875,668.9126); |
926 |
+ |
graph->SetPoint(46,1390.625,652.8072); |
927 |
+ |
graph->SetPoint(47,1439.375,647.4204); |
928 |
+ |
graph->SetPoint(48,1448.107,646.25); |
929 |
+ |
graph->SetPoint(49,1488.125,638.5908); |
930 |
+ |
graph->SetPoint(50,1536.875,620.8084); |
931 |
+ |
graph->SetPoint(51,1585.625,603.026); |
932 |
+ |
graph->SetPoint(52,1597.347,598.75); |
933 |
+ |
graph->SetPoint(53,1634.375,581.9133); |
934 |
+ |
graph->SetPoint(54,1683.125,559.7463); |
935 |
+ |
graph->SetPoint(55,1701.81,551.25); |
936 |
+ |
graph->SetPoint(56,1731.875,537.5793); |
937 |
+ |
graph->SetPoint(57,1780.625,515.4123); |
938 |
+ |
graph->SetPoint(58,1806.273,503.75); |
939 |
+ |
graph->SetPoint(59,1829.375,493.2101); |
940 |
+ |
graph->SetPoint(60,1878.125,471.0784); |
941 |
+ |
graph->SetPoint(61,1910.736,456.25); |
942 |
+ |
graph->SetPoint(62,1926.875,448.241); |
943 |
+ |
graph->SetPoint(63,1975.625,426.7444); |
944 |
+ |
return graph; |
945 |
+ |
} |
946 |
+ |
|
947 |
+ |
|
948 |
+ |
//- Jim Lungu ---------------------------------------------- |
949 |
+ |
|
950 |
+ |
TGraph* Jim_mht_tb3(int mode){ |
951 |
+ |
Int_t n = 10; |
952 |
+ |
Double_t x[10] = {15,65,115,165,215,265,315,365,415,465}; |
953 |
+ |
Double_t yobs[10] = {330,330,340,340,330,320,310,300,280,260}; |
954 |
+ |
Double_t yexp[10] = {330,320,320,320,320,310,300,290,270,250}; |
955 |
+ |
Double_t yexpp[10] = {350,350,350,340,340,330,330,310,300,280}; |
956 |
+ |
Double_t yexpn[10] = {310,310,310,300,300,300,280,270,240,240}; |
957 |
+ |
Double_t y[10]; |
958 |
+ |
for (int i=0;i<n;i++) { |
959 |
+ |
if (mode==0) y[i] = yobs[i]; |
960 |
+ |
if (mode==1) y[i] = yexp[i]; |
961 |
+ |
if (mode==2) y[i] = yexpp[i]; |
962 |
+ |
if (mode==3) y[i] = yexpn[i]; |
963 |
+ |
} |
964 |
+ |
TGraph* gr = new TGraph(n,x,y); |
965 |
+ |
gr->SetLineWidth(2); |
966 |
+ |
if (mode==1) gr->SetLineStyle(2); |
967 |
+ |
if (mode>2) {gr->SetFillColor(8); gr->SetLineColor(8);} |
968 |
+ |
else |
969 |
+ |
gr->SetLineColor(2); |
970 |
+ |
return gr; |
971 |
+ |
} |
972 |
+ |
|
973 |
+ |
TGraph* Jim_ht_tb3(int mode){ |
974 |
+ |
Int_t n = 10; |
975 |
+ |
Double_t x[10] = {15,65,115,165,215,265,315,365,415,465}; |
976 |
+ |
Double_t yobs[10] = {300,300,290,290,300,290,280,270,260,250}; |
977 |
+ |
Double_t yexp[10] = {300,300,290,300,300,290,280,270,260,250}; |
978 |
+ |
Double_t yexpp[10] = {320,320,320,320,310,310,300,290,280,270}; |
979 |
+ |
Double_t yexpn[10] = {290,290,280,290,280,280,270,250,250,240}; |
980 |
+ |
Double_t y[10]; |
981 |
+ |
for (int i=0;i<n;i++) { |
982 |
+ |
if (mode==0) y[i] = yobs[i]; |
983 |
+ |
if (mode==1) y[i] = yexp[i]; |
984 |
+ |
if (mode==2) y[i] = yexpp[i]; |
985 |
+ |
if (mode==3) y[i] = yexpn[i]; |
986 |
+ |
} |
987 |
+ |
TGraph* gr = new TGraph(n,x,y); |
988 |
+ |
gr->SetLineWidth(2); |
989 |
+ |
if (mode==1) gr->SetLineStyle(2); |
990 |
+ |
if (mode>2) {gr->SetFillColor(8); gr->SetLineColor(8);} |
991 |
+ |
else |
992 |
+ |
gr->SetLineColor(2); |
993 |
+ |
return gr; |
994 |
+ |
} |
995 |
+ |
|
996 |
+ |
TGraph* Jim_mht_tb50(int mode){ |
997 |
+ |
Int_t n = 9; |
998 |
+ |
Double_t x[9] = {205,255,305,355,405,455,505,555,605}; |
999 |
+ |
Double_t yobs[9] = {330,330,310,300,300,270,250,240,210}; |
1000 |
+ |
Double_t yexp[9] = {320,320,300,290,280,250,240,230,210}; |
1001 |
+ |
Double_t yexpp[9] = {350,340,330,320,310,290,260,250,230}; |
1002 |
+ |
Double_t yexpn[9] = {300,300,290,280,260,240,230,200,190}; |
1003 |
+ |
Double_t y[9]; |
1004 |
+ |
for (int i=0;i<n;i++) { |
1005 |
+ |
if (mode==0) y[i] = yobs[i]; |
1006 |
+ |
if (mode==1) y[i] = yexp[i]; |
1007 |
+ |
if (mode==2) y[i] = yexpp[i]; |
1008 |
+ |
if (mode==3) y[i] = yexpn[i]; |
1009 |
+ |
} |
1010 |
+ |
TGraph* gr = new TGraph(n,x,y); |
1011 |
+ |
gr->SetLineWidth(2); |
1012 |
+ |
if (mode==1) gr->SetLineStyle(2); |
1013 |
+ |
if (mode>2) {gr->SetFillColor(8); gr->SetLineColor(8);} |
1014 |
+ |
else |
1015 |
+ |
gr->SetLineColor(2); |
1016 |
+ |
return gr; |
1017 |
+ |
} |
1018 |
+ |
|
1019 |
+ |
TGraph* Jim_ht_tb50(int mode){ |
1020 |
+ |
Int_t n = 9; |
1021 |
+ |
Double_t x[9] = {205,255,305,355,405,455,505,555,605}; |
1022 |
+ |
Double_t yobs[9] = {300,290,280,280,260,250,230,220,220}; |
1023 |
+ |
Double_t yexp[9] = {300,290,280,280,260,250,240,230,220}; |
1024 |
+ |
Double_t yexpp[9] = {320,310,300,290,290,270,260,250,240}; |
1025 |
+ |
Double_t yexpn[9] = {280,270,270,260,250,240,230,220,210}; |
1026 |
+ |
Double_t y[10]; |
1027 |
+ |
for (int i=0;i<n;i++) { |
1028 |
+ |
if (mode==0) y[i] = yobs[i]; |
1029 |
+ |
if (mode==1) y[i] = yexp[i]; |
1030 |
+ |
if (mode==2) y[i] = yexpp[i]; |
1031 |
+ |
if (mode==3) y[i] = yexpn[i]; |
1032 |
+ |
} |
1033 |
+ |
TGraph* gr = new TGraph(n,x,y); |
1034 |
+ |
gr->SetLineWidth(2); |
1035 |
+ |
if (mode==1) gr->SetLineStyle(2); |
1036 |
+ |
if (mode>2) {gr->SetFillColor(8); gr->SetLineColor(8);} |
1037 |
+ |
else |
1038 |
+ |
gr->SetLineColor(2); |
1039 |
+ |
return gr; |
1040 |
+ |
} |
1041 |
+ |
|
1042 |
+ |
TGraph* Jim_mht_tb10(int mode){ |
1043 |
+ |
Int_t n = 20; |
1044 |
+ |
Double_t x[20] = {15,65,115,165,215,265,315,365,415,465,515,565,615,665,715,765,815,865,915,965}; |
1045 |
+ |
Double_t yobs[20] = {330,340,330,330,330,320,310,280,280,260,240,230,220,220,210,190,190,180,180,180}; |
1046 |
+ |
Double_t yexp[20] = {330,320,320,320,320,310,300,280,270,250,240,220,220,200,190,190,180,160,170,160}; |
1047 |
+ |
Double_t yexpp[20] = {330,340,350,340,330,330,330,310,300,280,270,240,240,230,220,210,200,180,190,180}; |
1048 |
+ |
Double_t yexpn[20] = {290,280,310,300,300,290,280,270,250,240,220,210,200,190,160,170,160,150,150,140}; |
1049 |
+ |
Double_t y[20]; |
1050 |
+ |
for (int i=0;i<n;i++) { |
1051 |
+ |
if (mode==0) y[i] = yobs[i]; |
1052 |
+ |
if (mode==1) y[i] = yexp[i]; |
1053 |
+ |
if (mode==2) y[i] = yexpp[i]; |
1054 |
+ |
if (mode==3) y[i] = yexpn[i]; |
1055 |
+ |
} |
1056 |
+ |
TGraph* gr = new TGraph(n,x,y); |
1057 |
+ |
gr->SetLineWidth(2); |
1058 |
+ |
if (mode==1) gr->SetLineStyle(2); |
1059 |
+ |
if (mode>2) {gr->SetFillColor(8); gr->SetLineColor(8);} |
1060 |
+ |
else |
1061 |
+ |
gr->SetLineColor(2); |
1062 |
+ |
return gr; |
1063 |
+ |
} |
1064 |
+ |
|
1065 |
+ |
TGraph* Jim_ht_tb10(int mode){ |
1066 |
+ |
Int_t n = 20; |
1067 |
+ |
Double_t x[20] = {15,65,115,165,215,265,315,365,415,465,515,565,615,665,715,765,815,865,915,965}; |
1068 |
+ |
Double_t yobs[20] = {290,280,300,290,300,290,280,270,250,250,240,230,220,220,210,190,200,180,190,180}; |
1069 |
+ |
Double_t yexp[20] = {290,280,290,300,300,290,280,270,250,250,240,240,220,220,210,190,200,180,190,180}; |
1070 |
+ |
Double_t yexpp[20] = {330,320,310,310,310,310,300,280,280,260,260,250,240,230,220,220,210,210,200,190}; |
1071 |
+ |
Double_t yexpn[20] = {290,280,280,280,280,280,270,260,240,240,230,220,200,200,190,190,180,180,170,170}; |
1072 |
+ |
Double_t y[20]; |
1073 |
+ |
for (int i=0;i<n;i++) { |
1074 |
+ |
if (mode==0) y[i] = yobs[i]; |
1075 |
+ |
if (mode==1) y[i] = yexp[i]; |
1076 |
+ |
if (mode==2) y[i] = yexpp[i]; |
1077 |
+ |
if (mode==3) y[i] = yexpn[i]; |
1078 |
+ |
} |
1079 |
+ |
TGraph* gr = new TGraph(n,x,y); |
1080 |
+ |
gr->SetLineWidth(2); |
1081 |
+ |
if (mode==1) gr->SetLineStyle(2); |
1082 |
+ |
if (mode>2) {gr->SetFillColor(8); gr->SetLineColor(8);} |
1083 |
+ |
else |
1084 |
+ |
gr->SetLineColor(2); |
1085 |
+ |
return gr; |
1086 |
+ |
} |
1087 |
|
|
1088 |
|
|
1091 |
– |
} |
1089 |
|
|