ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/auterman/SusyScan/PlotScript/plot3tb_extended.cc
Revision: 1.1
Committed: Wed Jun 22 15:11:53 2011 UTC (13 years, 10 months ago) by auterman
Content type: text/plain
Branch: MAIN
CVS Tags: JHEP2010, HEAD
Log Message:
2010 RA2 paper

File Contents

# Content
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 //Style stuff
42 /*
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::paperNoTitle();
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_tb3_20110303/filelist.txt");
89 genpoints->Fill("limits_MHT_20110609/filelist_tb3.txt");
90
91 TheLimits * genpointsHT = new TheLimits();
92 //genpointsHT->Fill("limits_HT_tb3_20110303/filelist.txt");
93 genpointsHT->Fill("limits_HT_20110609/filelist_tb3.txt");
94
95
96 //Replace read limits with specific numbers
97 //genpoints->OverwriteLimits("ABCD_MHT");
98
99 genpoints->FillGeneratorMasses("GenScan_tb3.dat");
100 genpoints->match();
101 genpointsHT->FillGeneratorMasses("GenScan_tb3.dat");
102 genpointsHT->match();
103
104 //the plotting ----------------------------------------------------------------------
105 //plotting helper functions
106 PlotTools<SusyScan> * plotTools = new PlotTools<SusyScan>(genpoints->GetScan());
107 PlotTools<SusyScan> * plotToolsHT = new PlotTools<SusyScan>(genpointsHT->GetScan());
108 PlotTools<GeneratorMasses> * plotMasses = new PlotTools<GeneratorMasses>(genpoints->GetGeneratorMasses());
109
110 //iso mass lines
111 TGraph * gl500 = plotMasses->Line(Mzero, Mhalf, MGluino, 500);
112 TGraph * sq500 = plotMasses->Line(Mzero, Mhalf, MSquarkL, 500, 10);
113 sq500->SetLineWidth(2); sq500->SetLineColor(7);
114
115 TGraph * chi100 = plotMasses->Line(Mzero, Mhalf, MChi1, 50, 20);
116 TGraph * cha200 = plotMasses->Line(Mzero, Mhalf, MCha1, 200, 20);
117 cha200->SetLineColor(2);
118
119 //the histograms
120 c1->SetLogz(1);
121 //h->SetMaximum(27);
122 //h->SetMinimum(0.01);
123
124 /**/
125 // cross-section in M0 - M1/2
126 c1->SetLogz(0);
127 c1->SetRightMargin ( 0.2 );
128 TH2F*hxsec = new TH2F("xsec",";m_{0} [GeV]; m_{1/2} [GeV]; cross section [pb]",
129 200,0,2009.9,25,100,350);
130 hxsec->SetNdivisions(505);
131 plotTools->Area(hxsec, Mzero, Mhalf, NLOXsection);
132 hxsec->SetMaximum(50);
133 hxsec->SetMinimum(0.01);
134 //sq500->Draw();
135 //gl500->Draw();
136 hxsec->Draw("colz");
137 c1->SaveAs("results_tb3/XsectionMHT_m0_m12_tb3.pdf");
138
139 c1->SetLogz(0);
140 TH2F*hxsecHT = new TH2F("xsecHT",";m_{0} [GeV]; m_{1/2} [GeV]; cross section [pb]",
141 200,0,2009.9,25,100,350);
142 hxsecHT->SetNdivisions(505);
143 plotToolsHT->Area(hxsecHT, Mzero, Mhalf, NLOXsection);
144 hxsecHT->SetMaximum(50);
145 hxsecHT->SetMinimum(0.01);
146 //sq500->Draw();
147 //gl500->Draw();
148 hxsecHT->Draw("colz");
149 c1->SaveAs("results_tb3/XsectionHT_m0_m12_tb3.pdf");
150
151 // Observed Limit in M0 - M1/2
152 TH2F*hobslimit = new TH2F("obslimit",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Observed Limit [pb]",
153 200,0,2009.9,25,100,350);
154 plotTools->Area(hobslimit, Mzero, Mhalf, ObsXsecLimit);
155 hobslimit->SetMinimum(0.01);
156 hobslimit->Draw("colz");
157 c1->SaveAs("results_tb3/ObsLimit_m0_m12_tb3.pdf");
158
159 // Expected Limit in M0 - M1/2
160 TH2F*hexplimit = new TH2F("explimit",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Limit [pb]",
161 200,0,2009.9,25,100,350);
162 plotTools->Area(hexplimit, Mzero, Mhalf, ExpXsecLimit);
163 hexplimit->SetMinimum(0.01);
164 hexplimit->Draw("colz");
165 c1->SaveAs("results_tb3/ExpLimit_m0_m12_tb3.pdf");
166
167 // Signal Acceptance in M0 - M1/2
168 c1->SetRightMargin ( 0.2 );
169 c1->SetTopMargin ( 0.11 );
170 c1->SetLogz(0);
171 TH2F*hsigacc = new TH2F("sigacc",";m_{0} [GeV]; m_{1/2} [GeV]; Signal Acceptance",
172 200,0,2009.9,25,100,350);
173 plotTools->Area(hsigacc, Mzero, Mhalf, NLOSignalAcceptance);
174 hsigacc->SetNdivisions(505);
175 hsigacc->SetMinimum(0.0);
176 hsigacc->SetMaximum(0.35);
177 hsigacc->SetContour(14);
178 hsigacc->GetZaxis()->SetTitleOffset(1.5);
179 hsigacc->Draw("colz");
180 TLatex as; as.SetTextSize(0.025); as.SetTextFont(42);//ms.SetTextColor(12);
181 as.DrawLatex(520,461,"MHT selection, tan#beta=3, #mu>0, A_{0}=0");
182 as.SetTextSize(0.04);
183 as.DrawLatex( 50,461,"CMS");
184 c1->SaveAs("results_tb3/SigAccMHT_m0_m12_tb3.pdf");
185
186
187 // Signal Acceptance in M0 - M1/2
188 TH2F*hsigaccHT = new TH2F("sigaccHT",";m_{0} [GeV]; m_{1/2} [GeV]; Signal Acceptance",
189 200,0,2009.9,25,100,350);
190 hsigaccHT->SetNdivisions(505);
191 plotToolsHT->Area(hsigaccHT, Mzero, Mhalf, NLOSignalAcceptance);
192 hsigaccHT->SetMinimum(0.0);
193 hsigaccHT->SetMaximum(0.35);
194 hsigaccHT->SetContour(14);
195 hsigaccHT->GetZaxis()->SetTitleOffset(1.5);
196 hsigaccHT->Draw("colz");
197 as.SetTextSize(0.025); as.SetTextFont(42);//ms.SetTextColor(12);
198 as.DrawLatex(525,461,"HT selection, tan#beta=3, #mu>0, A_{0}=0");
199 as.SetTextSize(0.04);
200 as.DrawLatex( 50,461,"CMS");
201 c1->SaveAs("results_tb3/SigAccHT_m0_m12_tb3.pdf");
202 c1->SetTopMargin ( 0.1 );
203
204
205 // Exp. Limit on Number of Signal Events in M0 - M1/2
206 c1->SetLogz(0);
207 TH2F*hexplimitnsig = new TH2F("explimitnsig",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL exp. limit signal events [# ]",
208 200,0,2009.9,25,100,350);
209 plotTools->Area(hexplimitnsig, Mzero, Mhalf, ExpNSignLimit);
210 hexplimitnsig->SetMinimum(0.0);
211 hexplimitnsig->SetMaximum(20);
212 hexplimitnsig->Draw("colz");
213 c1->SaveAs("results_tb3/ExpLimitOnNSig_m0_m12_tb3.pdf");
214
215 // Obs. Limit on Number of Signal Events in M0 - M1/2
216 TH2F*hobslimitnsig = new TH2F("obslimitnsig",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL obs. limit signal events [# ]",
217 200,0,2009.9,25,100,350);
218 plotTools->Area(hobslimitnsig, Mzero, Mhalf, ObsNSignLimit);
219 hobslimitnsig->SetMinimum(0.0);
220 hobslimitnsig->SetMaximum(20);
221 hobslimitnsig->Draw("colz");
222 c1->SaveAs("results_tb3/ObsLimitOnNSig_m0_m12_tb3.pdf");
223
224 c1->SetLogz(0);
225 // Expected Exclusion in M0 - M1/2
226 TH2F*hexpexcl = new TH2F("expexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Exclusion",
227 200,0,2009.9,35,100,450);
228 plotTools->Area(hexpexcl, Mzero, Mhalf, NLOExpExclCL);
229 hexpexcl->Draw("colz");
230 c1->SaveAs("results_tb3/ExpExclusionMHT_m0_m12_tb3.pdf");
231
232 // Observed Exclusion in M0 - M1/2
233 TH2F*hobsexcl = new TH2F("obsexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Observed Exclusion",
234 200,0,2009.9,35,100,450);
235 plotTools->Area(hobsexcl, Mzero, Mhalf, NLOObsExclCL);
236 hobsexcl->Draw("colz");
237 c1->SaveAs("results_tb3/ObsExclusionMHT_m0_m12_tb3.pdf");
238
239 // Observed Exclusion in M0 - M1/2
240 //TH2F*hPLobsexcl = new TH2F("plobsexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Observed Exclusion",
241 // 200,0,2009.9,35,100,450);
242 //plotTools->Area(hPLobsexcl, Mzero, Mhalf, PLObsExclusion);
243 //hPLobsexcl->Draw("colz");
244 //c1->SaveAs("results_tb3/PL_ObsExclusion_m0_m12_tb3.pdf");
245
246 // TestContours in M0 - M1/2 ===================================================================
247 TH2F*texcl = new TH2F("texcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Exclusion",
248 200,0,2009.9,35,100,450);
249 TH2F*texpexcl=(TH2F*)texcl->Clone();
250 plotToolsHT->Area(texpexcl, Mzero, Mhalf, NLOExpNoSigExclCL);
251 std::vector<TGraph*> contours = plotToolsHT->GetContours(texpexcl,3);
252 texpexcl->Draw("colz");
253 int col=kBlue-10;
254 for (std::vector<TGraph*>::iterator cont=contours.begin(); cont!=contours.end(); ++cont){
255 if (! *cont) continue;
256 double x, y;
257 (*cont)->GetPoint(0, x, y);
258 (*cont)->SetLineColor(col);
259 (*cont)->Draw("l");
260 TLatex l; l.SetTextSize(0.04); l.SetTextColor(col++);
261 char val[20];
262 sprintf(val,"%d",(int)(cont-contours.begin()));
263 l.DrawLatex(x,y,val);
264 }
265 c1->SaveAs("results/ExclusionTestContours_m0_m12_tb3.pdf");
266 c1->SaveAs("results_tb3/ExclusionTestContours_m0_m12_tb3.pdf");
267
268
269 // Exclusion in M0 - M1/2
270 c1->SetRightMargin ( 0.05 );
271 TH2F*hexcl = new TH2F("hexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Exclusion",
272 200,0,2009.9,35,100,450);
273 hexcl->SetNdivisions(505);
274 TH2F*hs = new TH2F("hs","",200,0,2009.9,35,100,450);
275 TGraph * gexpexcl = plotTools ->GetContour(hs,Mzero,Mhalf,NLOExpExclCL, 3,0, 2,2);
276 TGraph * gexpexcl_LO = plotTools ->GetContour(hs,Mzero,Mhalf,ExpExclCL, 3,0, 2,4);
277 TGraph * gobsexcl = plotTools ->GetContour(hs,Mzero,Mhalf,NLOObsExclCL, 3,0, 2,1);
278 TGraph * gobsexcl_LO = plotTools ->GetContour(hs,Mzero,Mhalf,ObsExclCL, 3,0, 2,1);
279 TGraph * gMCMCexpexcl = plotToolsHT->GetContour(hs,Mzero,Mhalf,MCMCExpExclusion, 3,0, 3,2);
280 TGraph * gMCMCobsexcl = plotToolsHT->GetContour(hs,Mzero,Mhalf,MCMCObsExclusion, 3,0, 3,1);
281 TGraph * gFCexpexclHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOFCExpExclusion, 3,0, 3,2);
282 TGraph * gFCexpexclHT_LO = plotToolsHT->GetContour(hs,Mzero,Mhalf,FCExpExclusion, 3,0, 3,4);
283 TGraph * gFCexpexclMHT = plotTools->GetContour(hs,Mzero,Mhalf,NLOFCExpExclusion, 3,0, 3,2);
284 TGraph * gFCexpexclMHT_LO = plotTools->GetContour(hs,Mzero,Mhalf,FCExpExclusion, 3,0, 3,4);
285 TGraph * gFCobsexclHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOFCObsExclusion, 3,0, 3,1);
286 TGraph * gFCobsexclMHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOFCObsExclusion, 3,0, 3,1);
287 TGraph * gCLsExpExclHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOExpExclCL, 3,0, 1,2);
288 TGraph * gCLsObsExclHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOObsExclCL, 3,1, 1,1);
289 TGraph * gCLsExpExclHT_LO = plotToolsHT->GetContour(hs,Mzero,Mhalf,ExpExclCL, 3,0, 1,4);
290 TGraph * gCLsObsExclHT_LO = plotToolsHT->GetContour(hs,Mzero,Mhalf,ObsExclCL, 3,0, 2,1);
291 TGraph * gCLsExpExclHTm1 = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOExpExclCLm1sigma,3,0, 5,2);
292 TGraph * gCLsExpExclHTp1 = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOExpExclCLp1sigma,3,0, 5,2);
293 TGraph * gCLsExpExclMHTm1 = plotTools ->GetContour(hs,Mzero,Mhalf,NLOExpExclCLm1sigma, 3,0, 5,2);
294 TGraph * gCLsExpExclMHTp1 = plotTools ->GetContour(hs,Mzero,Mhalf,NLOExpExclCLp1sigma, 3,0, 5,2);
295 TGraph * gCheck1 = (TGraph*)gobsexcl->Clone();
296 TGraph * gCheck2 = (TGraph*)gexpexcl->Clone();
297 Smooth( gCLsObsExclHT, 27); gCLsObsExclHT->SetLineWidth( 3 );
298 Smooth( gCLsExpExclHT, 27 ); gCLsExpExclHT->SetLineWidth( 3 );
299 Smooth( gCLsObsExclHT_LO, 27); gCLsObsExclHT_LO->SetLineWidth( 2 );
300 Smooth( gCLsExpExclHT_LO, 27 ); gCLsExpExclHT_LO->SetLineWidth( 3 );
301 Smooth( gexpexcl, 27 );
302 Smooth( gobsexcl_LO, 27 );
303 //Smooth( gobsexcl, 27 );
304 Smooth( gobsexcl, 27 );
305 Smooth( gexpexcl_LO, 27 );
306 Smooth( gFCexpexclHT, 27 );
307 Smooth( gFCexpexclHT_LO, 27 );gFCexpexclHT_LO->SetLineWidth( 3 );
308 Smooth( gFCexpexclMHT, 27 );
309 Smooth( gFCexpexclMHT_LO, 27 );
310 Smooth( gFCobsexclHT, 27 );gFCobsexclHT->SetLineWidth( 2 );
311 Smooth( gFCobsexclMHT, 27 );
312 Smooth( gCLsExpExclHTm1, 27 );
313 Smooth( gCLsExpExclHTp1, 27 );
314 Smooth( gCLsExpExclMHTm1, 27 );
315 Smooth( gCLsExpExclMHTp1, 27 );
316 TGraph * CLsObsNLO = plotToolsHT->ChooseBest(gCLsObsExclHT,gobsexcl, gCLsObsExclHT,gobsexcl);
317 TGraph * CLsObsLO = plotToolsHT->ChooseBest(gCLsObsExclHT_LO,gobsexcl_LO, gCLsObsExclHT_LO,gobsexcl_LO);
318 TGraph * CLsExpNLO = plotToolsHT->ChooseBest(gCLsExpExclHT,gexpexcl, gCLsExpExclHT,gexpexcl);
319 TGraph * CLsExpLO = plotToolsHT->ChooseBest(gCLsExpExclHT_LO,gexpexcl_LO, gCLsExpExclHT_LO,gexpexcl_LO);
320 TGraph * FCExpLO = plotToolsHT->ChooseBest(gFCexpexclHT_LO,gFCexpexclMHT_LO,gFCexpexclHT_LO,gFCexpexclMHT_LO);
321 TGraph * FCExpNLO = plotToolsHT->ChooseBest(gFCexpexclHT,gFCexpexclMHT,gFCexpexclHT,gFCexpexclMHT);
322 TGraph * FCObsNLO = plotToolsHT->ChooseBest(gFCobsexclHT,gFCobsexclMHT,gFCobsexclHT,gFCobsexclMHT);
323 TGraph * gCLsExpExclp1 = plotToolsHT->ChooseBest(gCLsExpExclHTp1,gCLsExpExclMHTp1, gCLsExpExclHTp1,gCLsExpExclMHTp1);
324 TGraph * gCLsExpExclm1 = plotToolsHT->ChooseBest(gCLsExpExclHTm1,gCLsExpExclMHTm1, gCLsExpExclHTm1,gCLsExpExclMHTm1);
325 TGraph * gCLsExp1Sigma = MakeBand(gCLsExpExclp1, gCLsExpExclm1);
326 hexcl->GetYaxis()->SetTitleOffset(1.3);
327 hexcl->GetXaxis()->SetTitleOffset(0.92);
328 hexcl->Draw("colz");
329 //set old exclusion Limits
330 TGraph* Atlas = Atlas_m0_m12_tb3_obs();
331 Atlas->SetLineColor( 28 );
332 TGraph* LEP_ch = set_lep_ch(3);
333 TGraph* LEP_sl = set_lep_sl(3);//slepton curve
334 TGraph* TEV_sg_cdf = set_tev_sg_cdf(3);//squark gluino cdf
335 TGraph* TEV_sg_d0 = set_tev_sg_d0(3);//squark gluino d0
336 //TGraph* TEV_tlp_cdf = set_tev_tlp_cdf(10);//trilepton cdf
337 //TGraph* TEV_tlp_d0 = set_tev_tlp_d0(10);//trilepton d0
338 TGraph* stau = set_tev_stau(3);//stau
339 TGraph* TEV_sn_d0_1 = set_sneutrino_d0_1(3);
340 TGraph* TEV_sn_d0_2 = set_sneutrino_d0_2(3);
341 TGraphErrors* First = getObserved_NLO_tanBeta3();
342 TGraphErrors* Second = getExpected_NLO_tanBeta3();//getLO_jetMultis();
343 TGraphErrors* Third = getLO_tanBeta3();
344 First->GetXaxis()->SetRangeUser(0,505);
345 First->GetYaxis()->SetRangeUser(80,500);
346 First->GetXaxis()->SetTitle("m_{0} (GeV)");
347 First->GetYaxis()->SetTitle("m_{1/2} (GeV)");
348 TSpline3 *sFirst = new TSpline3("sFirst",First);
349 sFirst->SetLineColor(kBlue);
350 //sFirst->SetLineWidth(3);
351 TSpline3 *sSecond = new TSpline3("sSecond",Second);
352 sSecond->SetLineColor(kBlue);
353 sSecond->SetLineStyle(2);
354 //sSecond->SetLineWidth(3);
355 TSpline3 *sThird = new TSpline3("sThird",Third);
356 sThird->SetLineColor(kBlue);
357 sThird->SetLineStyle(4);
358 //sThird->SetLineWidth(3);
359 //gCheck1->Draw("same");
360 //gCheck2->Draw("same");
361 //gexpexcl->Draw("l");
362 //gobsexcl->Draw("l");
363 //gexpexcl_LO->Draw("l");
364 //gCLsExpExclHT_LO->Draw("l");
365 //gCLsObsExclHT->Draw("l");
366 //gCLsExpExclHT->Draw("l");
367 //gFCexpexclHT_LO->Draw("l");
368 //gFCexpexclMHT_LO->Draw("l");
369 if (gCLsExp1Sigma) gCLsExp1Sigma->Draw("lf");
370 TEV_sn_d0_1->Draw("fsame");
371 TEV_sn_d0_2->Draw("fsame"); //only for tb=3
372 stau->Draw("fsame");
373 LEP_ch->Draw("fsame");
374 LEP_sl->Draw("fsame");
375 TEV_sg_cdf->Draw("fsame");
376 TEV_sg_cdf->Draw("lsame");
377 TEV_sg_d0->Draw("fsame");
378 TEV_sg_d0->Draw("lsame");
379 sFirst->Draw("same");
380 TLatex b; b.SetTextSize(0.02); b.SetTextColor(1);
381 b.DrawLatex( 10,435,"#tilde{#tau} LSP");
382
383 //sSecond->Draw("same");
384 //sThird->Draw("same");
385 Atlas->Draw("c,same");
386 TLatex ms; ms.SetTextSize(0.025); ms.SetTextFont(42);//ms.SetTextColor(12);
387 ms.DrawLatex(395,508,"tan#beta=3, #mu>0, A_{0}=0");
388 //gCheck1->Draw("same");
389 //gCheck2->Draw("same");
390 //TLegend* legexp = new TLegend(0.66,0.65,0.98,0.93,NULL,"brNDC");
391 TLegend* legexp = new TLegend(0.61,0.61,0.93,0.88,NULL,"brNDC");
392 legexp->SetFillColor(0);legexp->SetShadowColor(0);legexp->SetFillStyle(4000);legexp->SetTextFont(42);legexp->SetTextSize(0.025);legexp->SetBorderSize(0);
393 //TEV_sg_cdf.SetLineColor(1);
394 legexp->SetHeader("CMS");
395 legexp->AddEntry(TEV_sg_cdf,"CDF #tilde{#font[12]{g}}, #tilde{#font[12]{q}}, #scale[0.8]{tan#beta=5, #mu<0}","f");
396 legexp->AddEntry(TEV_sg_d0,"D0 #tilde{#font[12]{g}}, #tilde{#font[12]{q}}, #scale[0.8]{#mu<0}","f");
397 //ch_gr.SetLineColor(1);
398 legexp->AddEntry(LEP_ch,"LEP2 #tilde{#chi}_{1}^{#pm}","f");
399 //sl_gr.SetLineColor(1);
400 legexp->AddEntry(LEP_sl,"LEP2 #tilde{#font[12]{l}}^{#pm}","f"); //NOT FOR tb=50!
401 //if(tanbeta == 3)
402 legexp->AddEntry(TEV_sn_d0_1,"D0 #chi^{#pm}_{1}, #chi^{0}_{2}","f");
403 legexp->AddEntry(sFirst, "CMS #alpha_{T}");
404 //legexp->AddEntry(Atlas, "Atlas","l");
405 legexp->Draw();
406
407 CLsObsNLO->Draw("l");
408 CLsObsLO->Draw("l");
409 CLsExpNLO->Draw("l");
410 //FCExpNLO->Draw("l");
411
412 //constant ssqquark and gluino lines
413 TF1* lnsq[4];
414 TF1* lngl[4];
415 TLatex sqt; sqt.SetTextSize(0.02); sqt.SetTextAngle(-14);sqt.SetTextColor(kGray+2);
416 sqt.DrawLatex(148,218,"#font[92]{#tilde{q}(500)GeV}");
417 sqt.DrawLatex(300,365,"#font[92]{#tilde{q}(800)GeV}");
418 TLatex glt; glt.SetTextSize(0.02); sqt.SetTextAngle(-4); glt.SetTextColor(kGray+2);
419 glt.DrawLatex(430,184,"#font[92]{#tilde{g}(500)GeV}");
420 //glt.DrawLatex(450,235,"#font[92]{#tilde{g}(650)GeV}");
421 glt.DrawLatex(428,311,"#font[92]{#tilde{g}(800)GeV}");
422 int tanBeta_=3;
423 for(int i = 0; i < 4; i++){
424 lnsq[i] = constant_squark(tanBeta_,i);
425 lngl[i] = constant_gluino(tanBeta_,i);
426 lngl[i]->Draw("same");
427 lnsq[i]->Draw("same");
428 }
429 //TLegend * leg = new TLegend(0.3,0.8,0.65,0.93);
430 TLegend * leg = new TLegend(0.25,0.76,0.6,0.88);
431 leg->SetBorderSize(0);leg->SetFillColor(0);leg->SetFillStyle(4000);leg->SetTextFont(42);legexp->SetTextSize(0.025);
432 TGraph * expLeg = (TGraph*)CLsExpNLO->Clone();expLeg->SetFillStyle(gCLsExp1Sigma->GetFillStyle());expLeg->SetFillColor(gCLsExp1Sigma->GetFillColor());
433 leg->SetHeader("L_{int} = 36/pb, #sqrt{s} = 7 TeV");
434 leg->AddEntry(CLsObsNLO,"Observed, NLO","l");
435 leg->AddEntry(CLsObsLO, "Observed, LO","l");
436 leg->AddEntry(expLeg, "Expected #pm 1#sigma, NLO","lf");
437 //leg->AddEntry(FCExpLO, "Expected, FC, NLO","l");
438 leg->Draw();
439 gPad->RedrawAxis();
440 c1->SaveAs("results/Exclusion_m0_m12_tb3.pdf");
441
442 hexcl->Draw("");
443 gCLsExp1Sigma->SetName("CLsNLO_Exp1SigmaUncertaintyTb3");
444 CLsObsNLO->SetName("CLsNLO_ObservedTb3");
445 CLsExpNLO->SetName("CLsNLO_ExpectedTb3");
446 CLsExpLO->SetName("CLsLO_ExpectedTb3");
447 gCLsExp1Sigma->Draw("l");
448 CLsObsNLO->Draw("l");
449 CLsExpNLO->Draw("l");
450 CLsObsLO->Draw("l");
451 c1->SaveAs("results/LimitContours_tb3.C");
452
453 // plotToolsHT->Print(Xsection, Mzero,Mhalf,gCLsObsExclHT, 10);
454
455
456
457 hexcl->Draw("colz");
458 LEP_ch->Draw("fsame");
459 LEP_sl->Draw("fsame");
460 TEV_sg_cdf->Draw("fsame");
461 TEV_sg_cdf->Draw("lsame");
462 TEV_sg_d0->Draw("fsame");
463 TEV_sg_d0->Draw("lsame");
464 if (gCLsExp1Sigma) gCLsExp1Sigma->Draw("lf");
465 sFirst->Draw("same");
466 Atlas->Draw("c,same");
467 ms.DrawLatex(395,508,"tan#beta=3, #mu>0, A_{0}=0");
468 CLsObsNLO->Draw("l");
469 //CLsObsLO->Draw("l");
470 CLsExpNLO->Draw("l");
471 //FCExpNLO->Draw("l");
472 //Jim's limits///////////////////////////////////////////////////////////////////////////////
473 TGraph* JimObsHT = Jim_ht_tb3(0);
474 TGraph* JimObsMHT = Jim_mht_tb3(0);
475 TGraph* JimExpHT = Jim_ht_tb3(1);
476 TGraph* JimExpMHT = Jim_mht_tb3(1);
477 TGraph* JimExpHTup = Jim_ht_tb3(2);
478 TGraph* JimExpMHTup = Jim_mht_tb3(2);
479 TGraph* JimExpHTdn = Jim_ht_tb3(3);
480 TGraph* JimExpMHTdn = Jim_mht_tb3(3);
481 Smooth(JimObsHT, 2);
482 Smooth(JimObsMHT,2);
483 Smooth(JimExpHT, 2);
484 Smooth(JimExpMHT,2);
485 Smooth(JimExpHTup, 2);
486 Smooth(JimExpMHTup,2);
487 Smooth(JimExpHTdn, 2);
488 Smooth(JimExpMHTdn,2);
489 TGraph * JimObs = plotToolsHT->ChooseBest(JimObsHT,JimObsMHT,JimObsHT,JimObsMHT);
490 TGraph * JimExp = plotToolsHT->ChooseBest(JimExpHT,JimExpMHT,JimExpHT,JimExpMHT);
491 TGraph * JimExpup = plotToolsHT->ChooseBest(JimExpHTup,JimExpMHTup,JimExpHTup,JimExpMHTup);
492 TGraph * JimExpdn = plotToolsHT->ChooseBest(JimExpHTdn,JimExpMHTdn,JimExpHTdn,JimExpMHTdn);
493 TGraph * JimExp1Sigma = MakeBand(JimExpup, JimExpdn);JimExp1Sigma->SetFillStyle(3001);
494 TGraph * JimLeg = (TGraph*)JimExp->Clone();JimLeg->SetFillStyle(JimExp1Sigma->GetFillStyle());JimLeg->SetFillColor(JimExp1Sigma->GetFillColor());
495 JimExp1Sigma->Draw("f");
496 JimObs->Draw("c");
497 JimExp->Draw("c");
498 stau->Draw("fsame");
499 b.DrawLatex( 10,435,"#tilde{#tau} LSP");
500 //constant ssqquark and gluino lines
501 sqt.DrawLatex(148,218,"#font[92]{#tilde{q}(500)GeV}");
502 sqt.DrawLatex(220,385,"#font[92]{#tilde{q}(800)GeV}");
503 glt.DrawLatex(430,184,"#font[92]{#tilde{g}(500)GeV}");
504 glt.DrawLatex(428,311,"#font[92]{#tilde{g}(800)GeV}");
505 for(int i = 0; i < 4; i++){
506 lngl[i]->Draw("same");
507 lnsq[i]->Draw("same");
508 }
509 legexp->Draw();
510 TLegend * legBayes = new TLegend(0.3,0.8,0.65,0.93);
511 legBayes->SetBorderSize(0);legBayes->SetFillColor(0);legBayes->SetFillStyle(4000);legBayes->SetTextFont(42);
512 legBayes->SetHeader("L_{int} = 36/pb, #sqrt{s} = 7 TeV");
513 legBayes->AddEntry(JimObs, "Observed, Bayes","l");
514 legBayes->AddEntry(JimLeg, "Expected #pm 1#sigma, Bayes","lf");
515 legBayes->AddEntry(CLsObsNLO,"Observed, CLs","l");
516 legBayes->AddEntry(expLeg, "Expected #pm 1#sigma, CLs","lf");
517 legBayes->Draw();
518 gPad->RedrawAxis();
519 c1->SaveAs("results/Exclusion_m0_m12_tb3_Bayes.pdf");
520
521
522 //The RA1-style Expected limits - no-signal hypothesis *only* for pseudo data ///////////////////////////////
523 TGraph * gCLsExpNoSExclMHT = plotTools ->GetContour(hs,Mzero,Mhalf,NLOExpNoSigExclCL, 3,1, 1,2);
524 TGraph * gCLsExpNoSExclHT = plotToolsHT->GetContour(hs,Mzero,Mhalf,NLOExpNoSigExclCL, 3,1, 1,2);
525 TGraph * gCLsExpNoSExclHTm1 = plotToolsHT->ModifyExpSigma(gCLsExpExclHTm1, gCLsExpExclHT, gCLsExpNoSExclHT);
526 TGraph * gCLsExpNoSExclHTp1 = plotToolsHT->ModifyExpSigma(gCLsExpExclHTp1, gCLsExpExclHT, gCLsExpNoSExclHT);
527 TGraph * gCLsExpNoSExclMHTm1 = plotTools ->ModifyExpSigma(gCLsExpExclMHTm1,gCLsExpExclHT, gCLsExpNoSExclHT);
528 TGraph * gCLsExpNoSExclMHTp1 = plotTools ->ModifyExpSigma(gCLsExpExclMHTp1,gCLsExpExclHT, gCLsExpNoSExclHT);
529 Smooth( gCLsExpNoSExclMHT, 27 ); gCLsExpNoSExclMHT->SetLineWidth( 3 );
530 Smooth( gCLsExpNoSExclHT, 27 ); gCLsExpNoSExclHT->SetLineWidth( 3 );
531 Smooth( gCLsExpNoSExclHTm1, 27 );
532 Smooth( gCLsExpNoSExclHTp1, 27 );
533 Smooth( gCLsExpNoSExclMHTm1, 27 );
534 Smooth( gCLsExpNoSExclMHTp1, 27 );
535 TGraph * CLsExpNoSNLO = plotToolsHT->ChooseBest(gCLsExpNoSExclHT,gCLsExpNoSExclMHT, gCLsExpNoSExclHT,gCLsExpNoSExclMHT);
536 TGraph * gCLsExpNoSExclp1 = plotToolsHT->ChooseBest(gCLsExpNoSExclHTp1,gCLsExpNoSExclMHTp1, gCLsExpNoSExclHTp1,gCLsExpNoSExclMHTp1);
537 TGraph * gCLsExpNoSExclm1 = plotToolsHT->ChooseBest(gCLsExpNoSExclHTm1,gCLsExpNoSExclMHTm1, gCLsExpNoSExclHTm1,gCLsExpNoSExclMHTm1);
538 TGraph * gCLsExpNoS1Sigma = MakeBand(gCLsExpNoSExclp1, gCLsExpNoSExclm1);gCLsExpNoS1Sigma->SetFillStyle(4010);
539 hexcl->Draw("colz");
540 LEP_ch->Draw("fsame");
541 LEP_sl->Draw("fsame");
542 TEV_sg_cdf->Draw("fsame");
543 TEV_sg_cdf->Draw("lsame");
544 TEV_sg_d0->Draw("fsame");
545 TEV_sg_d0->Draw("lsame");
546 ms.DrawLatex(1500,458,"tan#beta=3, #mu>0, A_{0}=0");
547 gCLsExpNoS1Sigma->Draw("lf,same");
548 sFirst->Draw("same");
549 //sAtlas->Draw("c,same");
550 CLsObsNLO->Draw("l,same");
551 CLsObsLO->Draw("l,same");
552 CLsExpNoSNLO->Draw("l,same");
553 //FCExpNLO->Draw("l");
554 stau->Draw("fsame");
555 b.DrawLatex( 10,435,"#tilde{#tau} LSP");
556 //constant ssqquark and gluino lines
557 sqt.DrawLatex(148,218,"#font[92]{#tilde{q}(500)GeV}");
558 sqt.DrawLatex(300,365,"#font[92]{#tilde{q}(800)GeV}");
559 glt.DrawLatex(430,184,"#font[92]{#tilde{g}(500)GeV}");
560 glt.DrawLatex(750,290,"#font[92]{#tilde{g}(800)GeV}");
561 for(int i = 0; i < 4; i++){
562 lngl[i]->Draw("same");
563 lnsq[i]->Draw("same");
564 }
565 legexp->Draw();
566 leg->Draw();
567 gPad->RedrawAxis();
568 c1->SaveAs("results/Exclusion_m0_m12_tb3_NoSigHypPseudoData.pdf");
569 c1->SaveAs("results_tb3/Exclusion_m0_m12_tb3_NoSigHypPseudoData.pdf");
570
571
572
573 // Signal Contamination in M0 - M1/2
574 c1->SetRightMargin ( 0.2 );
575 c1->SetLogz(0);
576 TH2F*hsigcont = new TH2F("sigcont",";m_{0} [GeV]; m_{1/2}; number of signal in bkg yield [events]",
577 200,0,2009.9,25,100,350);
578 plotToolsHT->Area(hsigcont, Mzero, Mhalf, SignalContamination);
579 hsigcont->SetMinimum(0.01);
580 hsigcont->SetMaximum(20);
581 hsigcont->Draw("colz");
582 if (gCLsObsExclHT) gCLsObsExclHT->Draw("l");
583 c1->SaveAs("results_tb3/SignalContamination_HT_m0_m12_tb3.pdf");
584
585 // Signal Contamination in M0 - M1/2
586 c1->SetLogz(0);
587 TH2F*hsigcontMHT = new TH2F("sigcontMHT",";m_{0} [GeV]; m_{1/2}; number of signal in bkg yield [events]",
588 200,0,2009.9,25,100,350);
589 plotTools->Area(hsigcontMHT, Mzero, Mhalf, SignalContamination);
590 hsigcontMHT->SetMinimum(0.01);
591 hsigcontMHT->SetMaximum(20);
592 hsigcontMHT->Draw("colz");
593 if (gobsexcl) gobsexcl->Draw("l");
594 c1->SaveAs("results_tb3/SignalContamination_MHT_m0_m12_tb3.pdf");
595
596
597 // Signal JEC Uncertainty MHT
598 c1->SetLogz(0);
599 TH2F*hsig_jec_mht = new TH2F("sigjecmht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal JEC uncertainty",
600 200,0,2009.9,25,100,350);
601 plotTools->Area(hsig_jec_mht, Mzero, Mhalf, SignalUncertJEC);
602 hsig_jec_mht->SetMinimum(0.0);
603 hsig_jec_mht->SetMaximum(0.25);
604 hsig_jec_mht->SetContour(10);
605 hsig_jec_mht->Draw("colz");
606 if (gobsexcl) gobsexcl->Draw("l");
607 c1->SaveAs("results_tb3/SigJEC_MHT_m0_m12_tb3.pdf");
608
609 // Signal JEC Uncertainty HT
610 c1->SetLogz(0);
611 TH2F*hsig_jec_ht = new TH2F("sigjecht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal JEC uncertainty",
612 200,0,2009.9,25,100,350);
613 plotToolsHT->Area(hsig_jec_ht, Mzero, Mhalf, SignalUncertJEC);
614 hsig_jec_ht->SetMinimum(0.0);
615 hsig_jec_ht->SetMaximum(0.25);
616 hsig_jec_ht->SetContour(10);
617 hsig_jec_ht->Draw("colz");
618 if (gCLsObsExclHT) gCLsObsExclHT->Draw("l");
619 c1->SaveAs("results_tb3/SigJEC_HT_m0_m12_tb3.pdf");
620
621
622 // Signal MuIso Uncertainty MHT
623 c1->SetLogz(0);
624 TH2F*hsig_MuIso_mht = new TH2F("sigMuIsomht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal #mu_{iso} uncertainty",
625 200,0,2009.9,25,100,350);
626 plotTools->Area(hsig_MuIso_mht, Mzero, Mhalf, SignalUncertMuIso);
627 hsig_MuIso_mht->SetMinimum(0.0);
628 hsig_MuIso_mht->SetMaximum(0.05);
629 hsig_MuIso_mht->SetContour(5);
630 hsig_MuIso_mht->Draw("colz");
631 if (gobsexcl) gobsexcl->Draw("l");
632 c1->SaveAs("results_tb3/SigMuIso_MHT_m0_m12_tb3.pdf");
633
634 // Signal MuIso Uncertainty HT
635 c1->SetLogz(0);
636 TH2F*hsig_MuIso_ht = new TH2F("sigMuIsoht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal #mu_{iso} uncertainty",
637 200,0,2009.9,25,100,350);
638 plotToolsHT->Area(hsig_MuIso_ht, Mzero, Mhalf, SignalUncertMuIso);
639 hsig_MuIso_ht->SetMinimum(0.0);
640 hsig_MuIso_ht->SetMaximum(0.05);
641 hsig_MuIso_ht->SetContour(5);
642 hsig_MuIso_ht->Draw("colz");
643 if (gCLsObsExclHT) gCLsObsExclHT->Draw("l");
644 c1->SaveAs("results_tb3/SigMuIso_HT_m0_m12_tb3.pdf");
645
646
647 // Signal PDF Uncertainty MHT
648 c1->SetLogz(0);
649 TH2F*hsig_PDF_mht = new TH2F("sigPDFmht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal PDF uncertainty",
650 200,0,2009.9,25,100,350);
651 plotTools->Area(hsig_PDF_mht, Mzero, Mhalf, SignalUncertPDF);
652 hsig_PDF_mht->SetMinimum(0.0);hsig_PDF_mht->GetZaxis()->SetTitleOffset(1.3);
653 hsig_PDF_mht->SetMaximum(0.20);
654 hsig_PDF_mht->SetContour(10);
655 hsig_PDF_mht->Draw("colz");
656 if (gobsexcl) gobsexcl->Draw("l");
657 c1->SaveAs("results_tb3/SigPDF_MHT_m0_m12_tb3.pdf");
658
659 // Signal PDF Uncertainty HT
660 c1->SetLogz(0);
661 TH2F*hsig_PDF_ht = new TH2F("sigPDFht",";m_{0} [GeV]; m_{1/2} [GeV]; Signal PDF uncertainty",
662 200,0,2009.9,25,100,350);
663 plotToolsHT->Area(hsig_PDF_ht, Mzero, Mhalf, SignalUncertPDF);
664 hsig_PDF_ht->SetMinimum(0.0);hsig_PDF_ht->GetZaxis()->SetTitleOffset(1.3);
665 hsig_PDF_ht->SetMaximum(0.20);
666 hsig_PDF_ht->SetContour(10);
667 hsig_PDF_ht->Draw("colz");
668 if (gCLsObsExclHT) gCLsObsExclHT->Draw("l");
669 c1->SaveAs("results_tb3/SigPDF_HT_m0_m12_tb3.pdf");
670
671
672
673 // Signal kFactor Uncertainty MHT
674 c1->SetLogz(0);
675 TH2F*hsig_kFactorUncert_mht = new TH2F("sigkFactorUncertmht",";m_{0} [GeV]; m_{1/2} [GeV]; signal NLO scale uncertainty",
676 200,0,2009.9,25,100,350);
677 plotTools->Area(hsig_kFactorUncert_mht, Mzero, Mhalf, SignalUncertKfactor);
678 hsig_kFactorUncert_mht->SetMinimum(0.1);hsig_kFactorUncert_mht->GetZaxis()->SetTitleOffset(1.3);
679 hsig_kFactorUncert_mht->SetMaximum(0.2);
680 hsig_kFactorUncert_mht->SetContour(10);
681 hsig_kFactorUncert_mht->Draw("colz");
682 if (gobsexcl) gobsexcl->Draw("l");
683 c1->SaveAs("results_tb3/SigkFactorUncert_MHT_m0_m12_tb3.pdf");
684
685 // Signal kFactor Uncertainty HT
686 c1->SetLogz(0);
687 TH2F*hsig_kFactorUncert_ht = new TH2F("sigkFactorUncertht",";m_{0} [GeV]; m_{1/2} [GeV]; signal NLO scale uncertainty",
688 200,0,2009.9,25,100,350);
689 plotToolsHT->Area(hsig_kFactorUncert_ht, Mzero, Mhalf, SignalUncertKfactor);
690 hsig_kFactorUncert_ht->SetMinimum(0.1);hsig_kFactorUncert_ht->GetZaxis()->SetTitleOffset(1.3);
691 hsig_kFactorUncert_ht->SetMaximum(0.2);
692 hsig_kFactorUncert_ht->SetContour(10);
693 hsig_kFactorUncert_ht->Draw("colz");
694 if (gCLsObsExclHT) gCLsObsExclHT->Draw("l");
695 c1->SaveAs("results_tb3/SigkFactorUncert_HT_m0_m12_tb3.pdf");
696
697 // Signal kFactor HT
698 c1->SetLogz(0);
699 TH2F*hsig_kFactor_ht = new TH2F("sigkFactorht",";m_{0} [GeV]; m_{1/2} [GeV]; NLO signal k-factor",
700 200,0,2009.9,25,100,350);
701 plotToolsHT->Area(hsig_kFactor_ht, Mzero, Mhalf, SignalKfactor);
702 hsig_kFactor_ht->SetMinimum(1.0);hsig_kFactor_ht->GetZaxis()->SetTitleOffset(1.3);
703 hsig_kFactor_ht->SetMaximum(2.4);
704 hsig_kFactor_ht->SetContour(7);
705 hsig_kFactor_ht->Draw("colz");
706 if (gCLsObsExclHT) gCLsObsExclHT->Draw("l");
707 c1->SaveAs("results_tb3/SigkFactor_HT_m0_m12_tb3.pdf");
708
709 // Signal kFactor MHT
710 c1->SetLogz(0);
711 TH2F*hsig_kFactor_mht = new TH2F("sigkFactormht",";m_{0} [GeV]; m_{1/2} [GeV]; NLO signal k-factor",
712 200,0,2009.9,25,100,350);
713 plotTools->Area(hsig_kFactor_mht, Mzero, Mhalf, SignalKfactor);
714 hsig_kFactor_mht->SetMinimum(1.0);hsig_kFactor_ht->GetZaxis()->SetTitleOffset(1.3);
715 hsig_kFactor_mht->SetMaximum(2.4);
716 hsig_kFactor_mht->SetContour(7);
717 hsig_kFactor_mht->Draw("colz");
718 if (gobsexcl) gobsexcl->Draw("l");
719 c1->SaveAs("results_tb3/SigkFactor_MHT_m0_m12_tb3.pdf");
720
721 //-----------------------------------------------------------------------------------
722 c1->SetLogz(1);
723
724 TGraph * mz500 = plotMasses->Line( MSquarkL, MGluino, Mzero, 500, 1);
725 TGraph * mh250 = plotMasses->Line( MSquarkL, MGluino, Mhalf, 250, 1);
726
727 // cross-section in squark - gluino mass
728 TH2F*hxsec_qg = new TH2F("xsec_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; cross section [pb]",
729 60,200,800,40,200,900);
730 plotTools->Area(hxsec_qg, MSquarkL, MGluino, Xsection);
731 hxsec_qg->SetMinimum(0.01);
732 hxsec_qg->Draw("colz");
733 mz500->Draw();
734 mh250->Draw();
735 c1->SaveAs("results_tb3/Xsection_mSql_mGl_tb3.pdf");
736
737 // Observed Limit in squark - gluino mass
738 TH2F*hobslimit_qg = new TH2F("obslimit_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Limit [pb]",
739 60,200,800,40,200,900);
740 plotTools->Area(hobslimit_qg, MSquarkL, MGluino, ObsXsecLimit);
741 hobslimit_qg->SetMinimum(0.01);
742 hobslimit_qg->Draw("colz");
743 c1->SaveAs("results_tb3/ObsLimit_mSql_mGl_tb3.pdf");
744
745 // Expected Limit in squark - gluino mass
746 TH2F*hexplimit_qg = new TH2F("explimit_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Expected Limit [pb]",
747 60,200,800,40,200,900);
748 plotTools->Area(hexplimit_qg, MSquarkL, MGluino, ExpXsecLimit);
749 hexplimit_qg->SetMinimum(0.01);
750 hexplimit_qg->Draw("colz");
751 c1->SaveAs("results_tb3/ExpLimit_mSql_mGl_tb3.pdf");
752
753 // Signal Acceptance in squark - gluino mass
754 TH2F*hsigacc_qg = new TH2F("sigacc_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; Signal Acceptance",
755 60,200,800,40,200,900);
756 plotTools->Area(hsigacc_qg, MSquarkL, MGluino, SignalAcceptance);
757 hsigacc_qg->SetMinimum(0.01);
758 hsigacc_qg->SetMaximum(1.0);
759 hsigacc_qg->Draw("colz");
760 c1->SaveAs("results_tb3/SigAcc_mSql_mGl_tb3.pdf");
761
762 // Exp. Limit on Number of Signal Events in squark - gluino mass
763 c1->SetLogz(0);
764 TH2F*hexplimitnsig_qg = new TH2F("explimitnsig_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL exp. limit signal events [# ]",
765 60,200,800,40,200,900);
766 plotTools->Area(hexplimitnsig_qg, MSquarkL, MGluino, ExpNSignLimit);
767 hexplimitnsig_qg->SetMinimum(0.0);
768 hexplimitnsig_qg->SetMaximum(20);
769 hexplimitnsig_qg->Draw("colz");
770 c1->SaveAs("results_tb3/ExpLimitOnNSig_mSql_mGl_tb3.pdf");
771
772 // Obs. Limit on Number of Signal Events in squark - gluino mass
773 TH2F*hobslimitnsig_qg = new TH2F("obslimitnsig_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL obs. limit signal events [# ]",
774 60,200,800,40,200,900);
775 plotTools->Area(hobslimitnsig_qg, MSquarkL, MGluino, ObsNSignLimit);
776 hobslimitnsig_qg->SetMinimum(0.0);
777 hobslimitnsig_qg->SetMaximum(20);
778 hobslimitnsig_qg->Draw("colz");
779 c1->SaveAs("results_tb3/ObsLimitOnNSig_mSql_mGl_tb3.pdf");
780
781 c1->SetLogz(0);
782 // Expected Exclusion in squark - gluino mass
783 TH2F*hexpexcl_qg = new TH2F("expexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Expected Exclusion",
784 60,200,800,40,200,900);
785 plotTools->Area(hexpexcl_qg, MSquarkL, MGluino, ExpExclCL);
786 hexpexcl_qg->Draw("colz");
787 c1->SaveAs("results_tb3/ExpExclusion_mSql_mGl_tb3.pdf");
788
789 // Observed Exclusion in squark - gluino mass
790 TH2F*hobsexcl_qg = new TH2F("obsexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
791 60,200,800,40,200,900);
792 plotTools->Area(hobsexcl_qg, MSquarkL, MGluino, ObsExclCL);
793 //std::vector<TGraph *> vobsexcl_qg = plotTools->GetContours(hobsexcl_qg);
794 hobsexcl_qg->Draw("colz");
795 //for (std::vector<TGraph *>::iterator g=vobsexcl_qg.begin();g!=vobsexcl_qg.end();++g){
796 // if (! *g) continue;
797 // // (*g)->Draw("l");
798 //}
799 c1->SaveAs("results_tb3/ObsExclusion_mSql_mGl_tb3.pdf");
800
801 // TestContours in M0 - M1/2
802 TH2F*texcl_qg = new TH2F("texcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
803 60,200,800,40,200,900);
804 TH2F*tPLobsexcl_qg=(TH2F*)texcl_qg->Clone();
805 plotTools->Area(tPLobsexcl_qg, MSquarkL, MGluino, PLObsExclusion);
806 TH2F*tPLexpexcl_qg=(TH2F*)texcl_qg->Clone();
807 plotTools->Area(tPLexpexcl_qg, MSquarkL, MGluino, PLExpExclusion);
808 //std::vector<TGraph*> contours_qg = plotTools->GetContours(hexpexcl_qg,3);
809 //std::vector<TGraph*> contours_qg = plotTools->GetContours(hobsexcl_qg,3);
810 std::vector<TGraph*> contours_qg = plotTools->GetContours(tPLobsexcl_qg,3);
811 //std::vector<TGraph*> contours_qg = plotTools->GetContours(tPLexpexcl_qg,3);
812 //hPLexpexcl_qg
813 //hexcl_qg->Draw("colz");
814 //hexpexcl_qg->Draw("colz");
815 //hobsexcl_qg->Draw("colz");
816 tPLobsexcl_qg->Draw("colz");
817 int col_gl=kBlue-10;
818 for (std::vector<TGraph*>::iterator cont=contours_qg.begin(); cont!=contours_qg.end(); ++cont){
819 if (! *cont) continue;
820 double x, y;
821 (*cont)->GetPoint(0, x, y);
822 (*cont)->SetLineColor(col_gl);(*cont)->SetLineWidth(3);
823 (*cont)->Draw("l");
824 TLatex l; l.SetTextSize(0.04); l.SetTextColor(col_gl++);
825 char val[20];
826 sprintf(val,"%d",(int)(cont-contours_qg.begin()));
827 l.DrawLatex(x,y,val);
828 if (cont-contours_qg.begin()>3) break;
829 }
830 c1->SaveAs("results_tb3/ExclusionTestContours_mSql_mGl_tb3.pdf");
831
832 // Observed Exclusion in squark - gluino mass
833 TH2F*hPLobsexcl_qg = new TH2F("plobsexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
834 60,200,800,40,200,900);
835 plotTools->Area(hPLobsexcl_qg, MSquarkL, MGluino, PLObsExclusion);
836 //hPLobsexcl_qg->Draw("colz");
837 //c1->SaveAs("results_tb3/PL_ObsExclusion_mSql_mGl_tb3.pdf");
838
839
840
841 TH2F*hexcl_qg = new TH2F("hexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
842 50,200,800,30,200,900);
843 TGraph * gexpexcl_qg = plotTools->GetContour(hexcl_qg,MSquarkL,MGluino,NLOExpExclCL, 3,0, 2,2);
844 TGraph * gexpexcl_qg_LO = plotTools->GetContour(hexcl_qg,MSquarkL,MGluino,ExpExclCL, 3,0, 2,4);
845 TGraph * gobsexcl_qg = plotTools->GetContour(hexcl_qg,MSquarkL,MGluino,NLOObsExclCL, 3,0, 2,1);
846 TGraph * gMCMCexpexcl_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,MCMCExpExclusion,3,0, 3,2);
847 TGraph * gMCMCobsexcl_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,MCMCObsExclusion,3,0, 3,1);
848 TGraph * gCLsExpExclHT_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,NLOExpExclCL, 3,0, 1,2);
849 TGraph * gCLsExpExclHT_qg_LO = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,ExpExclCL, 3,0, 1,4);
850 TGraph * gCLsObsExclHT_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,NLOObsExclCL, 3,0, 1,1);
851 TGraph * gCLsExpExclHTm1_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,NLOExpExclCLm1sigma,3,0, 5,2);
852 TGraph * gCLsExpExclHTp1_qg = plotToolsHT->GetContour(hexcl_qg,MSquarkL,MGluino,NLOExpExclCLp1sigma,3,0, 5,2);
853 Smooth(gexpexcl_qg, 11);
854 Smooth(gobsexcl_qg, 11);
855 Smooth(gCLsExpExclHT_qg, 11);
856 Smooth(gCLsObsExclHT_qg, 11);
857 Smooth(gCLsExpExclHTm1_qg, 11);
858 Smooth(gCLsExpExclHTp1_qg, 11);
859 TGraph * gCLsExp1Sigma_qg = MakeBand(gCLsExpExclHTp1_qg, gCLsExpExclHTm1_qg);
860 hexcl_qg->Draw("");
861 //
862 if (gCLsExp1Sigma_qg) gCLsExp1Sigma_qg->Draw("lf");
863 if (gobsexcl_qg) gobsexcl_qg->Draw("l");
864 if (gCLsObsExclHT_qg) gCLsObsExclHT_qg->Draw("l");
865 if (gexpexcl_qg) gexpexcl_qg->Draw("l");
866 if (gCLsExpExclHT_qg) gCLsExpExclHT_qg->Draw("l");
867 if (gexpexcl_qg_LO) gexpexcl_qg_LO->Draw("l");
868 if (gCLsExpExclHT_qg_LO) gCLsExpExclHT_qg_LO->Draw("l");
869 //
870 TLegend * leg_qg = new TLegend(0.45,0.78,0.85,0.89);
871 leg_qg->SetBorderSize(0);leg_qg->SetFillColor(0);
872 TGraph * expLeg_qg = (TGraph*)gCLsExpExclHT_qg->Clone();expLeg_qg->SetFillStyle(gCLsExp1Sigma_qg->GetFillStyle());expLeg_qg->SetFillColor(gCLsExp1Sigma_qg->GetFillColor());
873 if (gobsexcl_qg) leg_qg->AddEntry(gobsexcl_qg,"NLO Observed (MHT, CLs)","l");
874 if (gexpexcl_qg) leg_qg->AddEntry(gexpexcl_qg,"NLO Expected (MHT, CLs)","l");
875 if (gexpexcl_qg_LO) leg_qg->AddEntry(gexpexcl_qg_LO,"LO Expected (MHT, CLs)","l");
876 if (gCLsObsExclHT_qg) leg_qg->AddEntry(gCLsObsExclHT_qg,"NLO Observed (HT, CLs)","l");
877 if (gCLsExpExclHT_qg) leg_qg->AddEntry(expLeg_qg,"NLO Expected (HT, CLs)","lf");
878 if (gCLsExpExclHT_qg_LO) leg_qg->AddEntry(gCLsExpExclHT_qg_LO,"LO Expected (HT, CLs)","l");
879 //if (gPLobsexcl_qg) leg_qg->AddEntry(gPLobsexcl_qg,"Observed (PL, RooStat)","l");
880 //if (gPLexpexcl_qg) leg_qg->AddEntry(gPLexpexcl_qg,"Expected (PL, RooStat)","l");
881 leg_qg->Draw();
882 c1->SaveAs("results_tb3/Exclusion_mSql_mGl_tb3.pdf");
883 //c1->SaveAs("plot_tb10.pdf");
884
885
886
887 c1->SetLogy(1);
888 c1->SetLogx(1);
889 TH2F*hUncertScan = new TH2F("hUncertScan",";relative signal uncertainty; number of signal events",
890 10,0.1,0.6,10,0.9,200);
891 //hUncertScan->GetXaxis()->SetNdivisions(505, false);
892 //hUncertScan->SetMinimum(1);
893 TGraph * gCLsExpUncert = new TGraph(0);
894 TGraph * gCLsObsUncert = new TGraph(0);
895 TGraph * gPLExpUncert = new TGraph(0);
896 TGraph * gPLObsUncert = new TGraph(0);
897 TGraph * gFCExpUncert = new TGraph(0);
898 TGraph * gFCObsUncert = new TGraph(0);
899 TGraph * gMCMCExpUncert= new TGraph(0);
900 TGraph * gMCMCObsUncert= new TGraph(0);
901 plotTools->Graph(gCLsExpUncert, SignalRelUncertainty, ExpNSignLimit,1);
902 plotTools->Graph(gCLsObsUncert, SignalRelUncertainty, ObsNSignLimit,1);
903 plotTools->Graph(gPLExpUncert, SignalRelUncertainty, PLExpNSignLimit,1);
904 plotTools->Graph(gPLObsUncert, SignalRelUncertainty, PLObsNSignLimit, 1);
905 plotTools->Graph(gFCExpUncert, SignalRelUncertainty, FCExpNSignLimit,1);
906 plotTools->Graph(gFCObsUncert, SignalRelUncertainty, FCObsNSignLimit, 1);
907 plotTools->Graph(gMCMCExpUncert,SignalRelUncertainty, MCMCExpNSignLimit,1);
908 plotTools->Graph(gMCMCObsUncert,SignalRelUncertainty, MCMCObsNSignLimit, 1);
909 gCLsExpUncert->SetLineStyle(8);
910 gPLObsUncert->SetLineColor(2);
911 gPLExpUncert->SetLineColor(2); gPLExpUncert->SetLineStyle(8);
912 gFCObsUncert->SetLineColor(3);
913 gFCExpUncert->SetLineColor(3); gFCExpUncert->SetLineStyle(8);
914 gMCMCObsUncert->SetLineColor(4);
915 gMCMCExpUncert->SetLineColor(4); gMCMCExpUncert->SetLineStyle(8);
916 hUncertScan->Draw("h");
917 gCLsExpUncert->Draw("l");
918 gCLsObsUncert->Draw("l");
919 gPLObsUncert->Draw("l");
920 gPLExpUncert->Draw("l");
921 gFCObsUncert->Draw("l");
922 gFCExpUncert->Draw("l");
923 gMCMCObsUncert->Draw("l");
924 gMCMCExpUncert->Draw("l");
925 TLatex l; l.SetTextSize(0.03); l.SetTextColor(1);
926 l.DrawLatex(0.025,25,"excluded");
927 TMarker m; m.SetMarkerStyle(29); m.SetMarkerColor(2);
928 m.DrawMarker(0.128, 28.5);l.DrawLatex(0.14,28.5,"LM1");
929 m.DrawMarker(0.147, 77.4);l.DrawLatex(0.16,77.4,"LM0");
930
931 TLegend * leg_S = new TLegend(0.5,0.14,0.85,0.38);
932 leg_S->SetBorderSize(0);leg_S->SetFillColor(0);
933 leg_S->SetHeader("95% CL upper limits");
934 leg_S->AddEntry(gCLsExpUncert,"Expected (CLs, TLimit)","l");
935 leg_S->AddEntry(gCLsObsUncert,"Observed (CLs, TLimit)","l");
936 leg_S->AddEntry(gPLExpUncert,"Expected (PL, RooStat)","l");
937 leg_S->AddEntry(gPLObsUncert,"Observed (PL, RooStat)","l");
938 leg_S->AddEntry(gFCObsUncert,"Observed (FC, RooStat)","l");
939 leg_S->AddEntry(gFCExpUncert,"Expected (FC, RooStat)","l");
940 leg_S->AddEntry(gMCMCObsUncert,"Observed (MCMC, RooStat)","l");
941 leg_S->AddEntry(gMCMCExpUncert,"Expected (MCMC, RooStat)","l");
942 leg_S->Draw();
943 c1->SaveAs("results_tb3/UncertaintyScan.pdf");
944
945 //theApp.Run();
946 }
947
948
949 int main(int argc, char** argv)
950 {
951 return plot(argc, argv);
952 }