]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/SPECTRA/macros/drawProtonResults.C
Adding the QA plots for real data
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / macros / drawProtonResults.C
1 void drawProtonResults(const char* esdFileName) {
2   //Macro to visualize the proton ratio results
3   //It also visualizes the QA plots
4   drawQAPlots(esdFileName);
5 }
6
7 //___________________________________________________//
8 void drawQAPlots(const char* esdFileName) {
9   //Draws the QA plots from the output of the analysis
10   //=========================================================//
11   //List of cuts
12   TFile *fCutFile = TFile::Open("ListOfCuts.root");
13   TCanvas *cListOfCuts = dynamic_cast<TCanvas *>(fCutFile->Get("cListOfCuts"));
14   cListOfCuts->Draw();
15
16   //=========================================================//
17   //QA plots
18   TFile *f = TFile::Open(esdFileName);
19   TList *listQA = dynamic_cast<TList *>(f->Get("outputQAList"));
20   TList *gListGlobalQA = dynamic_cast<TList *>(listQA->At(0));
21
22   //================QA plots================//
23   TList *fQA2DList = dynamic_cast<TList *>(gListGlobalQA->At(0));
24
25   //Accepted protons
26   TList *fQAProtonsAcceptedList = dynamic_cast<TList *>(gListGlobalQA->At(1));
27   TH1F *gProtonsITSClustersPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(0));
28   TH1F *gProtonsChi2PerClusterITSPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(1));
29   TH1F *gProtonsTPCClustersPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(2));
30   TH1F *gProtonsChi2PerClusterTPCPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(3));
31   TH1F *gProtonsExtCov11Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(4));
32   TH1F *gProtonsExtCov22Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(5));
33   TH1F *gProtonsExtCov33Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(6));
34   TH1F *gProtonsExtCov44Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(7));
35   TH1F *gProtonsExtCov55Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(8));
36   TH1F *gProtonsSigmaToVertexPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(9));
37   TH1F *gProtonsSigmaToVertexTPCPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(10));
38   TH1F *gProtonsDCAXYPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(11));
39   TH1F *gProtonsDCAXYTPCPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(12));
40   TH1F *gProtonsDCAZPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(13));
41   TH1F *gProtonsDCAZTPCPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(14));
42   TH1F *gProtonsConstrainChi2Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(15));
43   TH1F *gProtonsITSRefitPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(16));
44   TH1F *gProtonsTPCRefitPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(17));
45   TH1F *gProtonsESDpidPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(18));
46   TH1F *gProtonsTPCpidPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(19));
47   TH1F *gProtonsPointOnITSLayer1Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(20));
48   TH1F *gProtonsPointOnITSLayer2Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(21));
49   TH1F *gProtonsPointOnITSLayer3Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(22));
50   TH1F *gProtonsPointOnITSLayer4Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(23));
51   TH1F *gProtonsPointOnITSLayer5Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(24));
52   TH1F *gProtonsPointOnITSLayer6Pass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(25));
53   TH1F *gProtonsNumberOfTPCdEdxPointsPass = dynamic_cast<TH1F *>(fQAProtonsAcceptedList->At(26));
54
55   //Rejected protons
56   TList *fQAProtonsRejectedList = dynamic_cast<TList *>(gListGlobalQA->At(2));
57   TH1F *gProtonsITSClustersReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(0));
58   TH1F *gProtonsChi2PerClusterITSReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(1));
59   TH1F *gProtonsTPCClustersReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(2));
60   TH1F *gProtonsChi2PerClusterTPCReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(3));
61   TH1F *gProtonsExtCov11Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(4));
62   TH1F *gProtonsExtCov22Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(5));
63   TH1F *gProtonsExtCov33Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(6));
64   TH1F *gProtonsExtCov44Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(7));
65   TH1F *gProtonsExtCov55Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(8));
66   TH1F *gProtonsSigmaToVertexReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(9));
67   TH1F *gProtonsSigmaToVertexTPCReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(10));
68   TH1F *gProtonsDCAXYReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(11));
69   TH1F *gProtonsDCAXYTPCReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(12));
70   TH1F *gProtonsDCAZReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(13));
71   TH1F *gProtonsDCAZTPCReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(14));
72   TH1F *gProtonsConstrainChi2Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(15));
73   TH1F *gProtonsITSRefitReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(16));
74   TH1F *gProtonsTPCRefitReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(17));
75   TH1F *gProtonsESDpidReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(18));
76   TH1F *gProtonsTPCpidReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(19));
77   TH1F *gProtonsPointOnITSLayer1Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(20));
78   TH1F *gProtonsPointOnITSLayer2Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(21));
79   TH1F *gProtonsPointOnITSLayer3Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(22));
80   TH1F *gProtonsPointOnITSLayer4Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(23));
81   TH1F *gProtonsPointOnITSLayer5Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(24));
82   TH1F *gProtonsPointOnITSLayer6Reject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(25));
83   TH1F *gProtonsNumberOfTPCdEdxPointsReject = dynamic_cast<TH1F *>(fQAProtonsRejectedList->At(26));
84
85   //Accepted antiprotons
86   TList *fQAAntiProtonsAcceptedList = dynamic_cast<TList *>(gListGlobalQA->At(3));
87   TH1F *gAntiProtonsITSClustersPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(0));
88   TH1F *gAntiProtonsChi2PerClusterITSPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(1));
89   TH1F *gAntiProtonsTPCClustersPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(2));
90   TH1F *gAntiProtonsChi2PerClusterTPCPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(3));
91   TH1F *gAntiProtonsExtCov11Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(4));
92   TH1F *gAntiProtonsExtCov22Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(5));
93   TH1F *gAntiProtonsExtCov33Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(6));
94   TH1F *gAntiProtonsExtCov44Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(7));
95   TH1F *gAntiProtonsExtCov55Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(8));
96   TH1F *gAntiProtonsSigmaToVertexPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(9));
97   TH1F *gAntiProtonsSigmaToVertexTPCPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(10));
98   TH1F *gAntiProtonsDCAXYPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(11));
99   TH1F *gAntiProtonsDCAXYTPCPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(12));
100   TH1F *gAntiProtonsDCAZPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(13));
101   TH1F *gAntiProtonsDCAZTPCPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(14));
102   TH1F *gAntiProtonsConstrainChi2Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(15));
103   TH1F *gAntiProtonsITSRefitPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(16));
104   TH1F *gAntiProtonsTPCRefitPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(17));
105   TH1F *gAntiProtonsESDpidPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(18));
106   TH1F *gAntiProtonsTPCpidPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(19));
107   TH1F *gAntiProtonsPointOnITSLayer1Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(20));
108   TH1F *gAntiProtonsPointOnITSLayer2Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(21));
109   TH1F *gAntiProtonsPointOnITSLayer3Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(22));
110   TH1F *gAntiProtonsPointOnITSLayer4Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(23));
111   TH1F *gAntiProtonsPointOnITSLayer5Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(24));
112   TH1F *gAntiProtonsPointOnITSLayer6Pass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(25));
113   TH1F *gAntiProtonsNumberOfTPCdEdxPointsPass = dynamic_cast<TH1F *>(fQAAntiProtonsAcceptedList->At(26));
114
115   //Rejected antiprotons
116   TList *fQAAntiProtonsRejectedList = dynamic_cast<TList *>(gListGlobalQA->At(4));
117   TH1F *gAntiProtonsITSClustersReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(0));
118   TH1F *gAntiProtonsChi2PerClusterITSReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(1));
119   TH1F *gAntiProtonsTPCClustersReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(2));
120   TH1F *gAntiProtonsChi2PerClusterTPCReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(3));
121   TH1F *gAntiProtonsExtCov11Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(4));
122   TH1F *gAntiProtonsExtCov22Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(5));
123   TH1F *gAntiProtonsExtCov33Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(6));
124   TH1F *gAntiProtonsExtCov44Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(7));
125   TH1F *gAntiProtonsExtCov55Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(8));
126   TH1F *gAntiProtonsSigmaToVertexReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(9));
127   TH1F *gAntiProtonsSigmaToVertexTPCReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(10));
128   TH1F *gAntiProtonsDCAXYReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(11));
129   TH1F *gAntiProtonsDCAXYTPCReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(12));
130   TH1F *gAntiProtonsDCAZReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(13));
131   TH1F *gAntiProtonsDCAZTPCReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(14));
132   TH1F *gAntiProtonsConstrainChi2Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(15));
133   TH1F *gAntiProtonsITSRefitReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(16));
134   TH1F *gAntiProtonsTPCRefitReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(17));
135   TH1F *gAntiProtonsESDpidReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(18));
136   TH1F *gAntiProtonsTPCpidReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(19));
137   TH1F *gAntiProtonsPointOnITSLayer1Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(20));
138   TH1F *gAntiProtonsPointOnITSLayer2Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(21));
139   TH1F *gAntiProtonsPointOnITSLayer3Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(22));
140   TH1F *gAntiProtonsPointOnITSLayer4Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(23));
141   TH1F *gAntiProtonsPointOnITSLayer5Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(24));
142   TH1F *gAntiProtonsPointOnITSLayer6Reject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(25));
143   TH1F *gAntiProtonsNumberOfTPCdEdxPointsReject = dynamic_cast<TH1F *>(fQAAntiProtonsRejectedList->At(26));
144
145   //__________________________________________________//
146   TCanvas *c1 = new TCanvas("c1","",0,0,600,400);
147   c1->SetFillColor(10); c1->SetHighLightColor(10);
148   c1->Divide(2,1);
149   c1->cd(1); gProtonsITSClustersPass->Draw(); 
150   gProtonsITSClustersReject->Draw("same");
151   c1->cd(2); gAntiProtonsITSClustersPass->Draw(); 
152   gAntiProtonsITSClustersReject->Draw("same");
153
154   TCanvas *c2 = new TCanvas("c2","",0,100,600,400);
155   c2->SetFillColor(10); c2->SetHighLightColor(10);
156   c2->Divide(2,1);
157   c2->cd(1); gProtonsChi2PerClusterITSPass->Draw(); 
158   gProtonsChi2PerClusterITSReject->Draw("same");
159   c2->cd(2); gAntiProtonsChi2PerClusterITSPass->Draw(); 
160   gAntiProtonsChi2PerClusterITSReject->Draw("same");
161
162   TCanvas *c3 = new TCanvas("c3","",0,200,600,400);
163   c3->SetFillColor(10); c3->SetHighLightColor(10);
164   c3->Divide(2,1);
165   c3->cd(1); gProtonsTPCClustersPass->Draw();
166   gProtonsTPCClustersReject->Draw("same");
167   c3->cd(2); gAntiProtonsTPCClustersPass->Draw();
168   gAntiProtonsTPCClustersReject->Draw("same");
169
170   TCanvas *c4 = new TCanvas("c4","",0,300,600,400);
171   c4->SetFillColor(10); c4->SetHighLightColor(10);
172   c4->Divide(2,1);
173   c4->cd(1); gProtonsChi2PerClusterTPCPass->Draw(); 
174   gProtonsChi2PerClusterTPCReject->Draw("same");
175   c4->cd(2); gAntiProtonsChi2PerClusterTPCPass->Draw(); 
176   gAntiProtonsChi2PerClusterTPCReject->Draw("same");
177
178   TCanvas *c5 = new TCanvas("c5","",0,400,600,400);
179   c5->SetFillColor(10); c5->SetHighLightColor(10);
180   c5->Divide(2,1);
181   c5->cd(1); gProtonsExtCov11Pass->Draw(); 
182   gProtonsExtCov11Reject->Draw("same");
183   c5->cd(2); gAntiProtonsExtCov11Pass->Draw(); 
184   gAntiProtonsExtCov11Reject->Draw("same");
185
186   TCanvas *c6 = new TCanvas("c6","",0,500,600,400);
187   c6->SetFillColor(10); c6->SetHighLightColor(10);
188   c6->Divide(2,1);
189   c6->cd(1); gProtonsExtCov22Pass->Draw(); 
190   gProtonsExtCov22Reject->Draw("same");
191   c6->cd(2); gAntiProtonsExtCov22Pass->Draw(); 
192   gAntiProtonsExtCov22Reject->Draw("same");
193
194   TCanvas *c7 = new TCanvas("c7","",600,0,600,400);
195   c7->SetFillColor(10); c7->SetHighLightColor(10);
196   c7->Divide(2,1);
197   c7->cd(1); gProtonsExtCov33Pass->Draw(); 
198   gProtonsExtCov33Reject->Draw("same");
199   c7->cd(2); gAntiProtonsExtCov33Pass->Draw(); 
200   gAntiProtonsExtCov33Reject->Draw("same");
201
202   TCanvas *c8 = new TCanvas("c8","",600,100,600,400);
203   c8->SetFillColor(10); c8->SetHighLightColor(10);
204   c8->Divide(2,1);
205   c8->cd(1); gProtonsExtCov44Pass->Draw(); 
206   gProtonsExtCov44Reject->Draw("same");
207   c8->cd(2); gAntiProtonsExtCov44Pass->Draw(); 
208   gAntiProtonsExtCov44Reject->Draw("same");
209
210   TCanvas *c9 = new TCanvas("c9","",600,200,600,400);
211   c9->SetFillColor(10); c9->SetHighLightColor(10);
212   c9->Divide(2,1);
213   c9->cd(1); gProtonsExtCov55Pass->Draw(); 
214   gProtonsExtCov55Reject->Draw("same");
215   c9->cd(2); gAntiProtonsExtCov55Pass->Draw(); 
216   gAntiProtonsExtCov55Reject->Draw("same");
217
218   TCanvas *c10 = new TCanvas("c10","",600,300,600,400);
219   c10->SetFillColor(10); c10->SetHighLightColor(10);
220   c10->Divide(2,1);
221   c10->cd(1); gProtonsSigmaToVertexPass->Draw(); 
222   gProtonsSigmaToVertexReject->Draw("same");
223   c10->cd(2); gAntiProtonsSigmaToVertexPass->Draw(); 
224   gAntiProtonsSigmaToVertexReject->Draw("same");
225
226   TCanvas *c11 = new TCanvas("c11","",600,400,600,400);
227   c11->SetFillColor(10); c11->SetHighLightColor(10);
228   c11->Divide(2,1);
229   c11->cd(1); gProtonsSigmaToVertexTPCPass->Draw(); 
230   gProtonsSigmaToVertexTPCReject->Draw("same");
231   c11->cd(2); gAntiProtonsSigmaToVertexTPCPass->Draw(); 
232   gAntiProtonsSigmaToVertexTPCReject->Draw("same");
233
234   TCanvas *c12 = new TCanvas("c12","",600,500,600,400);
235   c12->SetFillColor(10); c12->SetHighLightColor(10);
236   c12->Divide(2,1);
237   c12->cd(1); gProtonsDCAXYPass->Draw(); 
238   gProtonsDCAXYReject->Draw("same");
239   c12->cd(2); gAntiProtonsDCAXYPass->Draw(); 
240   gAntiProtonsDCAXYReject->Draw("same");
241
242   TCanvas *c13 = new TCanvas("c13","",1200,0,600,400);
243   c13->SetFillColor(10); c13->SetHighLightColor(10);
244   c13->Divide(2,1);
245   c13->cd(1); gProtonsDCAXYTPCPass->Draw(); 
246   gProtonsDCAXYTPCReject->Draw("same");
247   c13->cd(2); gAntiProtonsDCAXYTPCPass->Draw(); 
248   gAntiProtonsDCAXYTPCReject->Draw("same");
249
250   TCanvas *c14 = new TCanvas("c14","",1200,100,600,400);
251   c14->SetFillColor(10); c14->SetHighLightColor(10);
252   c14->Divide(2,1);
253   c14->cd(1); gProtonsDCAZPass->Draw(); 
254   gProtonsDCAZReject->Draw("same");
255   c14->cd(2); gAntiProtonsDCAZPass->Draw(); 
256   gAntiProtonsDCAZReject->Draw("same");
257
258   TCanvas *c15 = new TCanvas("c15","",1200,200,600,400);
259   c15->SetFillColor(10); c15->SetHighLightColor(10);
260   c15->Divide(2,1);
261   c15->cd(1); gProtonsDCAZTPCPass->Draw(); 
262   gProtonsDCAZTPCReject->Draw("same");
263   c15->cd(2); gAntiProtonsDCAZTPCPass->Draw(); 
264   gAntiProtonsDCAZTPCReject->Draw("same");
265
266   TCanvas *c16 = new TCanvas("c16","",1200,300,600,400);
267   c16->SetFillColor(10); c16->SetHighLightColor(10);
268   c16->Divide(2,1);
269   c16->cd(1); gProtonsNumberOfTPCdEdxPointsPass->Draw(); 
270   gProtonsNumberOfTPCdEdxPointsReject->Draw("same");
271   c16->cd(2); gAntiProtonsNumberOfTPCdEdxPointsPass->Draw(); 
272   gAntiProtonsNumberOfTPCdEdxPointsReject->Draw("same");
273
274   //================Vertex QA================//
275   TList *gListVertexQA = dynamic_cast<TList *>(listQA->At(1));
276   TH1F *gHistVx = dynamic_cast<TH1F *>(gListVertexQA->At(0));
277   TH1F *gHistVxAccepted = dynamic_cast<TH1F *>(gListVertexQA->At(1));
278   gHistVxAccepted->SetFillColor(10);
279   TH1F *gHistVy = dynamic_cast<TH1F *>(gListVertexQA->At(2));
280   TH1F *gHistVyAccepted = dynamic_cast<TH1F *>(gListVertexQA->At(3));
281   gHistVyAccepted->SetFillColor(10);
282   TH1F *gHistVz = dynamic_cast<TH1F *>(gListVertexQA->At(4));
283   TH1F *gHistVzAccepted = dynamic_cast<TH1F *>(gListVertexQA->At(5));
284   gHistVzAccepted->SetFillColor(10);
285
286   TCanvas *cVertex = new TCanvas("cVertex","Veretx QA",0,0,900,400);
287   cVertex->SetFillColor(10); cVertex->SetHighLightColor(10);
288   cVertex->Divide(3,1);
289   cVertex->cd(1); gHistVx->Draw(); gHistVxAccepted->Draw("same");
290   cVertex->cd(2); gHistVy->Draw(); gHistVyAccepted->Draw("same");
291   cVertex->cd(3); gHistVz->Draw(); gHistVzAccepted->Draw("same");
292 }
293