Skip to content

Commit 38ff33e

Browse files
committed
added alternate method for event/signal loss corrections
1 parent d979c08 commit 38ff33e

File tree

1 file changed

+35
-14
lines changed

1 file changed

+35
-14
lines changed

PWGLF/Tasks/Resonances/higherMassResonances.cxx

Lines changed: 35 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ struct HigherMassResonances {
147147
Configurable<bool> isApplyEtaCutK0s{"isApplyEtaCutK0s", false, "Apply eta cut on K0s daughters"};
148148
Configurable<float> cfgETAcut{"cfgETAcut", 0.8f, "Track ETA cut"};
149149
Configurable<float> deltaRDaugherCut{"deltaRDaugherCut", 0.001f, "DeltaR cut on V0 daughters"};
150-
Configurable<bool> deltaRK0sCut{"deltaRK0sCut", false, "Apply deltaR cut between two K0s"};
150+
Configurable<float> deltaRK0sCut{"deltaRK0sCut", 0.1f, "Apply deltaR cut between two K0s"};
151151

152152
// Configurable for track selection and multiplicity
153153
Configurable<float> cfgPTcut{"cfgPTcut", 0.2f, "Track PT cut"};
@@ -159,7 +159,7 @@ struct HigherMassResonances {
159159
Configurable<bool> isavoidsplitrackMC{"isavoidsplitrackMC", false, "avoid split track in MC"};
160160
Configurable<bool> isapplyRapidityMC{"isapplyRapidityMC", true, "Apply rapidity cut on generated and reconstructed particles"};
161161
Configurable<int> selectMCparticles{"selectMCparticles", 1, "0: f0(1710), 1: f2(1525), 2: a2(1320), 3: f0(1370), 4: f0(1500), 5: f2(1270)"};
162-
std::vector<int> pdgCodes = {10331, 335, 115, 10221, 9030221, 225};
162+
std::vector<int> pdgCodes = {10331, 335, 115, 10221, 9030221, 225, 313};
163163

164164
// output THnSparses
165165
Configurable<bool> activateHelicityFrame{"activateHelicityFrame", false, "Activate the THnSparse with cosThStar w.r.t. helicity axis"};
@@ -401,6 +401,15 @@ struct HigherMassResonances {
401401
hMChists.add("MCcorrections/hSignalLossNumerator", "Kstar generated after event selection", kTH2F, {{ptAxis}, {multiplicityAxis}});
402402
hMChists.add("MCcorrections/MultiplicityRec", "Multiplicity in generated MC with at least 1 reconstruction", kTH1F, {multiplicityAxis});
403403
hMChists.add("MCcorrections/MultiplicityGen", "Multiplicity in generated MC", kTH1F, {multiplicityAxis});
404+
hMChists.add("MCcorrections/hSignalLossDenominator2", "Kstar generated before event selection", kTH2F, {{ptAxis}, {multiplicityAxis}});
405+
hMChists.add("MCcorrections/hSignalLossNumerator2", "Kstar generated after event selection", kTH2F, {{ptAxis}, {multiplicityAxis}});
406+
hMChists.add("MCcorrections/MultiplicityRec2", "Multiplicity in generated MC with at least 1 reconstruction", kTH1F, {multiplicityAxis});
407+
hMChists.add("MCcorrections/MultiplicityGen2", "Multiplicity in generated MC", kTH1F, {multiplicityAxis});
408+
409+
hMChists.add("MCcorrections/hGenNo", "Generated collisions before and after event selection", kTH1F, {{5, 0.0f, 5.0f}});
410+
hMChists.add("MCcorrections/hSignalLossDenominator3", "Kstar generated before event selection", kTH2F, {{ptAxis}, {multiplicityAxis}});
411+
hMChists.add("MCcorrections/hSignalLossNumerator3", "Kstar generated after event selection", kTH2F, {{ptAxis}, {multiplicityAxis}});
412+
hMChists.add("MCcorrections/hMultvsCent", "Kstar generated after event selection", kTH2F, {{multiplicityAxis}, {multiplicityAxis}});
404413
}
405414
}
406415

@@ -1296,6 +1305,8 @@ struct HigherMassResonances {
12961305
multiplicityGen = -999.0;
12971306
for (const auto& collision : collisions) {
12981307

1308+
hMChists.fill(HIST("MCcorrections/hGenNo"), 0.5);
1309+
12991310
// multiplicityGen = collision.centFT0M();
13001311
if (config.cSelectMultEstimator == kFT0M) {
13011312
multiplicityGen = collision.centFT0M();
@@ -1323,6 +1334,8 @@ struct HigherMassResonances {
13231334
return;
13241335
}
13251336
hMChists.fill(HIST("events_check"), 2.5);
1337+
hMChists.fill(HIST("MCcorrections/hGenNo"), 1.5);
1338+
13261339
double genMultiplicity = mcCollision.centFT0M();
13271340

13281341
for (const auto& mcParticle : mcParticles) {
@@ -1401,7 +1414,8 @@ struct HigherMassResonances {
14011414
{
14021415
// auto multiplicityRec = -1;
14031416
bool isSelectedEvent = false;
1404-
// auto multiplicity1 = -999.;
1417+
auto multiplicity1 = -999.;
1418+
const int multMC = mcCollision.multMCNParticlesEta05();
14051419

14061420
for (const auto& RecCollision : recCollisions) {
14071421
if (!RecCollision.has_mcCollision())
@@ -1412,17 +1426,17 @@ struct HigherMassResonances {
14121426
// const auto& mcCollisionRec = RecCollision.mcCollision_as<EventMCGenerated>();
14131427
// multiplicityRec = mcCollisionRec.centFT0M();
14141428

1415-
// if (config.cSelectMultEstimator == kFT0M) {
1416-
// multiplicity1 = RecCollision.centFT0M();
1417-
// } else if (config.cSelectMultEstimator == kFT0A) {
1418-
// multiplicity1 = RecCollision.centFT0A();
1419-
// } else if (config.cSelectMultEstimator == kFT0C) {
1420-
// multiplicity1 = RecCollision.centFT0C();
1421-
// } else if (config.cSelectMultEstimator == kFV0A) {
1422-
// multiplicity1 = RecCollision.centFV0A();
1423-
// } else {
1424-
// multiplicity1 = RecCollision.centFT0M(); // default
1425-
// }
1429+
if (config.cSelectMultEstimator == kFT0M) {
1430+
multiplicity1 = RecCollision.centFT0M();
1431+
} else if (config.cSelectMultEstimator == kFT0A) {
1432+
multiplicity1 = RecCollision.centFT0A();
1433+
} else if (config.cSelectMultEstimator == kFT0C) {
1434+
multiplicity1 = RecCollision.centFT0C();
1435+
} else if (config.cSelectMultEstimator == kFV0A) {
1436+
multiplicity1 = RecCollision.centFV0A();
1437+
} else {
1438+
multiplicity1 = RecCollision.centFT0M(); // default
1439+
}
14261440

14271441
isSelectedEvent = true;
14281442
}
@@ -1443,10 +1457,13 @@ struct HigherMassResonances {
14431457
auto multiplicityGen = -1;
14441458
multiplicityGen = mcCollision.centFT0M();
14451459
hMChists.fill(HIST("MCcorrections/MultiplicityGen"), multiplicityGen);
1460+
hMChists.fill(HIST("MCcorrections/MultiplicityGen2"), multiplicity1);
1461+
hMChists.fill(HIST("MCcorrections/hMultvsCent"), multiplicity1, multMC);
14461462

14471463
// Event loss
14481464
if (isSelectedEvent) {
14491465
hMChists.fill(HIST("MCcorrections/MultiplicityRec"), multiplicityGen);
1466+
hMChists.fill(HIST("MCcorrections/MultiplicityRec2"), multiplicity1);
14501467
}
14511468

14521469
// Generated MC
@@ -1455,8 +1472,12 @@ struct HigherMassResonances {
14551472
continue;
14561473

14571474
hMChists.fill(HIST("MCcorrections/hSignalLossDenominator"), mcPart.pt(), multiplicityGen);
1475+
hMChists.fill(HIST("MCcorrections/hSignalLossDenominator2"), mcPart.pt(), multiplicity1);
1476+
hMChists.fill(HIST("MCcorrections/hSignalLossDenominator3"), mcPart.pt(), multMC);
14581477
if (isSelectedEvent) {
14591478
hMChists.fill(HIST("MCcorrections/hSignalLossNumerator"), mcPart.pt(), multiplicityGen);
1479+
hMChists.fill(HIST("MCcorrections/hSignalLossNumerator2"), mcPart.pt(), multiplicity1);
1480+
hMChists.fill(HIST("MCcorrections/hSignalLossNumerator3"), mcPart.pt(), multMC);
14601481
}
14611482
} // end loop on gen particles
14621483
}

0 commit comments

Comments
 (0)