ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/auterman/SusyScan/PlotScript/plot50tb.cc
Revision: 1.10
Committed: Wed Jun 22 16:02:08 2011 UTC (13 years, 10 months ago) by auterman
Content type: text/plain
Branch: MAIN
CVS Tags: JHEP2010, HEAD
Changes since 1.9: +2 -2 lines
Log Message:
2010 cleanup

File Contents

# User Rev Content
1 auterman 1.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 auterman 1.6 #include "StyleSettings.h"
8 auterman 1.1
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 auterman 1.6 /*
42 auterman 1.1 //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 auterman 1.6 */
74     util::StyleSettings::paper();
75     gStyle->SetPadBottomMargin(0.18);
76 auterman 1.1
77     //gROOT->SetStyle("MyStyle");
78     TCanvas * c1 = new TCanvas("c1","c1",600,600);
79 auterman 1.6 //c1->SetFillStyle ( 4000 );
80     //c1->SetLeftMargin ( 0.15 );
81     //c1->SetRightMargin ( 0.15 );
82     //c1->SetBottomMargin( 0.10 );
83 auterman 1.1 c1->cd();
84    
85     //Get limits and generator masses ---------------------------------------------------
86     TheLimits * genpoints = new TheLimits();
87     //genpoints->Fill(argc, argv);
88 auterman 1.7 //genpoints->Fill("limits_MHT_tb50_20110303/filelist.txt");
89 auterman 1.10 genpoints->Fill("limits_moriond_MHT.old/filelist_tb50.txt");
90 auterman 1.1
91     TheLimits * genpointsHT = new TheLimits();
92 auterman 1.7 //genpointsHT->Fill("limits_HT_tb50_20110303/filelist.txt");
93 auterman 1.10 genpointsHT->Fill("limits_moriond_HT.old/filelist_tb50.txt");
94 auterman 1.1
95    
96     //Replace read limits with specific numbers
97     //genpoints->OverwriteLimits("ABCD_MHT");
98    
99 auterman 1.4 genpoints->FillGeneratorMasses("GenScan_tb50.dat");
100 auterman 1.1 genpoints->match();
101 auterman 1.4 genpointsHT->FillGeneratorMasses("GenScan_tb50.dat");
102 auterman 1.1 genpointsHT->match();
103    
104 auterman 1.8 //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 auterman 1.1 //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 auterman 1.7 // 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 auterman 1.1 // 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 auterman 1.7 c1->SetRightMargin ( 0.1 );
234 auterman 1.1 // 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 auterman 1.6 plotToolsHT->Area(texpexcl, Mzero, Mhalf, NLOExpExclCLp1sigma);
239 auterman 1.1 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 auterman 1.9 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 auterman 1.6 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 auterman 1.7 TGraph * gobsexcl_LO = plotTools ->GetContour(hs,Mzero,Mhalf,ObsExclCL, 3,0, 2,1);
267 auterman 1.6 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 auterman 1.7 TGraph * gCLsObsExclHT_LO = plotToolsHT->GetContour(hs,Mzero,Mhalf,ObsExclCL, 3,0, 2,1);
279 auterman 1.6 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 auterman 1.7 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 auterman 1.6 TGraph * CLsObsNLO = plotToolsHT->ChooseBest(gCLsObsExclHT,gobsexcl, gCLsObsExclHT,gobsexcl);
305 auterman 1.7 TGraph * CLsObsLO = plotToolsHT->ChooseBest(gCLsObsExclHT_LO,gobsexcl_LO, gCLsObsExclHT_LO,gobsexcl_LO);
306 auterman 1.6 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 auterman 1.7 TGraph * FCExpNLO = plotToolsHT->ChooseBest(gFCexpexclHT,gFCexpexclMHT,gFCexpexclHT,gFCexpexclMHT);
310 auterman 1.6 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 auterman 1.7 hexcl->GetXaxis()->SetTitleOffset(0.92);
316 auterman 1.6 hexcl->Draw("colz");
317     //gCLsExpExclHTp1->Draw("l");
318     //gCLsExpExclMHTp1->Draw("l");
319     //gCLsExpExclHTm1->Draw("l");
320     //gCLsExpExclMHTm1->Draw("l");
321     gCLsExp1Sigma->Draw("f");
322 auterman 1.1 //set old exclusion Limits
323 auterman 1.7 TGraph* Atlas = Atlas_m0_m12_tb3_obs();
324     Atlas->SetLineColor( 28 );
325 auterman 1.3 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 auterman 1.2 TGraphErrors* First = getObserved_NLO_tanBeta50();
335     TGraphErrors* Second = getExpected_NLO_tanBeta50();//getLO_jetMultis();
336     TGraphErrors* Third = getLO_tanBeta50();
337 auterman 1.1 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 auterman 1.5 //sFirst->SetLineWidth(3);
344 auterman 1.1 TSpline3 *sSecond = new TSpline3("sSecond",Second);
345     sSecond->SetLineColor(kBlue);
346     sSecond->SetLineStyle(2);
347 auterman 1.5 //sSecond->SetLineWidth(3);
348 auterman 1.1 TSpline3 *sThird = new TSpline3("sThird",Third);
349 auterman 1.5 sThird->SetLineColor(kBlue);
350 auterman 1.1 sThird->SetLineStyle(4);
351 auterman 1.5 //sThird->SetLineWidth(3);
352 auterman 1.7 //TEV_sn_d0_1->Draw("fsame");
353     //TEV_sn_d0_2->Draw("fsame"); //only for tb=3
354 auterman 1.1 LEP_ch->Draw("fsame");
355     LEP_sl->Draw("fsame");
356 auterman 1.7 //TEV_sg_cdf->Draw("fsame");
357     //TEV_sg_cdf->Draw("lsame");
358     //TEV_sg_d0->Draw("fsame");
359 auterman 1.1 sFirst->Draw("same");
360 auterman 1.7 //sSecond->Draw("same");
361     //sThird->Draw("same");
362 auterman 1.9 //Atlas->Draw("c,same");
363 auterman 1.1 TLatex b; b.SetTextSize(0.02); b.SetTextColor(1);
364 auterman 1.7 TLatex ms; ms.SetTextSize(0.025); ms.SetTextFont(42);//ms.SetTextColor(12);
365 auterman 1.9 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 auterman 1.7 //TEV_sg_cdf.SetLineColor(1);
370 auterman 1.9 //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 auterman 1.7 //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 auterman 1.9 //legexp->AddEntry(Atlas, "Atlas, #scale[0.8]{tan #beta=3}","l");
382 auterman 1.7 legexp->Draw();
383    
384 auterman 1.6 CLsObsNLO->Draw("l");
385 auterman 1.7 CLsObsLO->Draw("l");
386 auterman 1.6 CLsExpNLO->Draw("l");
387 auterman 1.7 //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 auterman 1.8 sqt.DrawLatex(327,245,"#font[92]{#tilde{q}(650)GeV}");
397 auterman 1.7 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 auterman 1.9 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 auterman 1.6 TGraph * expLeg = (TGraph*)CLsExpNLO->Clone();expLeg->SetFillStyle(gCLsExp1Sigma->GetFillStyle());expLeg->SetFillColor(gCLsExp1Sigma->GetFillColor());
413 auterman 1.9 leg->SetHeader("L_{int} = 36 pb^{-1}, #sqrt{s} = 7 TeV");
414 auterman 1.7 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 auterman 1.1 leg->Draw();
419     gPad->RedrawAxis();
420 auterman 1.7 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 auterman 1.1
436 auterman 1.8 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 auterman 1.9 ms.DrawLatex(490,458,"tan #beta=50, #mu>0, A_{0}=0");
443 auterman 1.8 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 auterman 1.9 //Atlas->Draw("c,same");
522     ms.DrawLatex(490,380,"tan #beta=50, #mu>0, A_{0}=0");
523 auterman 1.8 gCLsExpNoS1Sigma->Draw("lf,same");
524     sFirst->Draw("same");
525 auterman 1.9 //Atlas->Draw("c,same");
526 auterman 1.8 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 auterman 1.1 // 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 auterman 1.5 // 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 auterman 1.1
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 auterman 1.4 40,200,900,30,200,900);
660 auterman 1.1 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 auterman 1.4 40,200,900,30,200,900);
670 auterman 1.1 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 auterman 1.4 40,200,900,30,200,900);
678 auterman 1.1 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 auterman 1.4 40,200,900,30,200,900);
686 auterman 1.1 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 auterman 1.4 40,200,900,30,200,900);
696 auterman 1.1 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 auterman 1.4 40,200,900,30,200,900);
705 auterman 1.1 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 auterman 1.4 40,200,900,30,200,900);
715 auterman 1.1 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 auterman 1.4 40,200,900,30,200,900);
722 auterman 1.1 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 auterman 1.4 40,200,900,30,200,900);
734 auterman 1.1 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 auterman 1.4 40,200,900,30,200,900);
765 auterman 1.1 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 auterman 1.4 40,200,900,30,200,900);
774 auterman 1.5 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 auterman 1.4 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 auterman 1.5 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 auterman 1.4 TGraph * gCLsExp1Sigma_qg = MakeBand(gCLsExpExclHTp1_qg, gCLsExpExclHTm1_qg);
785 auterman 1.1 hexcl_qg->Draw("");
786 auterman 1.4 //
787     if (gCLsExp1Sigma_qg) gCLsExp1Sigma_qg->Draw("lf");
788     if (gobsexcl_qg) gobsexcl_qg->Draw("l");
789 auterman 1.1 if (gCLsObsExclHT_qg) gCLsObsExclHT_qg->Draw("l");
790 auterman 1.4 if (gexpexcl_qg) gexpexcl_qg->Draw("l");
791 auterman 1.5 if (gexpexcl_qg_LO) gexpexcl_qg_LO->Draw("l");
792 auterman 1.1 if (gCLsExpExclHT_qg) gCLsExpExclHT_qg->Draw("l");
793 auterman 1.5 if (gCLsExpExclHT_qg_LO) gCLsExpExclHT_qg_LO->Draw("l");
794 auterman 1.4 //
795 auterman 1.1 TLegend * leg_qg = new TLegend(0.45,0.78,0.85,0.89);
796 auterman 1.6 leg_qg->SetBorderSize(0);leg_qg->SetFillColor(0);leg->SetTextFont(42);
797 auterman 1.5 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 auterman 1.1 //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 auterman 1.4 //c1->SaveAs("plot_tb10.pdf");
809    
810    
811 auterman 1.8 /*
812 auterman 1.1 //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 auterman 1.8 */
871 auterman 1.1 //theApp.Run();
872     }
873    
874    
875     int main(int argc, char** argv)
876     {
877     return plot(argc, argv);
878     }