1 |
#include "plot.h"
|
2 |
#include "SusyScan.h"
|
3 |
#include "GeneratorMasses.h"
|
4 |
#include "PlotTools.h"
|
5 |
#include "TheLimits.h"
|
6 |
#include "GlobalFunctions.h"
|
7 |
#include "StyleSettings.h"
|
8 |
|
9 |
#include "TRint.h"
|
10 |
#include "TROOT.h"
|
11 |
#include "TObjArray.h"
|
12 |
#include "TStyle.h"
|
13 |
|
14 |
#include "TChain.h"
|
15 |
#include "TFile.h"
|
16 |
#include "TGraph.h"
|
17 |
#include "TH1.h"
|
18 |
#include "TH2.h"
|
19 |
#include "TH2F.h"
|
20 |
#include "TTree.h"
|
21 |
#include "TKey.h"
|
22 |
#include "Riostream.h"
|
23 |
#include "TCanvas.h"
|
24 |
#include "TLegend.h"
|
25 |
#include "TLatex.h"
|
26 |
#include "TMarker.h"
|
27 |
|
28 |
#include <string>
|
29 |
#include <cmath>
|
30 |
#include <stdio.h>
|
31 |
|
32 |
int plot(int argc, char** argv)
|
33 |
{
|
34 |
//interactive root session
|
35 |
//TApplication theApp("App", 0, 0);
|
36 |
if (gROOT->IsBatch()) {
|
37 |
fprintf(stderr, "%s: cannot run in batch mode\n", argv[0]);
|
38 |
return 1;
|
39 |
}
|
40 |
|
41 |
/*
|
42 |
//Style stuff
|
43 |
gStyle->SetHistFillColor(0);
|
44 |
gStyle->SetPalette(1);
|
45 |
gStyle->SetCanvasColor(0);
|
46 |
gStyle->SetCanvasBorderMode(0);
|
47 |
gStyle->SetPadColor(0);
|
48 |
gStyle->SetPadBorderMode(0);
|
49 |
gStyle->SetFrameBorderMode(0);
|
50 |
|
51 |
gStyle->SetTitleFillColor(0);
|
52 |
gStyle->SetTitleBorderSize(0);
|
53 |
gStyle->SetTitleX(0.10);
|
54 |
gStyle->SetTitleY(0.98);
|
55 |
gStyle->SetTitleW(0.8);
|
56 |
gStyle->SetTitleH(0.06);
|
57 |
|
58 |
gStyle->SetErrorX(0);
|
59 |
gStyle->SetStatColor(0);
|
60 |
gStyle->SetStatBorderSize(0);
|
61 |
gStyle->SetStatX(0);
|
62 |
gStyle->SetStatY(0);
|
63 |
gStyle->SetStatW(0);
|
64 |
gStyle->SetStatH(0);
|
65 |
|
66 |
gStyle->SetTitleFont(22);
|
67 |
gStyle->SetLabelFont(22,"X");
|
68 |
gStyle->SetLabelFont(22,"Y");
|
69 |
gStyle->SetLabelFont(22,"Z");
|
70 |
gStyle->SetLabelSize(0.03,"X");
|
71 |
gStyle->SetLabelSize(0.03,"Y");
|
72 |
gStyle->SetLabelSize(0.03,"Z");
|
73 |
*/
|
74 |
util::StyleSettings::paper();
|
75 |
gStyle->SetPadBottomMargin(0.18);
|
76 |
|
77 |
//gROOT->SetStyle("MyStyle");
|
78 |
TCanvas * c1 = new TCanvas("c1","c1",600,600);
|
79 |
//c1->SetFillStyle ( 4000 );
|
80 |
//c1->SetLeftMargin ( 0.15 );
|
81 |
//c1->SetRightMargin ( 0.15 );
|
82 |
//c1->SetBottomMargin( 0.10 );
|
83 |
c1->cd();
|
84 |
|
85 |
//Get limits and generator masses ---------------------------------------------------
|
86 |
TheLimits * genpoints = new TheLimits();
|
87 |
//genpoints->Fill(argc, argv);
|
88 |
//genpoints->Fill("limits_MHT_tb50_20110303/filelist.txt");
|
89 |
genpoints->Fill("limits_moriond_MHT.old/filelist_tb50.txt");
|
90 |
|
91 |
TheLimits * genpointsHT = new TheLimits();
|
92 |
//genpointsHT->Fill("limits_HT_tb50_20110303/filelist.txt");
|
93 |
genpointsHT->Fill("limits_moriond_HT.old/filelist_tb50.txt");
|
94 |
|
95 |
|
96 |
//Replace read limits with specific numbers
|
97 |
//genpoints->OverwriteLimits("ABCD_MHT");
|
98 |
|
99 |
genpoints->FillGeneratorMasses("GenScan_tb50.dat");
|
100 |
genpoints->match();
|
101 |
genpointsHT->FillGeneratorMasses("GenScan_tb50.dat");
|
102 |
genpointsHT->match();
|
103 |
|
104 |
//genpoints->ExpandGrid(1);
|
105 |
//genpoints->ExpandGrid(1);
|
106 |
//genpoints->ExpandGrid(1);
|
107 |
//genpointsHT->ExpandGrid(1);
|
108 |
//genpointsHT->ExpandGrid(1);
|
109 |
//genpointsHT->ExpandGrid(1);
|
110 |
|
111 |
//the plotting ----------------------------------------------------------------------
|
112 |
//plotting helper functions
|
113 |
PlotTools<SusyScan> * plotTools = new PlotTools<SusyScan>(genpoints->GetScan());
|
114 |
PlotTools<SusyScan> * plotToolsHT = new PlotTools<SusyScan>(genpointsHT->GetScan());
|
115 |
PlotTools<GeneratorMasses> * plotMasses = new PlotTools<GeneratorMasses>(genpoints->GetGeneratorMasses());
|
116 |
|
117 |
//iso mass lines
|
118 |
TGraph * gl500 = plotMasses->Line(Mzero, Mhalf, MGluino, 500);
|
119 |
TGraph * sq500 = plotMasses->Line(Mzero, Mhalf, MSquarkL, 500, 10);
|
120 |
sq500->SetLineWidth(2); sq500->SetLineColor(7);
|
121 |
|
122 |
TGraph * chi100 = plotMasses->Line(Mzero, Mhalf, MChi1, 50, 20);
|
123 |
TGraph * cha200 = plotMasses->Line(Mzero, Mhalf, MCha1, 200, 20);
|
124 |
cha200->SetLineColor(2);
|
125 |
|
126 |
//the histograms
|
127 |
c1->SetLogz(1);
|
128 |
//h->SetMaximum(27);
|
129 |
//h->SetMinimum(0.01);
|
130 |
|
131 |
/**/
|
132 |
// cross-section in M0 - M1/2
|
133 |
TH2F*hxsec = new TH2F("xsec",";m_{0} [GeV]; m_{1/2} [GeV]; cross section [pb]",
|
134 |
40,200,600,26,140,400);
|
135 |
plotTools->Area(hxsec, Mzero, Mhalf, Xsection);
|
136 |
hxsec->SetMinimum(0.01);
|
137 |
//sq500->Draw();
|
138 |
//gl500->Draw();
|
139 |
hxsec->Draw("colz");
|
140 |
c1->SaveAs("results_tb50/Xsection_m0_m12_tb50.pdf");
|
141 |
std::string wait;
|
142 |
//std::cin>>wait;
|
143 |
|
144 |
// Observed Limit in M0 - M1/2
|
145 |
TH2F*hobslimit = new TH2F("obslimit",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Observed Limit [pb]",
|
146 |
40,200,600,26,140,400);
|
147 |
plotTools->Area(hobslimit, Mzero, Mhalf, ObsXsecLimit);
|
148 |
hobslimit->SetMinimum(0.01);
|
149 |
hobslimit->Draw("colz");
|
150 |
c1->SaveAs("results_tb50/ObsLimit_m0_m12_tb50.pdf");
|
151 |
|
152 |
// Expected Limit in M0 - M1/2
|
153 |
TH2F*hexplimit = new TH2F("explimit",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Limit [pb]",
|
154 |
40,200,600,26,140,400);
|
155 |
plotTools->Area(hexplimit, Mzero, Mhalf, ExpXsecLimit);
|
156 |
hexplimit->SetMinimum(0.01);
|
157 |
hexplimit->Draw("colz");
|
158 |
c1->SaveAs("results_tb50/ExpLimit_m0_m12_tb50.pdf");
|
159 |
|
160 |
// Signal Acceptance in M0 - M1/2
|
161 |
TH2F*hsigacc = new TH2F("sigacc",";m_{0} [GeV]; m_{1/2} [GeV]; Signal Acceptance",
|
162 |
40,200,600,26,140,400);
|
163 |
plotTools->Area(hsigacc, Mzero, Mhalf, SignalAcceptance);
|
164 |
hsigacc->SetMinimum(0.01);
|
165 |
hsigacc->SetMaximum(1.0);
|
166 |
hsigacc->Draw("colz");
|
167 |
chi100->Draw();
|
168 |
cha200->Draw();
|
169 |
gl500 ->Draw();
|
170 |
sq500 ->Draw();
|
171 |
c1->SaveAs("results_tb50/SigAcc_m0_m12_tb50.pdf");
|
172 |
|
173 |
// Exp. Limit on Number of Signal Events in M0 - M1/2
|
174 |
c1->SetLogz(0);
|
175 |
TH2F*hexplimitnsig = new TH2F("explimitnsig",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL exp. limit signal events [# ]",
|
176 |
40,200,600,26,140,400);
|
177 |
plotTools->Area(hexplimitnsig, Mzero, Mhalf, ExpNSignLimit);
|
178 |
hexplimitnsig->SetMinimum(0.0);
|
179 |
hexplimitnsig->SetMaximum(20);
|
180 |
hexplimitnsig->Draw("colz");
|
181 |
c1->SaveAs("results_tb50/ExpLimitOnNSig_m0_m12_tb50.pdf");
|
182 |
|
183 |
// Charged LSP in M0 - M1/2
|
184 |
c1->SetRightMargin ( 0.15 );
|
185 |
c1->SetLogz(0);
|
186 |
TH2F*hchargedLSP = new TH2F("explimitnsig",";m_{0} [GeV]; m_{1/2} [GeV]; Charged LSP",
|
187 |
40,200,600,26,140,400);
|
188 |
plotTools->Area(hchargedLSP, Mzero, Mhalf, ChargedLSP);
|
189 |
//hchargedLSP->SetMinimum(-0.01);
|
190 |
//hchargedLSP->SetMaximum(1.1);
|
191 |
hchargedLSP->Draw("colz");
|
192 |
c1->SaveAs("results_tb50/ChargedLSP_m0_m12_tb50.pdf");
|
193 |
|
194 |
TH2F*hnLSP = new TH2F("explimitnsig",";m_{0} [GeV]; m_{1/2} [GeV]; Neutral LSP",
|
195 |
40,200,600,26,140,400);
|
196 |
plotTools->Area(hnLSP, Mzero, Mhalf, MChi1);
|
197 |
//hchargedLSP->SetMinimum(-0.01);
|
198 |
//hchargedLSP->SetMaximum(1.1);
|
199 |
hnLSP->Draw("colz");
|
200 |
c1->SaveAs("results_tb50/NeutralLSP_m0_m12_tb50.pdf");
|
201 |
|
202 |
// Obs. Limit on Number of Signal Events in M0 - M1/2
|
203 |
TH2F*hobslimitnsig = new TH2F("obslimitnsig",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL obs. limit signal events [# ]",
|
204 |
40,200,600,26,140,400);
|
205 |
plotTools->Area(hobslimitnsig, Mzero, Mhalf, ObsNSignLimit);
|
206 |
hobslimitnsig->SetMinimum(0.0);
|
207 |
hobslimitnsig->SetMaximum(20);
|
208 |
hobslimitnsig->Draw("colz");
|
209 |
c1->SaveAs("results_tb50/ObsLimitOnNSig_m0_m12_tb50.pdf");
|
210 |
|
211 |
c1->SetLogz(0);
|
212 |
// Expected Exclusion in M0 - M1/2
|
213 |
TH2F*hexpexcl = new TH2F("expexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Exclusion",
|
214 |
40,200,600,26,140,400);
|
215 |
plotTools->Area(hexpexcl, Mzero, Mhalf, ExpExclCL);
|
216 |
hexpexcl->Draw("colz");
|
217 |
c1->SaveAs("results_tb50/ExpExclusion_m0_m12_tb50.pdf");
|
218 |
|
219 |
// Observed Exclusion in M0 - M1/2
|
220 |
TH2F*hobsexcl = new TH2F("obsexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Observed Exclusion",
|
221 |
40,200,600,26,140,400);
|
222 |
plotTools->Area(hobsexcl, Mzero, Mhalf, ObsExclCL);
|
223 |
hobsexcl->Draw("colz");
|
224 |
c1->SaveAs("results_tb50/ObsExclusion_m0_m12_tb50.pdf");
|
225 |
|
226 |
// Observed Exclusion in M0 - M1/2
|
227 |
TH2F*hPLobsexcl = new TH2F("plobsexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Observed Exclusion",
|
228 |
40,200,600,26,140,400);
|
229 |
plotTools->Area(hPLobsexcl, Mzero, Mhalf, PLObsExclusion);
|
230 |
hPLobsexcl->Draw("colz");
|
231 |
c1->SaveAs("results_tb50/PL_ObsExclusion_m0_m12_tb50.pdf");
|
232 |
|
233 |
c1->SetRightMargin ( 0.1 );
|
234 |
// TestContours in M0 - M1/2
|
235 |
TH2F*texcl = new TH2F("texcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Exclusion",
|
236 |
40,200,600,26,140,400);
|
237 |
TH2F*texpexcl=(TH2F*)texcl->Clone();
|
238 |
plotToolsHT->Area(texpexcl, Mzero, Mhalf, NLOExpExclCLp1sigma);
|
239 |
std::vector<TGraph*> contours = plotTools->GetContours(texpexcl,3);
|
240 |
texpexcl->Draw("colz");
|
241 |
int col=kBlue-10;
|
242 |
for (std::vector<TGraph*>::iterator cont=contours.begin(); cont!=contours.end(); ++cont){
|
243 |
if (! *cont) continue;
|
244 |
double x, y;
|
245 |
(*cont)->GetPoint(0, x, y);
|
246 |
(*cont)->SetLineColor(col);
|
247 |
(*cont)->Draw("l");
|
248 |
TLatex l; l.SetTextSize(0.04); l.SetTextColor(col++);
|
249 |
char val[20];
|
250 |
sprintf(val,"%d",(int)(cont-contours.begin()));
|
251 |
l.DrawLatex(x,y,val);
|
252 |
//if (cont-contours.begin()>3) break;
|
253 |
}
|
254 |
c1->SaveAs("results_tb50/ExclusionTestContours_m0_m12_tb50.pdf");
|
255 |
|
256 |
|
257 |
// Exclusion in M0 - M1/2
|
258 |
c1->SetRightMargin ( 0.1 );
|
259 |
c1->SetTopMargin ( 0.1 );
|
260 |
TH2F*hexcl = new TH2F("hexcl",";m_{0} (GeV); m_{1/2} (GeV); 95% CL Expected Exclusion",
|
261 |
40,200,600,26,140,450);
|
262 |
TH2F*hs = new TH2F("hs","",40,200,600,26,140,400);
|
263 |
TGraph * gexpexcl = plotTools ->GetContour(hs,Mzero,Mhalf,NLOExpExclCL, 3,0, 2,2);
|
264 |
TGraph * gexpexcl_LO = plotTools ->GetContour(hs,Mzero,Mhalf,ExpExclCL, 3,0, 2,4);
|
265 |
TGraph * gobsexcl = plotTools ->GetContour(hs,Mzero,Mhalf,NLOObsExclCL, 3,0, 2,1);
|
266 |
TGraph * gobsexcl_LO = plotTools ->GetContour(hs,Mzero,Mhalf,ObsExclCL, 3,0, 2,1);
|
267 |
TGraph * gMCMCexpexcl = plotToolsHT->GetContour(hs,Mzero,Mhalf,MCMCExpExclusion, 3,0, 3,2);
|
268 |
TGraph * gMCMCobsexcl = plotToolsHT->GetContour(hs,Mzero,Mhalf,MCMCObsExclusion, 3,0, 3,1);
|
269 |
TGraph * gFCexpexclHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOFCExpExclusion, 3,0, 3,2);
|
270 |
TGraph * gFCexpexclHT_LO = plotToolsHT->GetContour(hs,Mzero,Mhalf,FCExpExclusion, 3,0, 3,4);
|
271 |
TGraph * gFCexpexclMHT = plotTools->GetContour(hs,Mzero,Mhalf,NLOFCExpExclusion, 3,0, 3,2);
|
272 |
TGraph * gFCexpexclMHT_LO = plotTools->GetContour(hs,Mzero,Mhalf,FCExpExclusion, 3,0, 3,4);
|
273 |
TGraph * gFCobsexclHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOFCObsExclusion, 3,0, 3,1);
|
274 |
TGraph * gFCobsexclMHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOFCObsExclusion, 3,0, 3,1);
|
275 |
TGraph * gCLsExpExclHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOExpExclCL, 3,0, 1,2);
|
276 |
TGraph * gCLsObsExclHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOObsExclCL, 3,0, 1,1);
|
277 |
TGraph * gCLsExpExclHT_LO = plotToolsHT->GetContour(hs,Mzero,Mhalf,ExpExclCL, 3,0, 1,4);
|
278 |
TGraph * gCLsObsExclHT_LO = plotToolsHT->GetContour(hs,Mzero,Mhalf,ObsExclCL, 3,0, 2,1);
|
279 |
TGraph * gCLsExpExclHTm1 = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOExpExclCLm1sigma,3,0, 5,2);
|
280 |
TGraph * gCLsExpExclHTp1 = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOExpExclCLp1sigma,3,0, 5,2);
|
281 |
TGraph * gCLsExpExclMHTm1 = plotTools ->GetContour(hs,Mzero,Mhalf,NLOExpExclCLm1sigma, 3,0, 5,2);
|
282 |
TGraph * gCLsExpExclMHTp1 = plotTools ->GetContour(hs,Mzero,Mhalf,NLOExpExclCLp1sigma, 3,0, 5,2);
|
283 |
TGraph * gCheck1 = (TGraph*)gobsexcl->Clone();
|
284 |
TGraph * gCheck2 = (TGraph*)gexpexcl->Clone();
|
285 |
Smooth( gCLsObsExclHT, 27); gCLsObsExclHT->SetLineWidth( 3 );
|
286 |
Smooth( gCLsExpExclHT, 27 ); gCLsExpExclHT->SetLineWidth( 3 );
|
287 |
Smooth( gCLsObsExclHT_LO, 27); gCLsObsExclHT_LO->SetLineWidth( 2 );
|
288 |
Smooth( gCLsExpExclHT_LO, 27 ); gCLsExpExclHT_LO->SetLineWidth( 3 );
|
289 |
Smooth( gexpexcl, 27 );
|
290 |
Smooth( gobsexcl_LO, 27 );gobsexcl_LO->SetLineWidth( 2 );
|
291 |
//Smooth( gobsexcl, 27 );
|
292 |
Smooth( gobsexcl, 27 );
|
293 |
Smooth( gexpexcl_LO, 27 );
|
294 |
Smooth( gFCexpexclHT, 27 );
|
295 |
Smooth( gFCexpexclHT_LO, 27 );gFCexpexclHT_LO->SetLineWidth( 3 );
|
296 |
Smooth( gFCexpexclMHT, 27 );
|
297 |
Smooth( gFCexpexclMHT_LO, 27 );
|
298 |
Smooth( gFCobsexclHT, 27 );gFCobsexclHT->SetLineWidth( 3 );
|
299 |
Smooth( gFCobsexclMHT, 27 );
|
300 |
Smooth( gCLsExpExclHTm1, 27 );
|
301 |
Smooth( gCLsExpExclHTp1, 27 );
|
302 |
Smooth( gCLsExpExclMHTm1, 27 );
|
303 |
Smooth( gCLsExpExclMHTp1, 27 );
|
304 |
TGraph * CLsObsNLO = plotToolsHT->ChooseBest(gCLsObsExclHT,gobsexcl, gCLsObsExclHT,gobsexcl);
|
305 |
TGraph * CLsObsLO = plotToolsHT->ChooseBest(gCLsObsExclHT_LO,gobsexcl_LO, gCLsObsExclHT_LO,gobsexcl_LO);
|
306 |
TGraph * CLsExpNLO = plotToolsHT->ChooseBest(gCLsExpExclHT,gexpexcl, gCLsExpExclHT,gexpexcl);
|
307 |
TGraph * CLsExpLO = plotToolsHT->ChooseBest(gCLsExpExclHT_LO,gexpexcl_LO, gCLsExpExclHT_LO,gexpexcl_LO);
|
308 |
TGraph * FCExpLO = plotToolsHT->ChooseBest(gFCexpexclHT_LO,gFCexpexclMHT_LO,gFCexpexclHT_LO,gFCexpexclMHT_LO);
|
309 |
TGraph * FCExpNLO = plotToolsHT->ChooseBest(gFCexpexclHT,gFCexpexclMHT,gFCexpexclHT,gFCexpexclMHT);
|
310 |
TGraph * FCObsNLO = plotToolsHT->ChooseBest(gFCobsexclHT,gFCobsexclMHT,gFCobsexclHT,gFCobsexclMHT);
|
311 |
TGraph * gCLsExpExclp1 = plotToolsHT->ChooseBest(gCLsExpExclHTp1,gCLsExpExclMHTp1, gCLsExpExclHTp1,gCLsExpExclMHTp1);
|
312 |
TGraph * gCLsExpExclm1 = plotToolsHT->ChooseBest(gCLsExpExclHTm1,gCLsExpExclMHTm1, gCLsExpExclHTm1,gCLsExpExclMHTm1);
|
313 |
TGraph * gCLsExp1Sigma = MakeBand(gCLsExpExclp1, gCLsExpExclm1);
|
314 |
hexcl->GetYaxis()->SetTitleOffset(1.3);
|
315 |
hexcl->GetXaxis()->SetTitleOffset(0.92);
|
316 |
hexcl->Draw("colz");
|
317 |
//gCLsExpExclHTp1->Draw("l");
|
318 |
//gCLsExpExclMHTp1->Draw("l");
|
319 |
//gCLsExpExclHTm1->Draw("l");
|
320 |
//gCLsExpExclMHTm1->Draw("l");
|
321 |
gCLsExp1Sigma->Draw("f");
|
322 |
//set old exclusion Limits
|
323 |
TGraph* Atlas = Atlas_m0_m12_tb3_obs();
|
324 |
Atlas->SetLineColor( 28 );
|
325 |
TGraph* LEP_ch = set_lep_ch(50);
|
326 |
TGraph* LEP_sl = set_lep_sl(50);//slepton curve
|
327 |
TGraph* TEV_sg_cdf = set_tev_sg_cdf(50);//squark gluino cdf
|
328 |
TGraph* TEV_sg_d0 = set_tev_sg_d0(50);//squark gluino d0
|
329 |
//TGraph* TEV_tlp_cdf = set_tev_tlp_cdf(10);//trilepton cdf
|
330 |
//TGraph* TEV_tlp_d0 = set_tev_tlp_d0(10);//trilepton d0
|
331 |
TGraph* stau = set_tev_stau(50);//stau
|
332 |
TGraph* TEV_sn_d0_1 = set_sneutrino_d0_1(50);
|
333 |
TGraph* TEV_sn_d0_2 = set_sneutrino_d0_2(50);
|
334 |
TGraphErrors* First = getObserved_NLO_tanBeta50();
|
335 |
TGraphErrors* Second = getExpected_NLO_tanBeta50();//getLO_jetMultis();
|
336 |
TGraphErrors* Third = getLO_tanBeta50();
|
337 |
First->GetXaxis()->SetRangeUser(0,505);
|
338 |
First->GetYaxis()->SetRangeUser(80,500);
|
339 |
First->GetXaxis()->SetTitle("m_{0} (GeV)");
|
340 |
First->GetYaxis()->SetTitle("m_{1/2} (GeV)");
|
341 |
TSpline3 *sFirst = new TSpline3("sFirst",First);
|
342 |
sFirst->SetLineColor(kBlue);
|
343 |
//sFirst->SetLineWidth(3);
|
344 |
TSpline3 *sSecond = new TSpline3("sSecond",Second);
|
345 |
sSecond->SetLineColor(kBlue);
|
346 |
sSecond->SetLineStyle(2);
|
347 |
//sSecond->SetLineWidth(3);
|
348 |
TSpline3 *sThird = new TSpline3("sThird",Third);
|
349 |
sThird->SetLineColor(kBlue);
|
350 |
sThird->SetLineStyle(4);
|
351 |
//sThird->SetLineWidth(3);
|
352 |
//TEV_sn_d0_1->Draw("fsame");
|
353 |
//TEV_sn_d0_2->Draw("fsame"); //only for tb=3
|
354 |
LEP_ch->Draw("fsame");
|
355 |
LEP_sl->Draw("fsame");
|
356 |
//TEV_sg_cdf->Draw("fsame");
|
357 |
//TEV_sg_cdf->Draw("lsame");
|
358 |
//TEV_sg_d0->Draw("fsame");
|
359 |
sFirst->Draw("same");
|
360 |
//sSecond->Draw("same");
|
361 |
//sThird->Draw("same");
|
362 |
//Atlas->Draw("c,same");
|
363 |
TLatex b; b.SetTextSize(0.02); b.SetTextColor(1);
|
364 |
TLatex ms; ms.SetTextSize(0.025); ms.SetTextFont(42);//ms.SetTextColor(12);
|
365 |
ms.DrawLatex(490,458,"tan #beta=50, #mu>0, A_{0}=0");
|
366 |
|
367 |
TLegend* legexp = new TLegend(0.7,0.764,0.93,0.88,NULL,"brNDC");
|
368 |
legexp->SetFillColor(0);legexp->SetShadowColor(0);legexp->SetFillStyle(4000);legexp->SetTextFont(42);legexp->SetTextSize(0.025);legexp->SetBorderSize(0);
|
369 |
//TEV_sg_cdf.SetLineColor(1);
|
370 |
//legexp->SetHeader("CMS tan #beta=50, #mu>0, A_{0}=0");
|
371 |
legexp->SetHeader("CMS");
|
372 |
//legexp->AddEntry(TEV_sg_cdf,"CDF #tilde{#font[12]{g}}, #tilde{#font[12]{q}}, #scale[0.8]{tan #beta=5, #mu<0}","f");
|
373 |
//legexp->AddEntry(TEV_sg_d0,"D0 #tilde{#font[12]{g}}, #tilde{#font[12]{q}}, #scale[0.8]{tan #beta=3, #mu<0}","f");
|
374 |
//ch_gr.SetLineColor(1);
|
375 |
legexp->AddEntry(LEP_ch,"LEP2 #tilde{#chi}_{1}^{#pm}","f");
|
376 |
//sl_gr.SetLineColor(1);
|
377 |
//legexp->AddEntry(LEP_sl,"LEP2 #tilde{#font[12]{l}}^{#pm}","f"); //NOT FOR tb=50!
|
378 |
//if(tanbeta == 3)
|
379 |
//legexp->AddEntry(TEV_sn_d0_1,"D0 #chi^{#pm}_{1}, #chi^{0}_{2}","f");
|
380 |
legexp->AddEntry(sFirst, "CMS #alpha_{T}");
|
381 |
//legexp->AddEntry(Atlas, "Atlas, #scale[0.8]{tan #beta=3}","l");
|
382 |
legexp->Draw();
|
383 |
|
384 |
CLsObsNLO->Draw("l");
|
385 |
CLsObsLO->Draw("l");
|
386 |
CLsExpNLO->Draw("l");
|
387 |
//FCExpNLO->Draw("l");
|
388 |
stau->Draw("fsame");
|
389 |
b.DrawLatex( 220,420,"#tilde{#tau} LSP");
|
390 |
|
391 |
//constant ssqquark and gluino lines
|
392 |
TF1* lnsq[4];
|
393 |
TF1* lngl[4];
|
394 |
TLatex sqt; sqt.SetTextSize(0.02); sqt.SetTextAngle(-22);sqt.SetTextColor(kGray+2);
|
395 |
sqt.DrawLatex(270,180,"#font[92]{#tilde{q}(500)GeV}");
|
396 |
sqt.DrawLatex(327,245,"#font[92]{#tilde{q}(650)GeV}");
|
397 |
sqt.DrawLatex(390,348,"#font[92]{#tilde{q}(800)GeV}");
|
398 |
TLatex glt; glt.SetTextSize(0.02); sqt.SetTextAngle(-4); glt.SetTextColor(kGray+2);
|
399 |
glt.DrawLatex(528,195,"#font[92]{#tilde{g}(500)GeV}");
|
400 |
glt.DrawLatex(528,258,"#font[92]{#tilde{g}(650)GeV}");
|
401 |
glt.DrawLatex(528,322,"#font[92]{#tilde{g}(800)GeV}");
|
402 |
int tanBeta_=50;
|
403 |
for(int i = 0; i < 4; i++){
|
404 |
lnsq[i] = constant_squark(tanBeta_,i);
|
405 |
lngl[i] = constant_gluino(tanBeta_,i);
|
406 |
lngl[i]->Draw("same");
|
407 |
lnsq[i]->Draw("same");
|
408 |
}
|
409 |
TLegend * leg = new TLegend(0.38,0.72,0.81,0.88);
|
410 |
//TLegend * leg = new TLegend(0.25,0.72,0.68,0.88);
|
411 |
leg->SetBorderSize(0);leg->SetFillColor(0);leg->SetFillStyle(4000);leg->SetTextFont(42);leg->SetTextSize(0.025);
|
412 |
TGraph * expLeg = (TGraph*)CLsExpNLO->Clone();expLeg->SetFillStyle(gCLsExp1Sigma->GetFillStyle());expLeg->SetFillColor(gCLsExp1Sigma->GetFillColor());
|
413 |
leg->SetHeader("L_{int} = 36 pb^{-1}, #sqrt{s} = 7 TeV");
|
414 |
leg->AddEntry(CLsObsNLO,"Observed, NLO","l");
|
415 |
leg->AddEntry(CLsObsLO, "Observed, LO","l");
|
416 |
leg->AddEntry(expLeg, "Expected #pm 1#sigma, NLO","lf");
|
417 |
//leg->AddEntry(FCExpLO, "Expected, FC, NLO","l");
|
418 |
leg->Draw();
|
419 |
gPad->RedrawAxis();
|
420 |
c1->SaveAs("results/Exclusion_m0_m12_tb50.pdf");
|
421 |
|
422 |
|
423 |
hexcl->Draw("");
|
424 |
gCLsExp1Sigma->SetName("CLsNLO_Exp1SigmaUncertaintyTb50");
|
425 |
CLsObsNLO->SetName("CLsNLO_ObservedTb50");
|
426 |
CLsExpNLO->SetName("CLsNLO_ExpectedTb50");
|
427 |
CLsExpLO->SetName("CLsLO_ExpectedTb50");
|
428 |
gCLsExp1Sigma->Draw("l");
|
429 |
CLsObsNLO->Draw("l");
|
430 |
CLsExpNLO->Draw("l");
|
431 |
CLsObsLO->Draw("l");
|
432 |
c1->SaveAs("results/LimitContours_tb50.C");
|
433 |
|
434 |
|
435 |
|
436 |
hexcl->Draw("colz");
|
437 |
LEP_ch->Draw("fsame");
|
438 |
LEP_sl->Draw("fsame");
|
439 |
if (gCLsExp1Sigma) gCLsExp1Sigma->Draw("lf");
|
440 |
sFirst->Draw("same");
|
441 |
Atlas->Draw("c,same");
|
442 |
ms.DrawLatex(490,458,"tan #beta=50, #mu>0, A_{0}=0");
|
443 |
CLsObsNLO->Draw("l");
|
444 |
//CLsObsLO->Draw("l");
|
445 |
CLsExpNLO->Draw("l");
|
446 |
//FCExpNLO->Draw("l");
|
447 |
//Jim's limits///////////////////////////////////////////////////////////////////////////////
|
448 |
TGraph* JimObsHT = Jim_ht_tb50(0);
|
449 |
TGraph* JimObsMHT = Jim_mht_tb50(0);
|
450 |
TGraph* JimExpHT = Jim_ht_tb50(1);
|
451 |
TGraph* JimExpMHT = Jim_mht_tb50(1);
|
452 |
TGraph* JimExpHTup = Jim_ht_tb50(2);
|
453 |
TGraph* JimExpMHTup = Jim_mht_tb50(2);
|
454 |
TGraph* JimExpHTdn = Jim_ht_tb50(3);
|
455 |
TGraph* JimExpMHTdn = Jim_mht_tb50(3);
|
456 |
Smooth(JimObsHT, 2);
|
457 |
Smooth(JimObsMHT,2);
|
458 |
Smooth(JimExpHT, 2);
|
459 |
Smooth(JimExpMHT,2);
|
460 |
Smooth(JimExpHTup, 2);
|
461 |
Smooth(JimExpMHTup,2);
|
462 |
Smooth(JimExpHTdn, 2);
|
463 |
Smooth(JimExpMHTdn,2);
|
464 |
TGraph * JimObs = plotToolsHT->ChooseBest(JimObsHT,JimObsMHT,JimObsHT,JimObsMHT);
|
465 |
TGraph * JimExp = plotToolsHT->ChooseBest(JimExpHT,JimExpMHT,JimExpHT,JimExpMHT);
|
466 |
TGraph * JimExpup = plotToolsHT->ChooseBest(JimExpHTup,JimExpMHTup,JimExpHTup,JimExpMHTup);
|
467 |
TGraph * JimExpdn = plotToolsHT->ChooseBest(JimExpHTdn,JimExpMHTdn,JimExpHTdn,JimExpMHTdn);
|
468 |
TGraph * JimExp1Sigma = MakeBand(JimExpup, JimExpdn);JimExp1Sigma->SetFillStyle(3001);
|
469 |
TGraph * JimLeg = (TGraph*)JimExp->Clone();JimLeg->SetFillStyle(JimExp1Sigma->GetFillStyle());JimLeg->SetFillColor(JimExp1Sigma->GetFillColor());
|
470 |
JimExp1Sigma->Draw("f");
|
471 |
JimObs->Draw("c");
|
472 |
JimExp->Draw("c");
|
473 |
stau->Draw("fsame");
|
474 |
b.DrawLatex( 220,420,"#tilde{#tau} LSP");
|
475 |
//constant ssqquark and gluino lines
|
476 |
sqt.DrawLatex(270,180,"#font[92]{#tilde{q}(500)GeV}");
|
477 |
sqt.DrawLatex(327,245,"#font[92]{#tilde{q}(650)GeV}");
|
478 |
sqt.DrawLatex(390,348,"#font[92]{#tilde{q}(800)GeV}");
|
479 |
glt.DrawLatex(528,195,"#font[92]{#tilde{g}(500)GeV}");
|
480 |
glt.DrawLatex(528,258,"#font[92]{#tilde{g}(650)GeV}");
|
481 |
glt.DrawLatex(528,322,"#font[92]{#tilde{g}(800)GeV}");
|
482 |
for(int i = 0; i < 4; i++){
|
483 |
lngl[i]->Draw("same");
|
484 |
lnsq[i]->Draw("same");
|
485 |
}
|
486 |
legexp->Draw();
|
487 |
TLegend * legBayes = new TLegend(0.38,0.8,0.73,0.92);
|
488 |
legBayes->SetBorderSize(0);legBayes->SetFillColor(0);legBayes->SetFillStyle(4000);legBayes->SetTextFont(42);
|
489 |
legBayes->SetHeader("L_{int} = 36/pb, #sqrt{s} = 7 TeV");
|
490 |
legBayes->AddEntry(JimObs, "Observed, Bayes","l");
|
491 |
legBayes->AddEntry(JimLeg, "Expected #pm 1#sigma, Bayes","lf");
|
492 |
legBayes->AddEntry(CLsObsNLO,"Observed, CLs","l");
|
493 |
legBayes->AddEntry(expLeg, "Expected #pm 1#sigma, CLs","lf");
|
494 |
legBayes->Draw();
|
495 |
gPad->RedrawAxis();
|
496 |
c1->SaveAs("results/Exclusion_m0_m12_tb50_Bayes.pdf");
|
497 |
|
498 |
|
499 |
//The RA1-style Expected limits - no-signal hypothesis *only* for pseudo data ///////////////////////////////
|
500 |
TGraph * gCLsExpNoSExclMHT = plotTools ->GetContour(hs,Mzero,Mhalf,NLOExpNoSigExclCL, 3,0, 1,2);
|
501 |
TGraph * gCLsExpNoSExclHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOExpNoSigExclCL, 3,0, 1,2);
|
502 |
TGraph * gCLsExpNoSExclHTm1 = plotToolsHT->ModifyExpSigma(gCLsExpExclHTm1, gCLsExpExclHT, gCLsExpNoSExclHT);
|
503 |
TGraph * gCLsExpNoSExclHTp1 = plotToolsHT->ModifyExpSigma(gCLsExpExclHTp1, gCLsExpExclHT, gCLsExpNoSExclHT);
|
504 |
TGraph * gCLsExpNoSExclMHTm1 = plotTools ->ModifyExpSigma(gCLsExpExclMHTm1,gCLsExpExclHT, gCLsExpNoSExclHT);
|
505 |
TGraph * gCLsExpNoSExclMHTp1 = plotTools ->ModifyExpSigma(gCLsExpExclMHTp1,gCLsExpExclHT, gCLsExpNoSExclHT);
|
506 |
Smooth( gCLsExpNoSExclMHT, 27 ); gCLsExpNoSExclMHT->SetLineWidth( 3 );
|
507 |
Smooth( gCLsExpNoSExclHT, 27 ); gCLsExpNoSExclHT->SetLineWidth( 3 );
|
508 |
Smooth( gCLsExpNoSExclHTm1, 27 );
|
509 |
Smooth( gCLsExpNoSExclHTp1, 27 );
|
510 |
Smooth( gCLsExpNoSExclMHTm1, 27 );
|
511 |
Smooth( gCLsExpNoSExclMHTp1, 27 );
|
512 |
TGraph * CLsExpNoSNLO = plotToolsHT->ChooseBest(gCLsExpNoSExclHT,gCLsExpNoSExclMHT, gCLsExpNoSExclHT,gCLsExpNoSExclMHT);
|
513 |
TGraph * gCLsExpNoSExclp1 = plotToolsHT->ChooseBest(gCLsExpNoSExclHTp1,gCLsExpNoSExclMHTp1, gCLsExpNoSExclHTp1,gCLsExpNoSExclMHTp1);
|
514 |
TGraph * gCLsExpNoSExclm1 = plotToolsHT->ChooseBest(gCLsExpNoSExclHTm1,gCLsExpNoSExclMHTm1, gCLsExpNoSExclHTm1,gCLsExpNoSExclMHTm1);
|
515 |
TGraph * gCLsExpNoS1Sigma = MakeBand(gCLsExpNoSExclp1, gCLsExpNoSExclm1);gCLsExpNoS1Sigma->SetFillStyle(4010);
|
516 |
hexcl->Draw("colz");
|
517 |
LEP_ch->Draw("fsame");
|
518 |
LEP_sl->Draw("fsame");
|
519 |
if (gCLsExp1Sigma) gCLsExp1Sigma->Draw("lf");
|
520 |
sFirst->Draw("same");
|
521 |
//Atlas->Draw("c,same");
|
522 |
ms.DrawLatex(490,380,"tan #beta=50, #mu>0, A_{0}=0");
|
523 |
gCLsExpNoS1Sigma->Draw("lf,same");
|
524 |
sFirst->Draw("same");
|
525 |
//Atlas->Draw("c,same");
|
526 |
CLsObsNLO->Draw("l,same");
|
527 |
CLsObsLO->Draw("l,same");
|
528 |
CLsExpNoSNLO->Draw("l,same");
|
529 |
//gCLsExpNoSExclMHT->Draw("l,same");
|
530 |
//gCLsExpNoSExclHT->Draw("l,same");
|
531 |
//gCLsObsExclHT->Draw("l,same");
|
532 |
//gobsexcl->Draw("l,same");
|
533 |
//FCExpNLO->Draw("l");
|
534 |
stau->Draw("fsame");
|
535 |
b.DrawLatex( 220,420,"#tilde{#tau} LSP");
|
536 |
//constant ssqquark and gluino lines
|
537 |
sqt.DrawLatex(270,180,"#font[92]{#tilde{q}(500)GeV}");
|
538 |
sqt.DrawLatex(327,245,"#font[92]{#tilde{q}(650)GeV}");
|
539 |
sqt.DrawLatex(390,348,"#font[92]{#tilde{q}(800)GeV}");
|
540 |
glt.DrawLatex(528,195,"#font[92]{#tilde{g}(500)GeV}");
|
541 |
glt.DrawLatex(528,258,"#font[92]{#tilde{g}(650)GeV}");
|
542 |
glt.DrawLatex(528,322,"#font[92]{#tilde{g}(800)GeV}");
|
543 |
for(int i = 0; i < 4; i++){
|
544 |
lngl[i]->Draw("same");
|
545 |
lnsq[i]->Draw("same");
|
546 |
}
|
547 |
legexp->Draw();
|
548 |
leg->Draw();
|
549 |
gPad->RedrawAxis();
|
550 |
c1->SaveAs("results/Exclusion_m0_m12_tb50_NoSigHypPseudoData.pdf");
|
551 |
|
552 |
|
553 |
|
554 |
// Signal Contamination in M0 - M1/2
|
555 |
c1->SetLogz(0);
|
556 |
TH2F*hsigcont = new TH2F("sigcont",";m_{0} [GeV]; m_{1/2}; number of signal in bkg yield [events]",
|
557 |
40,200,600,26,140,400);
|
558 |
plotToolsHT->Area(hsigcont, Mzero, Mhalf, SignalContamination);
|
559 |
hsigcont->SetMinimum(0.01);
|
560 |
hsigcont->SetMaximum(20);
|
561 |
hsigcont->Draw("colz");
|
562 |
if (gCLsObsExclHT) gCLsObsExclHT->Draw("l");
|
563 |
c1->SaveAs("results_tb50/SignalContamination_HT_m0_m12_tb50.pdf");
|
564 |
|
565 |
// Signal Contamination in M0 - M1/2
|
566 |
c1->SetLogz(0);
|
567 |
TH2F*hsigcontMHT = new TH2F("sigcontMHT",";m_{0} [GeV]; m_{1/2}; number of signal in bkg yield [events]",
|
568 |
40,200,600,26,140,400);
|
569 |
plotTools->Area(hsigcontMHT, Mzero, Mhalf, SignalContamination);
|
570 |
hsigcontMHT->SetMinimum(0.01);
|
571 |
hsigcontMHT->SetMaximum(20);
|
572 |
hsigcontMHT->Draw("colz");
|
573 |
if (gobsexcl) gobsexcl->Draw("l");
|
574 |
c1->SaveAs("results_tb50/SignalContamination_MHT_m0_m12_tb50.pdf");
|
575 |
|
576 |
// Signal JEC Uncertainty MHT
|
577 |
c1->SetLogz(0);
|
578 |
TH2F*hsig_jec_mht = new TH2F("sigjecmht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal JEC uncertainty",
|
579 |
40,200,600,26,140,400);
|
580 |
plotTools->Area(hsig_jec_mht, Mzero, Mhalf, SignalUncertJEC);
|
581 |
hsig_jec_mht->SetMinimum(0.0);
|
582 |
hsig_jec_mht->SetMaximum(0.25);
|
583 |
hsig_jec_mht->SetContour(10);
|
584 |
hsig_jec_mht->Draw("colz");
|
585 |
if (gobsexcl) gobsexcl->Draw("l");
|
586 |
c1->SaveAs("results_tb50/SigJEC_MHT_m0_m12_tb50.pdf");
|
587 |
|
588 |
// Signal JEC Uncertainty HT
|
589 |
c1->SetLogz(0);
|
590 |
TH2F*hsig_jec_ht = new TH2F("sigjecht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal JEC uncertainty",
|
591 |
40,200,600,26,140,400);
|
592 |
plotTools->Area(hsig_jec_ht, Mzero, Mhalf, SignalUncertJEC);
|
593 |
hsig_jec_ht->SetMinimum(0.0);
|
594 |
hsig_jec_ht->SetMaximum(0.25);
|
595 |
hsig_jec_ht->SetContour(10);
|
596 |
hsig_jec_ht->Draw("colz");
|
597 |
if (gCLsObsExclHT) gCLsObsExclHT->Draw("l");
|
598 |
c1->SaveAs("results_tb50/SigJEC_HT_m0_m12_tb50.pdf");
|
599 |
|
600 |
|
601 |
// Signal MuIso Uncertainty MHT
|
602 |
c1->SetLogz(0);
|
603 |
TH2F*hsig_MuIso_mht = new TH2F("sigMuIsomht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal #mu_{iso} uncertainty",
|
604 |
40,200,600,26,140,400);
|
605 |
plotTools->Area(hsig_MuIso_mht, Mzero, Mhalf, SignalUncertMuIso);
|
606 |
hsig_MuIso_mht->SetMinimum(0.0);
|
607 |
hsig_MuIso_mht->SetMaximum(0.05);
|
608 |
hsig_MuIso_mht->SetContour(5);
|
609 |
hsig_MuIso_mht->Draw("colz");
|
610 |
if (gobsexcl) gobsexcl->Draw("l");
|
611 |
c1->SaveAs("results_tb50/SigMuIso_MHT_m0_m12_tb50.pdf");
|
612 |
|
613 |
// Signal MuIso Uncertainty HT
|
614 |
c1->SetLogz(0);
|
615 |
TH2F*hsig_MuIso_ht = new TH2F("sigMuIsoht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal #mu_{iso} uncertainty",
|
616 |
40,200,600,26,140,400);
|
617 |
plotTools->Area(hsig_MuIso_ht, Mzero, Mhalf, SignalUncertMuIso);
|
618 |
hsig_MuIso_ht->SetMinimum(0.0);
|
619 |
hsig_MuIso_ht->SetMaximum(0.05);
|
620 |
hsig_MuIso_ht->SetContour(5);
|
621 |
hsig_MuIso_ht->Draw("colz");
|
622 |
if (gCLsObsExclHT) gCLsObsExclHT->Draw("l");
|
623 |
c1->SaveAs("results_tb50/SigMuIso_HT_m0_m12_tb50.pdf");
|
624 |
|
625 |
|
626 |
// Signal kFactor Uncertainty MHT
|
627 |
c1->SetLogz(0);
|
628 |
TH2F*hsig_kFactor_mht = new TH2F("sigkFactormht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal #mu_{iso} uncertainty",
|
629 |
40,200,600,26,140,400);
|
630 |
plotTools->Area(hsig_kFactor_mht, Mzero, Mhalf, SignalUncertKfactor);
|
631 |
hsig_kFactor_mht->SetMinimum(0.1);
|
632 |
hsig_kFactor_mht->SetMaximum(0.2);
|
633 |
hsig_kFactor_mht->SetContour(10);
|
634 |
hsig_kFactor_mht->Draw("colz");
|
635 |
if (gobsexcl) gobsexcl->Draw("l");
|
636 |
c1->SaveAs("results_tb50/SigkFactor_MHT_m0_m12_tb50.pdf");
|
637 |
|
638 |
// Signal kFactor Uncertainty HT
|
639 |
c1->SetLogz(0);
|
640 |
TH2F*hsig_kFactor_ht = new TH2F("sigkFactorht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal #mu_{iso} uncertainty",
|
641 |
40,200,600,26,140,400);
|
642 |
plotTools->Area(hsig_kFactor_ht, Mzero, Mhalf, SignalUncertKfactor);
|
643 |
hsig_kFactor_ht->SetMinimum(0.1);
|
644 |
hsig_kFactor_ht->SetMaximum(0.2);
|
645 |
hsig_kFactor_ht->SetContour(10);
|
646 |
hsig_kFactor_ht->Draw("colz");
|
647 |
if (gCLsObsExclHT) gCLsObsExclHT->Draw("l");
|
648 |
c1->SaveAs("results_tb50/SigkFactor_HT_m0_m12_tb50.pdf");
|
649 |
|
650 |
|
651 |
//-----------------------------------------------------------------------------------
|
652 |
c1->SetLogz(1);
|
653 |
|
654 |
TGraph * mz500 = plotMasses->Line( MSquarkL, MGluino, Mzero, 500, 1);
|
655 |
TGraph * mh250 = plotMasses->Line( MSquarkL, MGluino, Mhalf, 250, 1);
|
656 |
|
657 |
// cross-section in squark - gluino mass
|
658 |
TH2F*hxsec_qg = new TH2F("xsec_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; cross section [pb]",
|
659 |
40,200,900,30,200,900);
|
660 |
plotTools->Area(hxsec_qg, MSquarkL, MGluino, Xsection);
|
661 |
hxsec_qg->SetMinimum(0.01);
|
662 |
hxsec_qg->Draw("colz");
|
663 |
mz500->Draw();
|
664 |
mh250->Draw();
|
665 |
c1->SaveAs("results_tb50/Xsection_mSql_mGl_tb50.pdf");
|
666 |
|
667 |
// Observed Limit in squark - gluino mass
|
668 |
TH2F*hobslimit_qg = new TH2F("obslimit_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Limit [pb]",
|
669 |
40,200,900,30,200,900);
|
670 |
plotTools->Area(hobslimit_qg, MSquarkL, MGluino, ObsXsecLimit);
|
671 |
hobslimit_qg->SetMinimum(0.01);
|
672 |
hobslimit_qg->Draw("colz");
|
673 |
c1->SaveAs("results_tb50/ObsLimit_mSql_mGl_tb50.pdf");
|
674 |
|
675 |
// Expected Limit in squark - gluino mass
|
676 |
TH2F*hexplimit_qg = new TH2F("explimit_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Expected Limit [pb]",
|
677 |
40,200,900,30,200,900);
|
678 |
plotTools->Area(hexplimit_qg, MSquarkL, MGluino, ExpXsecLimit);
|
679 |
hexplimit_qg->SetMinimum(0.01);
|
680 |
hexplimit_qg->Draw("colz");
|
681 |
c1->SaveAs("results_tb50/ExpLimit_mSql_mGl_tb50.pdf");
|
682 |
|
683 |
// Signal Acceptance in squark - gluino mass
|
684 |
TH2F*hsigacc_qg = new TH2F("sigacc_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; Signal Acceptance",
|
685 |
40,200,900,30,200,900);
|
686 |
plotTools->Area(hsigacc_qg, MSquarkL, MGluino, SignalAcceptance);
|
687 |
hsigacc_qg->SetMinimum(0.01);
|
688 |
hsigacc_qg->SetMaximum(1.0);
|
689 |
hsigacc_qg->Draw("colz");
|
690 |
c1->SaveAs("results_tb50/SigAcc_mSql_mGl_tb50.pdf");
|
691 |
|
692 |
// Exp. Limit on Number of Signal Events in squark - gluino mass
|
693 |
c1->SetLogz(0);
|
694 |
TH2F*hexplimitnsig_qg = new TH2F("explimitnsig_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL exp. limit signal events [# ]",
|
695 |
40,200,900,30,200,900);
|
696 |
plotTools->Area(hexplimitnsig_qg, MSquarkL, MGluino, ExpNSignLimit);
|
697 |
hexplimitnsig_qg->SetMinimum(0.0);
|
698 |
hexplimitnsig_qg->SetMaximum(20);
|
699 |
hexplimitnsig_qg->Draw("colz");
|
700 |
c1->SaveAs("results_tb50/ExpLimitOnNSig_mSql_mGl_tb50.pdf");
|
701 |
|
702 |
// Obs. Limit on Number of Signal Events in squark - gluino mass
|
703 |
TH2F*hobslimitnsig_qg = new TH2F("obslimitnsig_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL obs. limit signal events [# ]",
|
704 |
40,200,900,30,200,900);
|
705 |
plotTools->Area(hobslimitnsig_qg, MSquarkL, MGluino, ObsNSignLimit);
|
706 |
hobslimitnsig_qg->SetMinimum(0.0);
|
707 |
hobslimitnsig_qg->SetMaximum(20);
|
708 |
hobslimitnsig_qg->Draw("colz");
|
709 |
c1->SaveAs("results_tb50/ObsLimitOnNSig_mSql_mGl_tb50.pdf");
|
710 |
|
711 |
c1->SetLogz(0);
|
712 |
// Expected Exclusion in squark - gluino mass
|
713 |
TH2F*hexpexcl_qg = new TH2F("expexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Expected Exclusion",
|
714 |
40,200,900,30,200,900);
|
715 |
plotTools->Area(hexpexcl_qg, MSquarkL, MGluino, ExpExclCL);
|
716 |
hexpexcl_qg->Draw("colz");
|
717 |
c1->SaveAs("results_tb50/ExpExclusion_mSql_mGl_tb50.pdf");
|
718 |
|
719 |
// Observed Exclusion in squark - gluino mass
|
720 |
TH2F*hobsexcl_qg = new TH2F("obsexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
|
721 |
40,200,900,30,200,900);
|
722 |
plotTools->Area(hobsexcl_qg, MSquarkL, MGluino, ObsExclCL);
|
723 |
//std::vector<TGraph *> vobsexcl_qg = plotTools->GetContours(hobsexcl_qg);
|
724 |
hobsexcl_qg->Draw("colz");
|
725 |
//for (std::vector<TGraph *>::iterator g=vobsexcl_qg.begin();g!=vobsexcl_qg.end();++g){
|
726 |
// if (! *g) continue;
|
727 |
// // (*g)->Draw("l");
|
728 |
//}
|
729 |
c1->SaveAs("results_tb50/ObsExclusion_mSql_mGl_tb50.pdf");
|
730 |
|
731 |
// TestContours in M0 - M1/2
|
732 |
TH2F*texcl_qg = new TH2F("texcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
|
733 |
40,200,900,30,200,900);
|
734 |
TH2F*tPLobsexcl_qg=(TH2F*)texcl_qg->Clone();
|
735 |
plotTools->Area(tPLobsexcl_qg, MSquarkL, MGluino, PLObsExclusion);
|
736 |
TH2F*tPLexpexcl_qg=(TH2F*)texcl_qg->Clone();
|
737 |
plotTools->Area(tPLexpexcl_qg, MSquarkL, MGluino, PLExpExclusion);
|
738 |
//std::vector<TGraph*> contours_qg = plotTools->GetContours(hexpexcl_qg,3);
|
739 |
//std::vector<TGraph*> contours_qg = plotTools->GetContours(hobsexcl_qg,3);
|
740 |
std::vector<TGraph*> contours_qg = plotTools->GetContours(tPLobsexcl_qg,3);
|
741 |
//std::vector<TGraph*> contours_qg = plotTools->GetContours(tPLexpexcl_qg,3);
|
742 |
//hPLexpexcl_qg
|
743 |
//hexcl_qg->Draw("colz");
|
744 |
//hexpexcl_qg->Draw("colz");
|
745 |
//hobsexcl_qg->Draw("colz");
|
746 |
tPLobsexcl_qg->Draw("colz");
|
747 |
int col_gl=kBlue-10;
|
748 |
for (std::vector<TGraph*>::iterator cont=contours_qg.begin(); cont!=contours_qg.end(); ++cont){
|
749 |
if (! *cont) continue;
|
750 |
double x, y;
|
751 |
(*cont)->GetPoint(0, x, y);
|
752 |
(*cont)->SetLineColor(col_gl);(*cont)->SetLineWidth(3);
|
753 |
(*cont)->Draw("l");
|
754 |
TLatex l; l.SetTextSize(0.04); l.SetTextColor(col_gl++);
|
755 |
char val[20];
|
756 |
sprintf(val,"%d",(int)(cont-contours_qg.begin()));
|
757 |
l.DrawLatex(x,y,val);
|
758 |
if (cont-contours_qg.begin()>3) break;
|
759 |
}
|
760 |
c1->SaveAs("results_tb50/ExclusionTestContours_mSql_mGl_tb50.pdf");
|
761 |
|
762 |
// Observed Exclusion in squark - gluino mass
|
763 |
TH2F*hPLobsexcl_qg = new TH2F("plobsexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
|
764 |
40,200,900,30,200,900);
|
765 |
plotTools->Area(hPLobsexcl_qg, MSquarkL, MGluino, PLObsExclusion);
|
766 |
//hPLobsexcl_qg->Draw("colz");
|
767 |
//c1->SaveAs("results_tb50/PL_ObsExclusion_mSql_mGl_tb50.pdf");
|
768 |
|
769 |
|
770 |
|
771 |
// Exclusion in squark - gluino mass ----------------------------------------
|
772 |
TH2F*hexcl_qg = new TH2F("hexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
|
773 |
40,200,900,30,200,900);
|
774 |
TGraph * gexpexcl_qg = plotTools->GetContour(hexcl_qg,MSquarkL,MGluino, NLOExpExclCL, 3,0, 2,2);
|
775 |
TGraph * gexpexcl_qg_LO = plotTools->GetContour(hexcl_qg,MSquarkL,MGluino, ExpExclCL, 3,0, 2,4);
|
776 |
TGraph * gobsexcl_qg = plotTools->GetContour(hexcl_qg,MSquarkL,MGluino, NLOObsExclCL, 3,0, 2,1);
|
777 |
TGraph * gMCMCexpexcl_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,MCMCExpExclusion,3,0, 3,2);
|
778 |
TGraph * gMCMCobsexcl_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,MCMCObsExclusion,3,0, 3,1);
|
779 |
TGraph * gCLsExpExclHT_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,NLOExpExclCL, 3,0, 1,2);
|
780 |
TGraph * gCLsExpExclHT_qg_LO = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,ExpExclCL, 3,0, 1,4);
|
781 |
TGraph * gCLsObsExclHT_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,NLOObsExclCL, 3,0, 1,1);
|
782 |
TGraph * gCLsExpExclHTm1_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,NLOExpExclCLm1sigma,3,0, 5,2);
|
783 |
TGraph * gCLsExpExclHTp1_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,NLOExpExclCLp1sigma,3,0, 5,2);
|
784 |
TGraph * gCLsExp1Sigma_qg = MakeBand(gCLsExpExclHTp1_qg, gCLsExpExclHTm1_qg);
|
785 |
hexcl_qg->Draw("");
|
786 |
//
|
787 |
if (gCLsExp1Sigma_qg) gCLsExp1Sigma_qg->Draw("lf");
|
788 |
if (gobsexcl_qg) gobsexcl_qg->Draw("l");
|
789 |
if (gCLsObsExclHT_qg) gCLsObsExclHT_qg->Draw("l");
|
790 |
if (gexpexcl_qg) gexpexcl_qg->Draw("l");
|
791 |
if (gexpexcl_qg_LO) gexpexcl_qg_LO->Draw("l");
|
792 |
if (gCLsExpExclHT_qg) gCLsExpExclHT_qg->Draw("l");
|
793 |
if (gCLsExpExclHT_qg_LO) gCLsExpExclHT_qg_LO->Draw("l");
|
794 |
//
|
795 |
TLegend * leg_qg = new TLegend(0.45,0.78,0.85,0.89);
|
796 |
leg_qg->SetBorderSize(0);leg_qg->SetFillColor(0);leg->SetTextFont(42);
|
797 |
TGraph * expLeg_qg = (TGraph*)gCLsExpExclHT_qg->Clone();expLeg_qg->SetFillStyle(gCLsExp1Sigma_qg->GetFillStyle());expLeg_qg->SetFillColor(gCLsExp1Sigma_qg->GetFillColor());
|
798 |
if (gobsexcl_qg) leg_qg->AddEntry(gobsexcl_qg,"NLO Observed (MHT, CLs)","l");
|
799 |
if (gexpexcl_qg) leg_qg->AddEntry(gexpexcl_qg,"NLO Expected (MHT, CLs)","l");
|
800 |
if (gexpexcl_qg_LO) leg_qg->AddEntry(gexpexcl_qg_LO,"LO Expected (MHT, CLs)","l");
|
801 |
if (gCLsObsExclHT_qg) leg_qg->AddEntry(gCLsObsExclHT_qg,"NLO Observed (HT, CLs)","l");
|
802 |
if (gCLsExpExclHT_qg) leg_qg->AddEntry(expLeg_qg,"NLO Expected (HT, CLs)","lf");
|
803 |
if (gCLsExpExclHT_qg_LO) leg_qg->AddEntry(gCLsExpExclHT_qg_LO,"LO Expected (HT, CLs)","l");
|
804 |
//if (gPLobsexcl_qg) leg_qg->AddEntry(gPLobsexcl_qg,"Observed (PL, RooStat)","l");
|
805 |
//if (gPLexpexcl_qg) leg_qg->AddEntry(gPLexpexcl_qg,"Expected (PL, RooStat)","l");
|
806 |
leg_qg->Draw();
|
807 |
c1->SaveAs("results_tb50/Exclusion_mSql_mGl_tb50.pdf");
|
808 |
//c1->SaveAs("plot_tb10.pdf");
|
809 |
|
810 |
|
811 |
/*
|
812 |
//c1->SaveAs("plot_tb50.pdf");
|
813 |
c1->SetLogy(1);
|
814 |
c1->SetLogx(1);
|
815 |
TH2F*hUncertScan = new TH2F("hUncertScan",";relative signal uncertainty; number of signal events",
|
816 |
10,0.1,0.6,10,0.9,200);
|
817 |
//hUncertScan->GetXaxis()->SetNdivisions(505, false);
|
818 |
//hUncertScan->SetMinimum(1);
|
819 |
TGraph * gCLsExpUncert = new TGraph(0);
|
820 |
TGraph * gCLsObsUncert = new TGraph(0);
|
821 |
TGraph * gPLExpUncert = new TGraph(0);
|
822 |
TGraph * gPLObsUncert = new TGraph(0);
|
823 |
TGraph * gFCExpUncert = new TGraph(0);
|
824 |
TGraph * gFCObsUncert = new TGraph(0);
|
825 |
TGraph * gMCMCExpUncert= new TGraph(0);
|
826 |
TGraph * gMCMCObsUncert= new TGraph(0);
|
827 |
plotTools->Graph(gCLsExpUncert, SignalRelUncertainty, ExpNSignLimit,1);
|
828 |
plotTools->Graph(gCLsObsUncert, SignalRelUncertainty, ObsNSignLimit,1);
|
829 |
plotTools->Graph(gPLExpUncert, SignalRelUncertainty, PLExpNSignLimit,1);
|
830 |
plotTools->Graph(gPLObsUncert, SignalRelUncertainty, PLObsNSignLimit, 1);
|
831 |
plotTools->Graph(gFCExpUncert, SignalRelUncertainty, FCExpNSignLimit,1);
|
832 |
plotTools->Graph(gFCObsUncert, SignalRelUncertainty, FCObsNSignLimit, 1);
|
833 |
plotTools->Graph(gMCMCExpUncert,SignalRelUncertainty, MCMCExpNSignLimit,1);
|
834 |
plotTools->Graph(gMCMCObsUncert,SignalRelUncertainty, MCMCObsNSignLimit, 1);
|
835 |
gCLsExpUncert->SetLineStyle(8);
|
836 |
gPLObsUncert->SetLineColor(2);
|
837 |
gPLExpUncert->SetLineColor(2); gPLExpUncert->SetLineStyle(8);
|
838 |
gFCObsUncert->SetLineColor(3);
|
839 |
gFCExpUncert->SetLineColor(3); gFCExpUncert->SetLineStyle(8);
|
840 |
gMCMCObsUncert->SetLineColor(4);
|
841 |
gMCMCExpUncert->SetLineColor(4); gMCMCExpUncert->SetLineStyle(8);
|
842 |
hUncertScan->Draw("h");
|
843 |
gCLsExpUncert->Draw("l");
|
844 |
gCLsObsUncert->Draw("l");
|
845 |
gPLObsUncert->Draw("l");
|
846 |
gPLExpUncert->Draw("l");
|
847 |
gFCObsUncert->Draw("l");
|
848 |
gFCExpUncert->Draw("l");
|
849 |
gMCMCObsUncert->Draw("l");
|
850 |
gMCMCExpUncert->Draw("l");
|
851 |
TLatex l; l.SetTextSize(0.03); l.SetTextColor(1);
|
852 |
l.DrawLatex(0.025,25,"excluded");
|
853 |
TMarker m; m.SetMarkerStyle(29); m.SetMarkerColor(2);
|
854 |
m.DrawMarker(0.128, 28.5);l.DrawLatex(0.14,28.5,"LM1");
|
855 |
m.DrawMarker(0.147, 77.4);l.DrawLatex(0.16,77.4,"LM0");
|
856 |
|
857 |
TLegend * leg_S = new TLegend(0.5,0.14,0.85,0.38);
|
858 |
leg_S->SetBorderSize(0);leg_S->SetFillColor(0);
|
859 |
leg_S->SetHeader("95% CL upper limits");
|
860 |
leg_S->AddEntry(gCLsExpUncert,"Expected (CLs, TLimit)","l");
|
861 |
leg_S->AddEntry(gCLsObsUncert,"Observed (CLs, TLimit)","l");
|
862 |
leg_S->AddEntry(gPLExpUncert,"Expected (PL, RooStat)","l");
|
863 |
leg_S->AddEntry(gPLObsUncert,"Observed (PL, RooStat)","l");
|
864 |
leg_S->AddEntry(gFCObsUncert,"Observed (FC, RooStat)","l");
|
865 |
leg_S->AddEntry(gFCExpUncert,"Expected (FC, RooStat)","l");
|
866 |
leg_S->AddEntry(gMCMCObsUncert,"Observed (MCMC, RooStat)","l");
|
867 |
leg_S->AddEntry(gMCMCExpUncert,"Expected (MCMC, RooStat)","l");
|
868 |
leg_S->Draw();
|
869 |
c1->SaveAs("results_tb50/UncertaintyScan.pdf");
|
870 |
*/
|
871 |
//theApp.Run();
|
872 |
}
|
873 |
|
874 |
|
875 |
int main(int argc, char** argv)
|
876 |
{
|
877 |
return plot(argc, argv);
|
878 |
}
|