Skip to content

Commit 7850e70

Browse files
committed
Added particle species compostion
1 parent 06009de commit 7850e70

File tree

1 file changed

+55
-12
lines changed

1 file changed

+55
-12
lines changed

PWGLF/Tasks/Strangeness/phik0shortanalysis.cxx

Lines changed: 55 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,16 @@ enum {
6868
kITSonly
6969
};
7070

71+
enum {
72+
kSpAll = 0,
73+
kSpPion,
74+
kSpKaon,
75+
kSpProton,
76+
kSpOther,
77+
kSpStrangeDecay,
78+
kSpNotPrimary
79+
};
80+
7181
struct Phik0shortanalysis {
7282
// Histograms are defined with HistogramRegistry
7383
HistogramRegistry dataEventHist{"dataEventHist", {}, OutputObjHandlingPolicy::AnalysisObject, true, true};
@@ -370,13 +380,13 @@ struct Phik0shortanalysis {
370380
mcEventHist.add("h2GenMCRecoVertexZvsMult", "GenMCReco Vertex Z vs Multiplicity Percentile", kTH2F, {vertexZAxis, binnedmultAxis});
371381

372382
// Eta distribution for dN/deta values estimation in MC
373-
mcEventHist.add("h4RecoMCEtaDistribution", "Eta vs multiplicity in MCReco", kTHnSparseF, {vertexZAxis, binnedmultAxis, etaAxis, {3, -0.5f, 2.5f}});
374-
mcEventHist.add("h4RecoCheckMCEtaDistribution", "Eta vs multiplicity in MCReco Check", kTHnSparseF, {vertexZAxis, binnedmultAxis, etaAxis, {3, -0.5f, 2.5f}});
383+
mcEventHist.add("h5RecoMCEtaDistribution", "Eta vs multiplicity in MCReco", kTHnSparseF, {vertexZAxis, binnedmultAxis, etaAxis, {3, -0.5f, 2.5f}, {6, -0.5f, 5.5f}});
384+
mcEventHist.add("h5RecoCheckMCEtaDistribution", "Eta vs multiplicity in MCReco Check", kTHnSparseF, {vertexZAxis, binnedmultAxis, etaAxis, {3, -0.5f, 2.5f}, {6, -0.5f, 5.5f}});
375385

376386
mcEventHist.add("h2GenMCEtaDistribution", "Eta vs multiplicity in MCGen", kTH2F, {binnedmultAxis, etaAxis});
377387
mcEventHist.add("h2GenMCEtaDistributionAssocReco", "Eta vs multiplicity in MCGen Assoc Reco", kTH2F, {binnedmultAxis, etaAxis});
378-
mcEventHist.add("h4GenMCEtaDistributionReco", "Eta vs multiplicity in MCGen Reco", kTHnSparseF, {vertexZAxis, binnedmultAxis, etaAxis, {3, -0.5f, 2.5f}});
379-
mcEventHist.add("h4GenMCEtaDistributionRecoCheck", "Eta vs multiplicity in MCGen Reco Check", kTHnSparseF, {vertexZAxis, binnedmultAxis, etaAxis, {3, -0.5f, 2.5f}});
388+
mcEventHist.add("h4GenMCEtaDistributionReco", "Eta vs multiplicity in MCGen Reco", kTHnSparseF, {vertexZAxis, binnedmultAxis, etaAxis, {6, -0.5f, 5.5f}});
389+
mcEventHist.add("h4GenMCEtaDistributionRecoCheck", "Eta vs multiplicity in MCGen Reco Check", kTHnSparseF, {vertexZAxis, binnedmultAxis, etaAxis, {6, -0.5f, 5.5f}});
380390

381391
// Phi topological/PID cuts
382392
dataPhiHist.add("h2DauTracksPhiDCAxyPreCutData", "Dcaxy distribution vs pt before DCAxy cut", kTH2F, {{100, 0.0, 5.0, "#it{p}_{T} (GeV/#it{c})"}, {2000, -0.05, 0.05, "DCA_{xy} (cm)"}});
@@ -988,6 +998,27 @@ struct Phik0shortanalysis {
988998
return true;
989999
}
9901000

1001+
int fromPDGToEnum(int pdgCode)
1002+
{
1003+
int pid = kSpAll;
1004+
switch (std::abs(pdgCode)) {
1005+
case PDG_t::kPiPlus:
1006+
pid = kSpPion;
1007+
break;
1008+
case PDG_t::kKPlus:
1009+
pid = kSpKaon;
1010+
break;
1011+
case PDG_t::kProton:
1012+
pid = kSpProton;
1013+
break;
1014+
default:
1015+
pid = kSpOther;
1016+
break;
1017+
}
1018+
1019+
return pid;
1020+
}
1021+
9911022
// Get phi-meson purity functions from CCDB
9921023
void getPhiPurityFunctionsFromCCDB()
9931024
{
@@ -2491,19 +2522,25 @@ struct Phik0shortanalysis {
24912522
if (!mcTrack.isPhysicalPrimary() || std::abs(mcTrack.eta()) > trackConfigs.etaMax)
24922523
continue;
24932524

2494-
mcEventHist.fill(HIST("h4RecoMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kGlobalplusITSonly);
2525+
mcEventHist.fill(HIST("h5RecoMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kGlobalplusITSonly, kSpAll);
24952526
if (track.hasTPC()) {
2496-
mcEventHist.fill(HIST("h4RecoMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kGlobalonly);
2527+
mcEventHist.fill(HIST("h5RecoMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kGlobalonly, kSpAll);
24972528
} else {
2498-
mcEventHist.fill(HIST("h4RecoMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kITSonly);
2529+
mcEventHist.fill(HIST("h5RecoMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kITSonly, kSpAll);
24992530
}
2531+
2532+
int pid = fromPDGToEnum(mcTrack.pdgCode());
2533+
mcEventHist.fill(HIST("h5RecoMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kGlobalplusITSonly, pid);
25002534
}
25012535

25022536
for (const auto& mcParticle : mcParticlesThisColl) {
25032537
if (!isGenParticleCharged(mcParticle))
25042538
continue;
25052539

2506-
mcEventHist.fill(HIST("h4GenMCEtaDistributionReco"), collision.posZ(), mcCollision.centFT0M(), mcParticle.eta());
2540+
mcEventHist.fill(HIST("h4GenMCEtaDistributionReco"), collision.posZ(), mcCollision.centFT0M(), mcParticle.eta(), kSpAll);
2541+
2542+
int pid = fromPDGToEnum(mcParticle.pdgCode());
2543+
mcEventHist.fill(HIST("h4GenMCEtaDistributionReco"), collision.posZ(), mcCollision.centFT0M(), mcParticle.eta(), pid);
25072544
}
25082545
}
25092546

@@ -2533,19 +2570,25 @@ struct Phik0shortanalysis {
25332570
if (!mcTrack.isPhysicalPrimary() || std::abs(mcTrack.eta()) > trackConfigs.etaMax)
25342571
continue;
25352572

2536-
mcEventHist.fill(HIST("h4RecoCheckMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kGlobalplusITSonly);
2573+
mcEventHist.fill(HIST("h5RecoCheckMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kGlobalplusITSonly, kSpAll);
25372574
if (track.hasTPC()) {
2538-
mcEventHist.fill(HIST("h4RecoCheckMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kGlobalonly);
2575+
mcEventHist.fill(HIST("h5RecoCheckMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kGlobalonly, kSpAll);
25392576
} else {
2540-
mcEventHist.fill(HIST("h4RecoCheckMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kITSonly);
2577+
mcEventHist.fill(HIST("h5RecoCheckMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kITSonly, kSpAll);
25412578
}
2579+
2580+
int pid = fromPDGToEnum(mcTrack.pdgCode());
2581+
mcEventHist.fill(HIST("h5RecoCheckMCEtaDistribution"), collision.posZ(), mcCollision.centFT0M(), mcTrack.eta(), kGlobalplusITSonly, pid);
25422582
}
25432583

25442584
for (const auto& mcParticle : mcParticles) {
25452585
if (!isGenParticleCharged(mcParticle))
25462586
continue;
25472587

2548-
mcEventHist.fill(HIST("h4GenMCEtaDistributionRecoCheck"), collision.posZ(), mcCollision.centFT0M(), mcParticle.eta());
2588+
mcEventHist.fill(HIST("h4GenMCEtaDistributionRecoCheck"), collision.posZ(), mcCollision.centFT0M(), mcParticle.eta(), kSpAll);
2589+
2590+
int pid = fromPDGToEnum(mcParticle.pdgCode());
2591+
mcEventHist.fill(HIST("h4GenMCEtaDistributionRecoCheck"), collision.posZ(), mcCollision.centFT0M(), mcParticle.eta(), pid);
25492592
}
25502593

25512594
numberAssocColl++;

0 commit comments

Comments
 (0)