Skip to content

Commit f0a813c

Browse files
authored
[PWGLF] Add necessary hist to calculate efficiency for secondary lambda (#11282)
1 parent 6756192 commit f0a813c

File tree

1 file changed

+53
-0
lines changed

1 file changed

+53
-0
lines changed

PWGLF/Tasks/Strangeness/hStrangeCorrelation.cxx

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1131,6 +1131,10 @@ struct HStrangeCorrelation {
11311131
histos.add(fmt::format("GeneratedWithPV/h{}_MidYVsMult", kParticlenames[i]).c_str(), "", kTH2F, {axisPtQA, axisMult});
11321132
histos.add(fmt::format("GeneratedWithPV/h{}_MidYVsMult_TwoPVsOrMore", kParticlenames[i]).c_str(), "", kTH2F, {axisPtQA, axisMult});
11331133
}
1134+
histos.add("GeneratedWithPV/hLambdaFromXiZero", "", kTH2F, {axisPtQA, axisEta});
1135+
histos.add("GeneratedWithPV/hLambdaFromXiMinus", "", kTH2F, {axisPtQA, axisEta});
1136+
histos.add("GeneratedWithPV/hAntiLambdaFromXiZero", "", kTH2F, {axisPtQA, axisEta});
1137+
histos.add("GeneratedWithPV/hAntiLambdaFromXiPlus", "", kTH2F, {axisPtQA, axisEta});
11341138
}
11351139
if (doprocessClosureTest) {
11361140
for (int i = 0; i < 9; i++) {
@@ -1148,6 +1152,10 @@ struct HStrangeCorrelation {
11481152
histos.add("hAntiLambdaXiPlusFeeddownMatrix", "hAntiLambdaXiPlusFeeddownMatrix", kTH2F, {axisPtLambda, axisPtCascade});
11491153
histos.add("hAntiLambdaXiZeroFeeddownMatrix", "hAntiLambdaXiZeroFeeddownMatrix", kTH2F, {axisPtLambda, axisPtCascade});
11501154
histos.add("hAntiLambdaOmegaFeeddownMatrix", "hAntiLambdaOmegaFeeddownMatrix", kTH2F, {axisPtLambda, axisPtCascade});
1155+
histos.add("hLambdaFromXiMinusEtaVsPtVsPhi", "hLambdaFromXiMinusEtaVsPtVsPhi", kTH3F, {axisPtQA, axisEta, axisPhi});
1156+
histos.add("hLambdaFromXiZeroEtaVsPtVsPhi", "hLambdaFromXiZeroEtaVsPtVsPhi", kTH3F, {axisPtQA, axisEta, axisPhi});
1157+
histos.add("hAntiLambdaFromXiPlusEtaVsPtVsPhi", "hAntiLambdaFromXiPlusEtaVsPtVsPhi", kTH3F, {axisPtQA, axisEta, axisPhi});
1158+
histos.add("hAntiLambdaFromXiZeroEtaVsPtVsPhi", "hAntiLambdaFromXiZeroEtaVsPtVsPhi", kTH3F, {axisPtQA, axisEta, axisPhi});
11511159
}
11521160

11531161
// visual inspection of sizes
@@ -1944,6 +1952,47 @@ struct HStrangeCorrelation {
19441952
double gpt = mcParticle.pt();
19451953
if (std::abs(mcParticle.pdgCode()) == PDG_t::kPiPlus || std::abs(mcParticle.pdgCode()) == PDG_t::kKPlus || std::abs(mcParticle.pdgCode()) == PDG_t::kProton || std::abs(mcParticle.pdgCode()) == PDG_t::kElectron || std::abs(mcParticle.pdgCode()) == PDG_t::kMuonMinus)
19461954
histos.fill(HIST("GeneratedWithPV/hTrigger"), gpt, geta);
1955+
if (mcParticle.pdgCode() == PDG_t::kLambda0 && !doAssocPhysicalPrimaryInGen && !mcParticle.isPhysicalPrimary()) {
1956+
if (std::abs(geta) > etaSel) {
1957+
continue;
1958+
}
1959+
auto lamMothers = mcParticle.mothers_as<aod::McParticles>();
1960+
if (lamMothers.size() == 1) {
1961+
for (const auto& lamParticleMother : lamMothers) {
1962+
if (std::abs(lamParticleMother.eta()) > etaSel) {
1963+
continue;
1964+
}
1965+
if (lamParticleMother.pdgCode() == PDG_t::kXiMinus) // Xi Minus Mother Matched
1966+
{
1967+
histos.fill(HIST("GeneratedWithPV/hLambdaFromXiMinus"), gpt, geta);
1968+
}
1969+
if (lamParticleMother.pdgCode() == o2::constants::physics::Pdg::kXi0) // Xi Zero Mother Matched
1970+
{
1971+
histos.fill(HIST("GeneratedWithPV/hLambdaFromXiZero"), gpt, geta);
1972+
}
1973+
}
1974+
}
1975+
}
1976+
if (mcParticle.pdgCode() == PDG_t::kLambda0Bar && !doAssocPhysicalPrimaryInGen && !mcParticle.isPhysicalPrimary()) {
1977+
if (std::abs(geta) > etaSel) {
1978+
continue;
1979+
}
1980+
auto lamMothers = mcParticle.mothers_as<aod::McParticles>();
1981+
if (lamMothers.size() == 1) {
1982+
for (const auto& lamParticleMother : lamMothers) {
1983+
if (std::abs(lamParticleMother.eta()) > etaSel) {
1984+
continue;
1985+
}
1986+
if (lamParticleMother.pdgCode() == PDG_t::kXiPlusBar) {
1987+
histos.fill(HIST("GeneratedWithPV/hAntiLambdaFromXiPlus"), gpt, geta);
1988+
}
1989+
if (lamParticleMother.pdgCode() == -o2::constants::physics::Pdg::kXi0) // Xi Zero Mother Matched
1990+
{
1991+
histos.fill(HIST("GeneratedWithPV/hAntiLambdaFromXiZero"), gpt, geta);
1992+
}
1993+
}
1994+
}
1995+
}
19471996
static_for<0, 7>([&](auto i) {
19481997
constexpr int Index = i.value;
19491998
if (i == 0 || i == 7) {
@@ -2196,10 +2245,12 @@ struct HStrangeCorrelation {
21962245
if (v0mcParticleMother.pdgCode() == PDG_t::kXiMinus) // Xi Minus Mother Matched
21972246
{
21982247
histos.fill(HIST("hLambdaXiMinusFeeddownMatrix"), v0mcParticle.pt(), v0mcParticleMother.pt());
2248+
histos.fill(HIST("hLambdaFromXiMinusEtaVsPtVsPhi"), v0mcParticle.pt(), v0mcParticle.eta(), v0mcParticle.phi());
21992249
}
22002250
if (v0mcParticleMother.pdgCode() == o2::constants::physics::Pdg::kXi0) // Xi Zero Mother Matched
22012251
{
22022252
histos.fill(HIST("hLambdaXiZeroFeeddownMatrix"), v0mcParticle.pt(), v0mcParticleMother.pt());
2253+
histos.fill(HIST("hLambdaFromXiZeroEtaVsPtVsPhi"), v0mcParticle.pt(), v0mcParticle.eta(), v0mcParticle.phi());
22032254
}
22042255
if (v0mcParticleMother.pdgCode() == PDG_t::kOmegaMinus) // Omega Mother Matched
22052256
{
@@ -2218,10 +2269,12 @@ struct HStrangeCorrelation {
22182269
if (v0mcParticleMother.pdgCode() == PDG_t::kXiPlusBar) // Xi Plus Mother Matched
22192270
{
22202271
histos.fill(HIST("hAntiLambdaXiPlusFeeddownMatrix"), v0mcParticle.pt(), v0mcParticleMother.pt());
2272+
histos.fill(HIST("hAntiLambdaFromXiPlusEtaVsPtVsPhi"), v0mcParticle.pt(), v0mcParticle.eta(), v0mcParticle.phi());
22212273
}
22222274
if (v0mcParticleMother.pdgCode() == -o2::constants::physics::Pdg::kXi0) // Anti Xi Zero Mother Matched
22232275
{
22242276
histos.fill(HIST("hAntiLambdaXiZeroFeeddownMatrix"), v0mcParticle.pt(), v0mcParticleMother.pt());
2277+
histos.fill(HIST("hAntiLambdaFromXiZeroEtaVsPtVsPhi"), v0mcParticle.pt(), v0mcParticle.eta(), v0mcParticle.phi());
22252278
}
22262279
if (v0mcParticleMother.pdgCode() == PDG_t::kOmegaPlusBar) // Omega Mother Matched
22272280
{

0 commit comments

Comments
 (0)