]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/SPECTRA/macros/drawProtonResults.C
new macroee for train
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / macros / drawProtonResults.C
CommitLineData
735cc63d 1void drawProtonResults(const char* esdFileName) {
2 //Macro to visualize the proton ratio results
3 //It also visualizes the QA plots
790140ac 4 gStyle->SetPalette(1,0);
5 drawResults(esdFileName);
735cc63d 6 drawQAPlots(esdFileName);
7}
8
790140ac 9//___________________________________________________//
10void drawResults(const char* esdFileName) {
11 //Draws the main results from the ratio analysis
12 TFile *f = TFile::Open(esdFileName);
13 TList *analysisList = dynamic_cast<TList *>(f->Get("outputList"));
790140ac 14 TH2D *gHistYPtProtons = dynamic_cast<TH2D *>(analysisList->At(0));
15 TH2D *gHistYPtAntiProtons = dynamic_cast<TH2D *>(analysisList->At(1));
16
17 TCanvas *c2D = new TCanvas("c2D","eta-pT (anti)protons",0,0,700,400);
18 c2D->SetFillColor(10); c2D->SetHighLightColor(10); c2D->Divide(2,1);
19 c2D->cd(1); gHistYPtProtons->Draw("col");
20 c2D->cd(2); gHistYPtAntiProtons->Draw("col");
21}
22
735cc63d 23//___________________________________________________//
24void drawQAPlots(const char* esdFileName) {
25 //Draws the QA plots from the output of the analysis
26 //=========================================================//
27 //List of cuts
28 TFile *fCutFile = TFile::Open("ListOfCuts.root");
29 TCanvas *cListOfCuts = dynamic_cast<TCanvas *>(fCutFile->Get("cListOfCuts"));
30 cListOfCuts->Draw();
31
32 //=========================================================//
33 //QA plots
34 TFile *f = TFile::Open(esdFileName);
35 TList *listQA = dynamic_cast<TList *>(f->Get("outputQAList"));
36 TList *gListGlobalQA = dynamic_cast<TList *>(listQA->At(0));
37
38 //================QA plots================//
39 TList *fQA2DList = dynamic_cast<TList *>(gListGlobalQA->At(0));
37cb8683 40 //2D de/dx vs P
790140ac 41 TH2F *gHistdEdxP = dynamic_cast<TH2F *>(fQA2DList->At(0));
42 gHistdEdxP->SetStats(kFALSE);
43 TH2F *gHistProtonsdEdxP = dynamic_cast<TH2F *>(fQA2DList->At(1));
44 gHistProtonsdEdxP->SetStats(kFALSE);
37cb8683 45
46 //3D eta-phi-NPoints(dEdx)
47 TH3F *gHistEtaPhiTPCdEdxNPoints = dynamic_cast<TH3F *>(fQA2DList->At(2));
48 TH2D *gHistEtaPhi = dynamic_cast<TH2D *>gHistEtaPhiTPCdEdxNPoints->Project3D("yx");
49 gHistEtaPhi->SetStats(kFALSE);
50 TH2D *gHistEtaTPCdEdxNPoints = dynamic_cast<TH2D *>gHistEtaPhiTPCdEdxNPoints->Project3D("zx");
51 gHistEtaTPCdEdxNPoints->SetStats(kFALSE);
52 TH2D *gHistPhiTPCdEdxNPoints = dynamic_cast<TH2D *>gHistEtaPhiTPCdEdxNPoints->Project3D("zy");
53 gHistPhiTPCdEdxNPoints->SetStats(kFALSE);
54
55 //3D eta-phi-NPoints(dEdx): protons
56 TH3F *gHistProtonsEtaPhiTPCdEdxNPoints = dynamic_cast<TH3F *>(fQA2DList->At(3));
57 TH2D *gHistProtonsEtaPhi = dynamic_cast<TH2D *>gHistProtonsEtaPhiTPCdEdxNPoints->Project3D("yx");
58 gHistProtonsEtaPhi->SetStats(kFALSE);
59 TH2D *gHistProtonsEtaTPCdEdxNPoints = dynamic_cast<TH2D *>gHistProtonsEtaPhiTPCdEdxNPoints->Project3D("zx");
60 gHistProtonsEtaTPCdEdxNPoints->SetStats(kFALSE);
61 TH2D *gHistProtonsPhiTPCdEdxNPoints = dynamic_cast<TH2D *>gHistProtonsEtaPhiTPCdEdxNPoints->Project3D("zy");
62 gHistProtonsPhiTPCdEdxNPoints->SetStats(kFALSE);
63
64 //3D eta-phi-NPoints
65 TH3F *gHistEtaPhiTPCNPoints = dynamic_cast<TH3F *>(fQA2DList->At(4));
66 TH2D *gHistEtaPhi = dynamic_cast<TH2D *>gHistEtaPhiTPCNPoints->Project3D("yx");
67 gHistEtaPhi->SetStats(kFALSE);
68 TH2D *gHistEtaTPCNPoints = dynamic_cast<TH2D *>gHistEtaPhiTPCNPoints->Project3D("zx");
69 gHistEtaTPCNPoints->SetStats(kFALSE);
70 TH2D *gHistPhiTPCNPoints = dynamic_cast<TH2D *>gHistEtaPhiTPCNPoints->Project3D("zy");
71 gHistPhiTPCNPoints->SetStats(kFALSE);
72
73 //3D eta-phi-NPoints: protons
74 TH3F *gHistProtonsEtaPhiTPCNPoints = dynamic_cast<TH3F *>(fQA2DList->At(5));
75 TH2D *gHistProtonsEtaPhi = dynamic_cast<TH2D *>gHistProtonsEtaPhiTPCNPoints->Project3D("yx");
76 gHistProtonsEtaPhi->SetStats(kFALSE);
77 TH2D *gHistProtonsEtaTPCNPoints = dynamic_cast<TH2D *>gHistProtonsEtaPhiTPCNPoints->Project3D("zx");
78 gHistProtonsEtaTPCNPoints->SetStats(kFALSE);
79 TH2D *gHistProtonsPhiTPCNPoints = dynamic_cast<TH2D *>gHistProtonsEtaPhiTPCNPoints->Project3D("zy");
80 gHistProtonsPhiTPCNPoints->SetStats(kFALSE);
81
82 //3D pt-phi-NPoints(dEdx)
83 TH3F *gHistPtPhiTPCdEdxNPoints = dynamic_cast<TH3F *>(fQA2DList->At(6));
84 TH2D *gHistPtPhi = dynamic_cast<TH2D *>gHistPtPhiTPCdEdxNPoints->Project3D("yx");
85 gHistPtPhi->SetStats(kFALSE);
86 TH2D *gHistPtTPCdEdxNPoints = dynamic_cast<TH2D *>gHistPtPhiTPCdEdxNPoints->Project3D("zx");
87 gHistPtTPCdEdxNPoints->SetStats(kFALSE);
88 TH2D *gHistPhiTPCdEdxNPoints = dynamic_cast<TH2D *>gHistPtPhiTPCdEdxNPoints->Project3D("zy");
89 gHistPhiTPCdEdxNPoints->SetStats(kFALSE);
90
91 //3D pt-phi-NPoints(dEdx): protons
92 TH3F *gHistProtonsPtPhiTPCdEdxNPoints = dynamic_cast<TH3F *>(fQA2DList->At(7));
93 TH2D *gHistProtonsPtPhi = dynamic_cast<TH2D *>gHistProtonsPtPhiTPCdEdxNPoints->Project3D("yx");
94 gHistProtonsPtPhi->SetStats(kFALSE);
95 TH2D *gHistProtonsPtTPCdEdxNPoints = dynamic_cast<TH2D *>gHistProtonsPtPhiTPCdEdxNPoints->Project3D("zx");
96 gHistProtonsPtTPCdEdxNPoints->SetStats(kFALSE);
97 TH2D *gHistProtonsPhiTPCdEdxNPoints = dynamic_cast<TH2D *>gHistProtonsPtPhiTPCdEdxNPoints->Project3D("zy");
98 gHistProtonsPhiTPCdEdxNPoints->SetStats(kFALSE);
99
100 //3D pt-phi-NPoints
101 TH3F *gHistPtPhiTPCNPoints = dynamic_cast<TH3F *>(fQA2DList->At(8));
102 TH2D *gHistPtPhi = dynamic_cast<TH2D *>gHistPtPhiTPCNPoints->Project3D("yx");
103 gHistPtPhi->SetStats(kFALSE);
104 TH2D *gHistPtTPCNPoints = dynamic_cast<TH2D *>gHistPtPhiTPCNPoints->Project3D("zx");
105 gHistPtTPCNPoints->SetStats(kFALSE);
106 TH2D *gHistPhiTPCNPoints = dynamic_cast<TH2D *>gHistPtPhiTPCNPoints->Project3D("zy");
107 gHistPhiTPCNPoints->SetStats(kFALSE);
108
109 //3D pt-phi-NPoints: protons
110 TH3F *gHistProtonsPtPhiTPCNPoints = dynamic_cast<TH3F *>(fQA2DList->At(9));
111 TH2D *gHistProtonsPtPhi = dynamic_cast<TH2D *>gHistProtonsPtPhiTPCNPoints->Project3D("yx");
112 gHistProtonsPtPhi->SetStats(kFALSE);
113 TH2D *gHistProtonsPtTPCNPoints = dynamic_cast<TH2D *>gHistProtonsPtPhiTPCNPoints->Project3D("zx");
114 gHistProtonsPtTPCNPoints->SetStats(kFALSE);
115 TH2D *gHistProtonsPhiTPCNPoints = dynamic_cast<TH2D *>gHistProtonsPtPhiTPCNPoints->Project3D("zy");
116 gHistProtonsPhiTPCNPoints->SetStats(kFALSE);
117
118
119 //__________________________________________________//
790140ac 120 TCanvas *cdEdx = new TCanvas("cdEdx","dE/dx (TPC)",0,0,700,400);
121 cdEdx->SetFillColor(10); cdEdx->SetHighLightColor(10); cdEdx->Divide(2,1);
122 cdEdx->cd(1)->SetLogx(); gHistdEdxP->Draw("col");
123 cdEdx->cd(2)->SetLogx(); gHistProtonsdEdxP->Draw("col");
735cc63d 124
37cb8683 125 TCanvas *cEtaPhiNPointsdEdx = new TCanvas("cEtaPhiNPointsdEdx",
126 "eta-phi-NPoints(dE/dx)",
127 0,0,900,600);
128 cEtaPhiNPointsdEdx->SetFillColor(10);
129 cEtaPhiNPointsdEdx->SetHighLightColor(10); cEtaPhiNPointsdEdx->Divide(3,2);
130 cEtaPhiNPointsdEdx->cd(1); gHistEtaPhi->Draw("col");
131 cEtaPhiNPointsdEdx->cd(2); gHistEtaTPCdEdxNPoints->Draw("col");
132 cEtaPhiNPointsdEdx->cd(3); gHistPhiTPCdEdxNPoints->Draw("col");
133 cEtaPhiNPointsdEdx->cd(4); gHistProtonsEtaPhi->Draw("col");
134 cEtaPhiNPointsdEdx->cd(5); gHistProtonsEtaTPCdEdxNPoints->Draw("col");
135 cEtaPhiNPointsdEdx->cd(6); gHistProtonsPhiTPCdEdxNPoints->Draw("col");
136
137 TCanvas *cEtaPhiNPoints = new TCanvas("cEtaPhiNPoints",
138 "eta-phi-NPoints",
139 0,0,900,600);
140 cEtaPhiNPoints->SetFillColor(10);
141 cEtaPhiNPoints->SetHighLightColor(10); cEtaPhiNPoints->Divide(3,2);
142 cEtaPhiNPoints->cd(1); gHistEtaPhi->Draw("col");
143 cEtaPhiNPoints->cd(2); gHistEtaTPCNPoints->Draw("col");
144 cEtaPhiNPoints->cd(3); gHistPhiTPCNPoints->Draw("col");
145 cEtaPhiNPoints->cd(4); gHistProtonsEtaPhi->Draw("col");
146 cEtaPhiNPoints->cd(5); gHistProtonsEtaTPCNPoints->Draw("col");
147 cEtaPhiNPoints->cd(6); gHistProtonsPhiTPCNPoints->Draw("col");
148
149 TCanvas *cPtPhiNPointsdEdx = new TCanvas("cPtPhiNPointsdEdx",
150 "pt-phi-NPoints(dE/dx)",
151 0,0,900,600);
152 cPtPhiNPointsdEdx->SetFillColor(10);
153 cPtPhiNPointsdEdx->SetHighLightColor(10); cPtPhiNPointsdEdx->Divide(3,2);
154 cPtPhiNPointsdEdx->cd(1); gHistPtPhi->Draw("col");
155 cPtPhiNPointsdEdx->cd(2); gHistPtTPCdEdxNPoints->Draw("col");
156 cPtPhiNPointsdEdx->cd(3); gHistPhiTPCdEdxNPoints->Draw("col");
157 cPtPhiNPointsdEdx->cd(4); gHistProtonsPtPhi->Draw("col");
158 cPtPhiNPointsdEdx->cd(5); gHistProtonsPtTPCdEdxNPoints->Draw("col");
159 cPtPhiNPointsdEdx->cd(6); gHistProtonsPhiTPCdEdxNPoints->Draw("col");
160
161 TCanvas *cPtPhiNPoints = new TCanvas("cPtPhiNPoints",
162 "pt-phi-NPoints",
163 0,0,900,600);
164 cPtPhiNPoints->SetFillColor(10);
165 cPtPhiNPoints->SetHighLightColor(10); cPtPhiNPoints->Divide(3,2);
166 cPtPhiNPoints->cd(1); gHistPtPhi->Draw("col");
167 cPtPhiNPoints->cd(2); gHistPtTPCNPoints->Draw("col");
168 cPtPhiNPoints->cd(3); gHistPhiTPCNPoints->Draw("col");
169 cPtPhiNPoints->cd(4); gHistProtonsPtPhi->Draw("col");
170 cPtPhiNPoints->cd(5); gHistProtonsPtTPCNPoints->Draw("col");
171 cPtPhiNPoints->cd(6); gHistProtonsPhiTPCNPoints->Draw("col");
172
735cc63d 173 //Accepted protons
174 TList *fQAProtonsAcceptedList = dynamic_cast<TList *>(gListGlobalQA->At(1));
175 TH1F *gProtonsITSClustersPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(0));
176 TH1F *gProtonsChi2PerClusterITSPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(1));
177 TH1F *gProtonsTPCClustersPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(2));
178 TH1F *gProtonsChi2PerClusterTPCPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(3));
179 TH1F *gProtonsExtCov11Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(4));
180 TH1F *gProtonsExtCov22Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(5));
181 TH1F *gProtonsExtCov33Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(6));
182 TH1F *gProtonsExtCov44Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(7));
183 TH1F *gProtonsExtCov55Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(8));
184 TH1F *gProtonsSigmaToVertexPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(9));
185 TH1F *gProtonsSigmaToVertexTPCPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(10));
186 TH1F *gProtonsDCAXYPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(11));
187 TH1F *gProtonsDCAXYTPCPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(12));
188 TH1F *gProtonsDCAZPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(13));
189 TH1F *gProtonsDCAZTPCPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(14));
190 TH1F *gProtonsConstrainChi2Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(15));
191 TH1F *gProtonsITSRefitPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(16));
192 TH1F *gProtonsTPCRefitPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(17));
193 TH1F *gProtonsESDpidPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(18));
194 TH1F *gProtonsTPCpidPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(19));
195 TH1F *gProtonsPointOnITSLayer1Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(20));
196 TH1F *gProtonsPointOnITSLayer2Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(21));
197 TH1F *gProtonsPointOnITSLayer3Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(22));
198 TH1F *gProtonsPointOnITSLayer4Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(23));
199 TH1F *gProtonsPointOnITSLayer5Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(24));
200 TH1F *gProtonsPointOnITSLayer6Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(25));
201 TH1F *gProtonsNumberOfTPCdEdxPointsPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(26));
202
203 //Rejected protons
204 TList *fQAProtonsRejectedList = dynamic_cast<TList *>(gListGlobalQA->At(2));
205 TH1F *gProtonsITSClustersReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(0));
206 TH1F *gProtonsChi2PerClusterITSReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(1));
207 TH1F *gProtonsTPCClustersReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(2));
208 TH1F *gProtonsChi2PerClusterTPCReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(3));
209 TH1F *gProtonsExtCov11Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(4));
210 TH1F *gProtonsExtCov22Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(5));
211 TH1F *gProtonsExtCov33Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(6));
212 TH1F *gProtonsExtCov44Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(7));
213 TH1F *gProtonsExtCov55Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(8));
214 TH1F *gProtonsSigmaToVertexReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(9));
215 TH1F *gProtonsSigmaToVertexTPCReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(10));
216 TH1F *gProtonsDCAXYReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(11));
217 TH1F *gProtonsDCAXYTPCReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(12));
218 TH1F *gProtonsDCAZReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(13));
219 TH1F *gProtonsDCAZTPCReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(14));
220 TH1F *gProtonsConstrainChi2Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(15));
221 TH1F *gProtonsITSRefitReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(16));
222 TH1F *gProtonsTPCRefitReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(17));
223 TH1F *gProtonsESDpidReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(18));
224 TH1F *gProtonsTPCpidReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(19));
225 TH1F *gProtonsPointOnITSLayer1Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(20));
226 TH1F *gProtonsPointOnITSLayer2Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(21));
227 TH1F *gProtonsPointOnITSLayer3Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(22));
228 TH1F *gProtonsPointOnITSLayer4Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(23));
229 TH1F *gProtonsPointOnITSLayer5Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(24));
230 TH1F *gProtonsPointOnITSLayer6Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(25));
231 TH1F *gProtonsNumberOfTPCdEdxPointsReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(26));
232
233 //Accepted antiprotons
234 TList *fQAAntiProtonsAcceptedList = dynamic_cast<TList *>(gListGlobalQA->At(3));
235 TH1F *gAntiProtonsITSClustersPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(0));
236 TH1F *gAntiProtonsChi2PerClusterITSPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(1));
237 TH1F *gAntiProtonsTPCClustersPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(2));
238 TH1F *gAntiProtonsChi2PerClusterTPCPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(3));
239 TH1F *gAntiProtonsExtCov11Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(4));
240 TH1F *gAntiProtonsExtCov22Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(5));
241 TH1F *gAntiProtonsExtCov33Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(6));
242 TH1F *gAntiProtonsExtCov44Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(7));
243 TH1F *gAntiProtonsExtCov55Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(8));
244 TH1F *gAntiProtonsSigmaToVertexPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(9));
245 TH1F *gAntiProtonsSigmaToVertexTPCPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(10));
246 TH1F *gAntiProtonsDCAXYPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(11));
247 TH1F *gAntiProtonsDCAXYTPCPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(12));
248 TH1F *gAntiProtonsDCAZPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(13));
249 TH1F *gAntiProtonsDCAZTPCPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(14));
250 TH1F *gAntiProtonsConstrainChi2Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(15));
251 TH1F *gAntiProtonsITSRefitPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(16));
252 TH1F *gAntiProtonsTPCRefitPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(17));
253 TH1F *gAntiProtonsESDpidPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(18));
254 TH1F *gAntiProtonsTPCpidPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(19));
255 TH1F *gAntiProtonsPointOnITSLayer1Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(20));
256 TH1F *gAntiProtonsPointOnITSLayer2Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(21));
257 TH1F *gAntiProtonsPointOnITSLayer3Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(22));
258 TH1F *gAntiProtonsPointOnITSLayer4Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(23));
259 TH1F *gAntiProtonsPointOnITSLayer5Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(24));
260 TH1F *gAntiProtonsPointOnITSLayer6Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(25));
261 TH1F *gAntiProtonsNumberOfTPCdEdxPointsPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(26));
262
263 //Rejected antiprotons
264 TList *fQAAntiProtonsRejectedList = dynamic_cast<TList *>(gListGlobalQA->At(4));
265 TH1F *gAntiProtonsITSClustersReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(0));
266 TH1F *gAntiProtonsChi2PerClusterITSReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(1));
267 TH1F *gAntiProtonsTPCClustersReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(2));
268 TH1F *gAntiProtonsChi2PerClusterTPCReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(3));
269 TH1F *gAntiProtonsExtCov11Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(4));
270 TH1F *gAntiProtonsExtCov22Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(5));
271 TH1F *gAntiProtonsExtCov33Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(6));
272 TH1F *gAntiProtonsExtCov44Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(7));
273 TH1F *gAntiProtonsExtCov55Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(8));
274 TH1F *gAntiProtonsSigmaToVertexReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(9));
275 TH1F *gAntiProtonsSigmaToVertexTPCReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(10));
276 TH1F *gAntiProtonsDCAXYReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(11));
277 TH1F *gAntiProtonsDCAXYTPCReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(12));
278 TH1F *gAntiProtonsDCAZReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(13));
279 TH1F *gAntiProtonsDCAZTPCReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(14));
280 TH1F *gAntiProtonsConstrainChi2Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(15));
281 TH1F *gAntiProtonsITSRefitReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(16));
282 TH1F *gAntiProtonsTPCRefitReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(17));
283 TH1F *gAntiProtonsESDpidReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(18));
284 TH1F *gAntiProtonsTPCpidReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(19));
285 TH1F *gAntiProtonsPointOnITSLayer1Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(20));
286 TH1F *gAntiProtonsPointOnITSLayer2Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(21));
287 TH1F *gAntiProtonsPointOnITSLayer3Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(22));
288 TH1F *gAntiProtonsPointOnITSLayer4Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(23));
289 TH1F *gAntiProtonsPointOnITSLayer5Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(24));
290 TH1F *gAntiProtonsPointOnITSLayer6Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(25));
291 TH1F *gAntiProtonsNumberOfTPCdEdxPointsReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(26));
292
293 //__________________________________________________//
790140ac 294 TCanvas *c1 = new TCanvas("c1","ITS clusters",0,0,600,400);
735cc63d 295 c1->SetFillColor(10); c1->SetHighLightColor(10);
296 c1->Divide(2,1);
297 c1->cd(1); gProtonsITSClustersPass->Draw();
298 gProtonsITSClustersReject->Draw("same");
299 c1->cd(2); gAntiProtonsITSClustersPass->Draw();
300 gAntiProtonsITSClustersReject->Draw("same");
301
790140ac 302 TCanvas *c2 = new TCanvas("c2","chi^2 per ITS cluster",0,100,600,400);
735cc63d 303 c2->SetFillColor(10); c2->SetHighLightColor(10);
304 c2->Divide(2,1);
305 c2->cd(1); gProtonsChi2PerClusterITSPass->Draw();
306 gProtonsChi2PerClusterITSReject->Draw("same");
307 c2->cd(2); gAntiProtonsChi2PerClusterITSPass->Draw();
308 gAntiProtonsChi2PerClusterITSReject->Draw("same");
309
790140ac 310 TCanvas *c3 = new TCanvas("c3","TPC clusters",0,200,600,400);
735cc63d 311 c3->SetFillColor(10); c3->SetHighLightColor(10);
312 c3->Divide(2,1);
313 c3->cd(1); gProtonsTPCClustersPass->Draw();
314 gProtonsTPCClustersReject->Draw("same");
315 c3->cd(2); gAntiProtonsTPCClustersPass->Draw();
316 gAntiProtonsTPCClustersReject->Draw("same");
317
790140ac 318 TCanvas *c4 = new TCanvas("c4","chi^2 per TPC cluster",0,300,600,400);
735cc63d 319 c4->SetFillColor(10); c4->SetHighLightColor(10);
320 c4->Divide(2,1);
321 c4->cd(1); gProtonsChi2PerClusterTPCPass->Draw();
322 gProtonsChi2PerClusterTPCReject->Draw("same");
323 c4->cd(2); gAntiProtonsChi2PerClusterTPCPass->Draw();
324 gAntiProtonsChi2PerClusterTPCReject->Draw("same");
325
37cb8683 326 if(gProtonsExtCov11Pass->GetEntries() != 0) {
327 TCanvas *c5 = new TCanvas("c5","Cov11",0,400,600,400);
328 c5->SetFillColor(10); c5->SetHighLightColor(10);
329 c5->Divide(2,1);
330 c5->cd(1)->SetLogy(); gProtonsExtCov11Pass->Draw();
331 gProtonsExtCov11Reject->Draw("same");
332 c5->cd(2)->SetLogy(); gAntiProtonsExtCov11Pass->Draw();
333 gAntiProtonsExtCov11Reject->Draw("same");
334 }
335
336 if(gProtonsExtCov11Pass->GetEntries() != 0) {
337 TCanvas *c6 = new TCanvas("c6","Cov22",0,500,600,400);
338 c6->SetFillColor(10); c6->SetHighLightColor(10);
339 c6->Divide(2,1);
340 c6->cd(1)->SetLogy(); gProtonsExtCov22Pass->Draw();
341 gProtonsExtCov22Reject->Draw("same");
342 c6->cd(2)->SetLogy(); gAntiProtonsExtCov22Pass->Draw();
343 gAntiProtonsExtCov22Reject->Draw("same");
344 }
345
346 if(gProtonsExtCov11Pass->GetEntries() != 0) {
347 TCanvas *c7 = new TCanvas("c7","Cov33",600,0,600,400);
348 c7->SetFillColor(10); c7->SetHighLightColor(10);
349 c7->Divide(2,1);
350 c7->cd(1)->SetLogy(); gProtonsExtCov33Pass->Draw();
351 gProtonsExtCov33Reject->Draw("same");
352 c7->cd(2)->SetLogy(); gAntiProtonsExtCov33Pass->Draw();
353 gAntiProtonsExtCov33Reject->Draw("same");
354 }
355
356 if(gProtonsExtCov11Pass->GetEntries() != 0) {
357 TCanvas *c8 = new TCanvas("c8","Cov44",600,100,600,400);
358 c8->SetFillColor(10); c8->SetHighLightColor(10);
359 c8->Divide(2,1);
360 c8->cd(1)->SetLogy(); gProtonsExtCov44Pass->Draw();
361 gProtonsExtCov44Reject->Draw("same");
362 c8->cd(2)->SetLogy(); gAntiProtonsExtCov44Pass->Draw();
363 gAntiProtonsExtCov44Reject->Draw("same");
364 }
365
366 if(gProtonsExtCov11Pass->GetEntries() != 0) {
367 TCanvas *c9 = new TCanvas("c9","Cov55",600,200,600,400);
368 c9->SetFillColor(10); c9->SetHighLightColor(10);
369 c9->Divide(2,1);
370 c9->cd(1)->SetLogy(); gProtonsExtCov55Pass->Draw();
371 gProtonsExtCov55Reject->Draw("same");
372 c9->cd(2)->SetLogy(); gAntiProtonsExtCov55Pass->Draw();
373 gAntiProtonsExtCov55Reject->Draw("same");
374 }
375
376 if(gProtonsSigmaToVertexPass->GetEntries() != 0) {
377 TCanvas *c10 = new TCanvas("c10","N-sigma to Vertex",600,300,600,400);
378 c10->SetFillColor(10); c10->SetHighLightColor(10);
379 c10->Divide(2,1);
380 c10->cd(1)->SetLogy(); gProtonsSigmaToVertexPass->Draw();
381 gProtonsSigmaToVertexReject->Draw("same");
382 c10->cd(2)->SetLogy(); gAntiProtonsSigmaToVertexPass->Draw();
383 gAntiProtonsSigmaToVertexReject->Draw("same");
384 }
385
386 if(gProtonsSigmaToVertexTPCPass->GetEntries() != 0) {
387 TCanvas *c11 = new TCanvas("c11","N-sigma to Vertex (TPC)",600,400,600,400);
388 c11->SetFillColor(10); c11->SetHighLightColor(10);
389 c11->Divide(2,1);
390 c11->cd(1)->SetLogy(); gProtonsSigmaToVertexTPCPass->Draw();
391 gProtonsSigmaToVertexTPCReject->Draw("same");
392 c11->cd(2)->SetLogy(); gAntiProtonsSigmaToVertexTPCPass->Draw();
393 gAntiProtonsSigmaToVertexTPCReject->Draw("same");
394 }
395
396 if(gProtonsDCAXYPass->GetEntries() != 0) {
397 TCanvas *c12 = new TCanvas("c12","dca(xy)",600,500,600,400);
398 c12->SetFillColor(10); c12->SetHighLightColor(10);
399 c12->Divide(2,1);
400 c12->cd(1)->SetLogy(); gProtonsDCAXYPass->Draw();
401 gProtonsDCAXYReject->Draw("same");
402 c12->cd(2)->SetLogy(); gAntiProtonsDCAXYPass->Draw();
403 gAntiProtonsDCAXYReject->Draw("same");
404 }
405
406 if(gProtonsDCAXYTPCPass->GetEntries() != 0) {
407 TCanvas *c13 = new TCanvas("c13","dca(xy - TPC)",1200,0,600,400);
408 c13->SetFillColor(10); c13->SetHighLightColor(10);
409 c13->Divide(2,1);
410 c13->cd(1)->SetLogy(); gProtonsDCAXYTPCPass->Draw();
411 gProtonsDCAXYTPCReject->Draw("same");
412 c13->cd(2)->SetLogy(); gAntiProtonsDCAXYTPCPass->Draw();
413 gAntiProtonsDCAXYTPCReject->Draw("same");
414 }
415
416 if(gProtonsDCAZPass->GetEntries() != 0) {
417 TCanvas *c14 = new TCanvas("c14","dca(z)",1200,100,600,400);
418 c14->SetFillColor(10); c14->SetHighLightColor(10);
419 c14->Divide(2,1);
420 c14->cd(1)->SetLogy(); gProtonsDCAZPass->Draw();
421 gProtonsDCAZReject->Draw("same");
422 c14->cd(2)->SetLogy(); gAntiProtonsDCAZPass->Draw();
423 gAntiProtonsDCAZReject->Draw("same");
424 }
425
426 if(gProtonsDCAZTPCPass->GetEntries() != 0) {
427 TCanvas *c15 = new TCanvas("c15","dca(z - TPC)",1200,200,600,400);
428 c15->SetFillColor(10); c15->SetHighLightColor(10);
429 c15->Divide(2,1);
430 c15->cd(1)->SetLogy(); gProtonsDCAZTPCPass->Draw();
431 gProtonsDCAZTPCReject->Draw("same");
432 c15->cd(2)->SetLogy(); gAntiProtonsDCAZTPCPass->Draw();
433 gAntiProtonsDCAZTPCReject->Draw("same");
434 }
735cc63d 435
790140ac 436 TCanvas *c16 = new TCanvas("c16","TPC clusters (dE/dx)",1200,300,600,400);
735cc63d 437 c16->SetFillColor(10); c16->SetHighLightColor(10);
438 c16->Divide(2,1);
439 c16->cd(1); gProtonsNumberOfTPCdEdxPointsPass->Draw();
440 gProtonsNumberOfTPCdEdxPointsReject->Draw("same");
441 c16->cd(2); gAntiProtonsNumberOfTPCdEdxPointsPass->Draw();
442 gAntiProtonsNumberOfTPCdEdxPointsReject->Draw("same");
443
444 //================Vertex QA================//
445 TList *gListVertexQA = dynamic_cast<TList *>(listQA->At(1));
446 TH1F *gHistVx = dynamic_cast<TH1F *>(gListVertexQA->At(0));
447 TH1F *gHistVxAccepted = dynamic_cast<TH1F *>(gListVertexQA->At(1));
448 gHistVxAccepted->SetFillColor(10);
449 TH1F *gHistVy = dynamic_cast<TH1F *>(gListVertexQA->At(2));
450 TH1F *gHistVyAccepted = dynamic_cast<TH1F *>(gListVertexQA->At(3));
451 gHistVyAccepted->SetFillColor(10);
452 TH1F *gHistVz = dynamic_cast<TH1F *>(gListVertexQA->At(4));
453 TH1F *gHistVzAccepted = dynamic_cast<TH1F *>(gListVertexQA->At(5));
454 gHistVzAccepted->SetFillColor(10);
455
790140ac 456 TCanvas *cVertex = new TCanvas("cVertex","Vertex QA",0,0,900,400);
735cc63d 457 cVertex->SetFillColor(10); cVertex->SetHighLightColor(10);
458 cVertex->Divide(3,1);
790140ac 459 cVertex->cd(1)->SetLogy(); gHistVx->Draw(); gHistVxAccepted->Draw("same");
460 cVertex->cd(2)->SetLogy(); gHistVy->Draw(); gHistVyAccepted->Draw("same");
461 cVertex->cd(3)->SetLogy(); gHistVz->Draw(); gHistVzAccepted->Draw("same");
735cc63d 462}
463