fListBF(0),\r
fListBFS(0),\r
fHistEventStats(0),\r
+ fHistCentStats(0),\r
fHistTriggerStats(0),\r
fHistTrackStats(0),\r
fHistVx(0),\r
fHistEta(0),\r
fHistPhi(0),\r
fHistV0M(0),\r
+ fHistRefTracks(0),\r
fESDtrackCuts(0),\r
fCentralityEstimator("V0M"),\r
fCentralityPercentileMin(0.), \r
fHistEventStats->GetXaxis()->SetBinLabel(i,gCutName[i-1].Data());\r
fList->Add(fHistEventStats);\r
\r
+ TString gCentName[9] = {"V0M","FMD","TRK","TKL","CL0","CL1","V0MvsFMD","TKLvsV0M","ZEMvsZDC"};\r
+ fHistCentStats = new TH2F("fHistCentStats",\r
+ "Centrality statistics;;Cent percentile",\r
+ 9,-0.5,8.5,220,-5,105);\r
+ for(Int_t i = 1; i <= 9; i++)\r
+ fHistCentStats->GetXaxis()->SetBinLabel(i,gCentName[i-1].Data());\r
+ fList->Add(fHistCentStats);\r
+\r
fHistTriggerStats = new TH1F("fHistTriggerStats","Trigger statistics;TriggerBit;N_{events}",130,0,130);\r
fList->Add(fHistTriggerStats);\r
\r
- fHistTrackStats = new TH1F("fHistTrackStats","Event statistics;TriggerBit;N_{events}",130,0,130);\r
+ fHistTrackStats = new TH1F("fHistTrackStats","Event statistics;TrackFilterBit;N_{events}",130,0,130);\r
fList->Add(fHistTrackStats);\r
\r
// Vertex distributions\r
fList->Add(fHistPhi);\r
fHistV0M = new TH2F("fHistV0M","V0 Multiplicity C vs. A",500, 0, 20000, 500, 0, 20000);\r
fList->Add(fHistV0M);\r
+ TString gRefTrackName[6] = {"tracks","tracksPos","tracksNeg","tracksTPConly","clusITS0","clusITS1"};\r
+ fHistRefTracks = new TH2F("fHistRefTracks","Nr of Ref tracks/event vs. ref track estimator;;Nr of tracks",6, 0, 6, 400, 0, 20000);\r
+ for(Int_t i = 1; i <= 6; i++)\r
+ fHistRefTracks->GetXaxis()->SetBinLabel(i,gRefTrackName[i-1].Data());\r
+ fList->Add(fHistRefTracks);\r
\r
\r
// Balance function histograms\r
// <<" ZEMvsZDC = "<<aodHeader->GetCentralityP()->GetCentralityPercentile("ZEMvsZDC")\r
// <<endl;\r
\r
+ // QA for centrality estimators\r
+ fHistCentStats->Fill(0.,aodHeader->GetCentralityP()->GetCentralityPercentile("V0M"));\r
+ fHistCentStats->Fill(1.,aodHeader->GetCentralityP()->GetCentralityPercentile("FMD"));\r
+ fHistCentStats->Fill(2.,aodHeader->GetCentralityP()->GetCentralityPercentile("TRK"));\r
+ fHistCentStats->Fill(3.,aodHeader->GetCentralityP()->GetCentralityPercentile("TKL"));\r
+ fHistCentStats->Fill(4.,aodHeader->GetCentralityP()->GetCentralityPercentile("CL0"));\r
+ fHistCentStats->Fill(5.,aodHeader->GetCentralityP()->GetCentralityPercentile("CL1"));\r
+ fHistCentStats->Fill(6.,aodHeader->GetCentralityP()->GetCentralityPercentile("V0MvsFMD"));\r
+ fHistCentStats->Fill(7.,aodHeader->GetCentralityP()->GetCentralityPercentile("TKLvsV0M"));\r
+ fHistCentStats->Fill(8.,aodHeader->GetCentralityP()->GetCentralityPercentile("ZEMvsZDC"));\r
+\r
// take only events inside centrality class\r
if(fCentrality > fCentralityPercentileMin && fCentrality < fCentralityPercentileMax){\r
\r
// centrality QA (V0M)\r
fHistV0M->Fill(gAOD->GetVZEROData()->GetMTotV0A(), gAOD->GetVZEROData()->GetMTotV0C());\r
\r
+ // centrality QA (reference tracks)\r
+ fHistRefTracks->Fill(0.,aodHeader->GetRefMultiplicity());\r
+ fHistRefTracks->Fill(1.,aodHeader->GetRefMultiplicityPos());\r
+ fHistRefTracks->Fill(2.,aodHeader->GetRefMultiplicityNeg());\r
+ fHistRefTracks->Fill(3.,aodHeader->GetTPConlyRefMultiplicity());\r
+ fHistRefTracks->Fill(4.,aodHeader->GetNumberOfITSClusters(0));\r
+ fHistRefTracks->Fill(5.,aodHeader->GetNumberOfITSClusters(1));\r
+ fHistRefTracks->Fill(6.,aodHeader->GetNumberOfITSClusters(2));\r
+ fHistRefTracks->Fill(7.,aodHeader->GetNumberOfITSClusters(3));\r
+ fHistRefTracks->Fill(8.,aodHeader->GetNumberOfITSClusters(4));\r
+\r
+\r
const AliAODVertex *vertex = gAOD->GetPrimaryVertex();\r
\r
if(vertex) {\r