]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/macros/electrons/plotNPERates.C
major updates to plotting macros
[u/mrichter/AliRoot.git] / PWG4 / macros / electrons / plotNPERates.C
CommitLineData
e43a691d 1/////////////////////////////////////////////////\r
2//\r
3// Macro for plotting rates of identified Non-photonic electrons\r
4// for the EMCAL PPR\r
5//\r
6// J.L. Klay (Cal Poly)\r
7//\r
8/////////////////////////////////////////////////\r
9\r
e43a691d 10TLegend* leg;\r
11\r
37fea60e 12void plotNPERates(const char* which = "TTE") {\r
e43a691d 13\r
37fea60e 14 gROOT->LoadMacro("makeCombinedData.C");\r
15 makeData("data/scaled25Oct09/histosLHC08d6.root",\r
16 "data/scaled25Oct09/TOTALhistosscaled-LHC09b2-0.root",\r
17 "data/scaled25Oct09/histosscaledLHC09b4AODc.root",\r
18 "data/scaled25Oct09/histosWboson.root");\r
e43a691d 19\r
20 //define common legend\r
b7c6de3c 21 leg = new TLegend(0.5,0.6,0.9,0.9);\r
e43a691d 22 leg->SetTextSize(leg->GetTextSize()*1.2);\r
b7c6de3c 23 //leg->AddEntry(alltte,"All N-P e candidates","l");\r
24 leg->AddEntry(sumtte,"All N-P electrons","l");\r
37fea60e 25 leg->AddEntry(btte,"Bottom e","l");\r
26 leg->AddEntry(ctte,"Charm e","l");\r
27 leg->AddEntry(cbtte,"B-->C e","l");\r
28 leg->AddEntry(daltte,"Dalitz e","l");\r
29 leg->AddEntry(convtte,"Conversion e","l");\r
30 leg->AddEntry(wztte,"W Boson e","l");\r
e43a691d 31\r
32 gStyle->SetOptStat(0);\r
33 drawAnnualYields(which);\r
e43a691d 34 drawPtCutRates(which);\r
b1d8d367 35 drawCompareTruth();\r
e43a691d 36\r
37}\r
38\r
b7c6de3c 39void drawAnnualYields(char* which = "EMC") {\r
e43a691d 40\r
41 TCanvas* crates = new TCanvas();\r
42 crates->cd();\r
43 gPad->SetLogy();\r
44\r
b7c6de3c 45 if(strcmp(which,"EMC")==0) {\r
46 /*\r
47 allemc->SetXTitle("p_{T} (GeV/c)");\r
48 allemc->SetYTitle("Annual yield");\r
49 allemc->SetTitle("Annual yield of non-phot. electron candidates (EMCAL pid)");\r
50 allemc->Rebin(2); allemc->Scale(0.5);\r
51 */\r
52 sumemc->SetXTitle("p_{T} (GeV/c)");\r
53 sumemc->SetYTitle("Annual yield");\r
54 sumemc->SetTitle("Annual yield of non-phot. electrons (EMCAL pid)");\r
55 sumemc->Rebin(2); sumemc->Scale(0.5);\r
56\r
37fea60e 57 bemc->Rebin(2); bemc->Scale(0.5);\r
58 cemc->Rebin(2); cemc->Scale(0.5);\r
59 cbemc->Rebin(2); cbemc->Scale(0.5);\r
60 convemc->Rebin(2); convemc->Scale(0.5);\r
61 dalemc->Rebin(2); dalemc->Scale(0.5);\r
62 wzemc->Rebin(2); wzemc->Scale(0.5);\r
63 hemc->Rebin(2); hemc->Scale(0.5);\r
b7c6de3c 64 /*\r
b1d8d367 65 allemc->GetYaxis()->SetRangeUser(1.,2.e6);\r
66 allemc->GetXaxis()->SetRangeUser(10.,49.);\r
b7c6de3c 67 allemc->Draw();\r
68 */\r
b1d8d367 69 sumemc->GetYaxis()->SetRangeUser(1.,2.e6);\r
70 sumemc->GetXaxis()->SetRangeUser(10.,49.);\r
b7c6de3c 71 sumemc->Draw();\r
37fea60e 72 bemc->Draw("same");\r
73 cemc->Draw("same");\r
74 cbemc->Draw("same");\r
75 convemc->Draw("same");\r
76 dalemc->Draw("same");\r
77 wzemc->Draw("same");\r
78 //hemc->Draw("same");\r
b7c6de3c 79 leg->Draw();\r
80 crates->Print("NPERates_EMC_all.pdf");\r
81 }\r
e43a691d 82 if(strcmp(which,"TTE")==0) {\r
b7c6de3c 83 /* alltte->SetXTitle("p_{T} (GeV/c)");\r
e43a691d 84 alltte->SetYTitle("Annual yield");\r
b7c6de3c 85 alltte->SetTitle("Annual yield of non-phot. electron candidates (Tracking+EMCAL pid)");\r
86 alltte->Rebin(2); alltte->Scale(0.5);\r
87 */\r
88 sumtte->SetXTitle("p_{T} (GeV/c)");\r
89 sumtte->SetYTitle("Annual yield");\r
90 sumtte->SetTitle("Annual yield of non-phot. electrons (Tracking+EMCAL pid)");\r
91 sumtte->Rebin(2); sumtte->Scale(0.5);\r
37fea60e 92 btte->Rebin(2); btte->Scale(0.5);\r
93 ctte->Rebin(2); ctte->Scale(0.5);\r
94 cbtte->Rebin(2); cbtte->Scale(0.5);\r
95 convtte->Rebin(2); convtte->Scale(0.5);\r
96 daltte->Rebin(2); daltte->Scale(0.5);\r
97 wztte->Rebin(2); wztte->Scale(0.5);\r
98 htte->Rebin(2); htte->Scale(0.5);\r
b1d8d367 99 /* alltte->GetYaxis()->SetRangeUser(1.,2.e6);\r
100 alltte->GetXaxis()->SetRangeUser(10.,49.);\r
e43a691d 101 alltte->Draw();\r
b7c6de3c 102 */\r
b1d8d367 103 sumtte->GetYaxis()->SetRangeUser(1.,2.e6);\r
104 sumtte->GetXaxis()->SetRangeUser(10.,49.);\r
b7c6de3c 105 sumtte->Draw();\r
37fea60e 106 btte->Draw("same");\r
107 ctte->Draw("same");\r
108 cbtte->Draw("same");\r
109 convtte->Draw("same");\r
110 daltte->Draw("same");\r
111 wztte->Draw("same");\r
112 //htte->Draw("same");\r
e43a691d 113 leg->Draw();\r
b7c6de3c 114 crates->Print("NPERates_TTE_all.pdf");\r
e43a691d 115 }\r
116\r
e43a691d 117}\r
118\r
b7c6de3c 119void drawPtCutRates(char* which = "EMC") {\r
e43a691d 120\r
121 TCanvas* cptcut = new TCanvas();\r
122 cptcut->cd();\r
123 gPad->SetLogy();\r
b7c6de3c 124 if(strcmp(which,"EMC")==0) {\r
125 // TH1F* alleptcut = GetPtCutHisto(allemc);\r
126 TH1F* alleptcut = GetPtCutHisto(sumemc);\r
37fea60e 127 TH1F* beleptcut = GetPtCutHisto(bemc);\r
128 TH1F* celeptcut = GetPtCutHisto(cemc);\r
129 TH1F* cbeleptcut = GetPtCutHisto(cbemc);\r
130 TH1F* dalitzptcut = GetPtCutHisto(dalemc);\r
131 TH1F* convptcut = GetPtCutHisto(convemc);\r
132 TH1F* wzptcut = GetPtCutHisto(wzemc);\r
133 TH1F* misidptcut = GetPtCutHisto(hemc);\r
b7c6de3c 134 alleptcut->SetXTitle("p_{T}^{cut} (GeV/c)");\r
135 alleptcut->SetYTitle("Annual Yield in EMCAL for p_{T}>p_{T}^{cut}");\r
b1d8d367 136 alleptcut->SetTitle("Pb+Pb, 5.5 TeV reconstructed N-P electrons (EMCAL pid)");\r
137 alleptcut->GetXaxis()->SetRangeUser(10.,49.);\r
138 alleptcut->GetYaxis()->SetRangeUser(1,4.e5);\r
b7c6de3c 139 alleptcut->Draw();\r
140 beleptcut->Draw("same");\r
141 celeptcut->Draw("same");\r
142 cbeleptcut->Draw("same");\r
143 dalitzptcut->Draw("same");\r
144 convptcut->Draw("same");\r
145 wzptcut->Draw("same");\r
146 //misidptcut->Draw("same");\r
147 leg->Draw();\r
148 cptcut->Print("NPERates_EMC_ptcut_all.pdf");\r
149 }\r
e43a691d 150 if(strcmp(which,"TTE")==0) {\r
b7c6de3c 151 // TH1F* alleptcut = GetPtCutHisto(alltte);\r
152 TH1F* alleptcut = GetPtCutHisto(sumtte);\r
37fea60e 153 TH1F* beleptcut = GetPtCutHisto(btte);\r
154 TH1F* celeptcut = GetPtCutHisto(ctte);\r
155 TH1F* cbeleptcut = GetPtCutHisto(cbtte);\r
156 TH1F* dalitzptcut = GetPtCutHisto(daltte);\r
157 TH1F* convptcut = GetPtCutHisto(convtte);\r
158 TH1F* wzptcut = GetPtCutHisto(wztte);\r
159 TH1F* misidptcut = GetPtCutHisto(htte);\r
e43a691d 160 alleptcut->SetXTitle("p_{T}^{cut} (GeV/c)");\r
161 alleptcut->SetYTitle("Annual Yield in EMCAL for p_{T}>p_{T}^{cut}");\r
b1d8d367 162 alleptcut->SetTitle("Pb+Pb, 5.5 TeV reconstructed N-P electrons (Tracking+EMCAL pid)");\r
163 alleptcut->GetXaxis()->SetRangeUser(10.,49.);\r
164 alleptcut->GetYaxis()->SetRangeUser(1,4.e5);\r
e43a691d 165 alleptcut->Draw();\r
166 beleptcut->Draw("same");\r
167 celeptcut->Draw("same");\r
168 cbeleptcut->Draw("same");\r
169 dalitzptcut->Draw("same");\r
170 convptcut->Draw("same");\r
171 wzptcut->Draw("same");\r
b7c6de3c 172 //misidptcut->Draw("same");\r
e43a691d 173\r
174 leg->Draw();\r
b7c6de3c 175 cptcut->Print("NPERates_TTE_ptcut_all.pdf");\r
e43a691d 176 }\r
177\r
178}\r
179\r
b1d8d367 180TH1F* drawCompareTruth() {\r
37fea60e 181\r
182 TH1F* mctruth = (TH1F*)belemc->Clone();\r
183 mctruth->SetName("mctruth");\r
184 mctruth->Add(celemc);\r
185 mctruth->Add(candbmc);\r
186 mctruth->Add(wzmc);\r
187 mctruth->Rebin(2); mctruth->Scale(0.5);\r
b1d8d367 188\r
189 TFile* effic = new TFile("elec_eff.root");\r
190 TH1F* heff = (TH1F*)effic->Get("h111");\r
191\r
192 TH1F* hcorr = (TH1F*)sumHFemc->Clone();\r
193 hcorr->SetName("hcorr");\r
194 for(Int_t i = 1; i < heff->GetNbinsX(); i++) {\r
195 Double_t pt = heff->GetBinCenter(i);\r
196 Double_t eff = heff->GetBinContent(i); \r
197 Double_t corr = 0.;\r
198 if(eff > 0.) corr = hcorr->GetBinContent(i)/eff;\r
199 hcorr->SetBinContent(i,corr);\r
200 }\r
37fea60e 201 hcorr->Rebin(2); hcorr->Scale(0.5);\r
202 sumHFemc->Rebin(2); sumHFemc->Scale(0.5);\r
203\r
204 Double_t efinal = 0.258;\r
205 TGraphErrors* eerr = new TGraphErrors();\r
206 eerr->SetName("emcErr");\r
207 for(Int_t i = 1; i <= hcorr->GetNbinsX(); i++) {\r
208 eerr->SetPoint(i-1,hcorr->GetBinCenter(i),hcorr->GetBinContent(i));\r
209 eerr->SetPointError(i-1,0.,efinal*hcorr->GetBinContent(i));\r
210 }\r
211 eerr->SetFillColor(kRed-8);\r
212\r
b1d8d367 213 TCanvas* ctruth = new TCanvas();\r
214 ctruth->cd();\r
215 gPad->SetLogy();\r
216 mctruth->SetTitle("Comparison of MC and reco HF+W electrons");\r
217 mctruth->SetMarkerColor(kBlack); mctruth->SetLineColor(kBlack);\r
218 mctruth->SetYTitle("Annual yield in EMCAL dN/dp_{T} (GeV/c)^{-1}");\r
219 mctruth->SetXTitle("p_{T} (GeV/c)");\r
220 mctruth->GetXaxis()->SetRangeUser(10.,49.);\r
221 mctruth->Draw();\r
37fea60e 222 eerr->Draw("3same");\r
b1d8d367 223 hcorr->SetMarkerColor(kRed);\r
224 hcorr->SetLineColor(kRed);\r
225 hcorr->Draw("same");\r
226 sumHFemc->SetMarkerColor(kBlue);\r
227 sumHFemc->SetLineColor(kBlue);\r
228 sumHFemc->Draw("same");\r
229 TLegend *legy = new TLegend(0.3,0.7,0.9,0.9);\r
230 legy->AddEntry(mctruth,"MC HF+W electrons","l");\r
231 legy->AddEntry(sumHFemc,"Rec (EMCAL) HF+W electrons","l");\r
232 legy->AddEntry(hcorr,"Eff. corrected reco HF+W electrons","l");\r
37fea60e 233 legy->AddEntry(eerr,"Systematic uncertainty","f");\r
b1d8d367 234 legy->Draw();\r
235\r
236 ctruth->Print("NPERates_TruthComparison.pdf");\r
237\r
238}\r