diff --git a/PWGJE/Tasks/jetvalidationqa.cxx b/PWGJE/Tasks/jetvalidationqa.cxx index 006df4f6e36..c90d116aaae 100644 --- a/PWGJE/Tasks/jetvalidationqa.cxx +++ b/PWGJE/Tasks/jetvalidationqa.cxx @@ -77,7 +77,8 @@ struct jetTrackCollisionQa { trackSelection = static_cast(trackSelections); // histograms // 1)Jetvalidation on data - mHistManager.add("collisionVtxZ", "control collsion VtxZ ", HistType::kTH1D, {vtxZAxis}); + mHistManager.add("collisionVtxZ", "selected collsion VtxZ ", HistType::kTH1D, {vtxZAxis}); + mHistManager.add("controlCollisionVtxZ", "control collsion VtxZ ", HistType::kTH1D, {vtxZAxis}); // process jet qa mHistManager.add("jetPt", "inclusive jetPt ", HistType::kTH1F, {ptAxis}); mHistManager.add("jetPhi", "inclusive jet #phi ", HistType::kTH1F, {phiAxis}); @@ -103,6 +104,19 @@ struct jetTrackCollisionQa { mHistManager.add("leadTrackPt", "leading selected track Pt", HistType::kTH1F, {ptAxis}); mHistManager.add("leadTrackPhi", "leading selected track #phi", HistType::kTH1F, {phiAxis}); mHistManager.add("leadTrackEta", "leading selected track #eta", HistType::kTH1F, {etaAxis}); + + // Some more Track QA histos to test the implemented track cuts + mHistManager.add("TPC/nClsCrossedRows", "nCls crossed rows TPC", HistType::kTH1F, {{165, -0.5, 164.5}}); + mHistManager.add("TPC/chi2PerCluster", "chi2 per cluster TPC", HistType::kTH1F, {{500, 0, 10}}); + mHistManager.add("TPC/crossedRowsOverFindableCls", "ratio of crossed rows over findable cluster TPC", HistType::kTH1F, {{120, 0.0, 1.2}}); + mHistManager.add("TPC/NClsFindable", "number of findable TPC clusters;# findable clusters TPC", HistType::kTH1F, {{165, -0.5, 164.5}}); + mHistManager.add("TPC/NClsFound", "number of found TPC clusters;# clusters TPC", HistType::kTH1F, {{165, -0.5, 164.5}}); + mHistManager.add("TPC/NClsShared", "number of shared TPC clusters;# shared clusters TPC", HistType::kTH1F, {{165, -0.5, 164.5}}); + mHistManager.add("TPC/FractionSharedCls", "fraction of shared TPC clusters;# fraction shared clusters TPC", HistType::kTH1F, {{100, 0., 1.}}); + + mHistManager.add("ITS/chi2PerCluster", "chi2 per ITS cluster", HistType::kTH1F, {{100, 0, 40}}); + mHistManager.add("ITS/itsHits", "hitmap ITS;#it{p}_{T} [GeV/c];layer ITS", HistType::kTH1F, {{7, -0.5, 6.5}}); + mHistManager.add("ITS/itsNCls", "number of found ITS clusters;# clusters ITS", HistType::kTH1F, {{8, -0.5, 7.5}}); } template @@ -111,6 +125,22 @@ struct jetTrackCollisionQa { mHistManager.fill(HIST("selectedTrackPt"), track.pt()); mHistManager.fill(HIST("selectedTrackPhi"), track.phi()); mHistManager.fill(HIST("selectedTrackEta"), track.eta()); + // START OF FILLING TRACK CUTS HISTOS + mHistManager.fill(HIST("TPC/chi2PerCluster"), track.tpcChi2NCl()); + mHistManager.fill(HIST("TPC/nClsCrossedRows"), track.tpcNClsCrossedRows()); + mHistManager.fill(HIST("TPC/crossedRowsOverFindableCls"), track.tpcCrossedRowsOverFindableCls()); + mHistManager.fill(HIST("TPC/NClsFindable"), track.tpcNClsFindable()); + mHistManager.fill(HIST("TPC/NClsFound"), track.tpcNClsFound()); + mHistManager.fill(HIST("TPC/NClsShared"), track.tpcNClsShared()); + mHistManager.fill(HIST("TPC/FractionSharedCls"), track.tpcFractionSharedCls()); + + mHistManager.fill(HIST("ITS/chi2PerCluster"), track.itsChi2NCl()); + mHistManager.fill(HIST("ITS/itsNCls"), track.itsNCls()); + for (unsigned int i = 0; i < 7; i++) { + if (track.itsClusterMap() & (1 << i)) { + mHistManager.fill(HIST("ITS/itsHits"), i); + } + } } // end of fillTrackQA template void fillLeadingTrackQA(double leadingTrackPt, double leadingTrackPhi, double leadingTrackEta) @@ -156,6 +186,7 @@ struct jetTrackCollisionQa { void processESD(soa::Join::iterator const& collision, soa::Join const& jets, TracksJE const& tracks) { + mHistManager.fill(HIST("controlCollisionVtxZ"), collision.posZ()); if (evSel == true) { if (!collision.sel7() || fabs(collision.posZ()) > 10) { return;