Skip to content

Commit 1683b4d

Browse files
author
Francesco Mazzaschi
committed
Add flag for PV casc contributors
1 parent 1c33e57 commit 1683b4d

File tree

2 files changed

+17
-3
lines changed

2 files changed

+17
-3
lines changed

PWGLF/DataModel/LFNonPromptCascadeTables.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ DECLARE_SOA_COLUMN(IsFromCharm, isFromCharm, bool);
3838
DECLARE_SOA_COLUMN(PvX, pvX, float);
3939
DECLARE_SOA_COLUMN(PvY, pvY, float);
4040
DECLARE_SOA_COLUMN(PvZ, pvZ, float);
41+
DECLARE_SOA_COLUMN(CascPVContribs, cascPVContribs, uint8_t);
42+
4143

4244
DECLARE_SOA_COLUMN(CascPt, cascPt, float);
4345
DECLARE_SOA_COLUMN(CascEta, cascEta, float);
@@ -115,6 +117,7 @@ DECLARE_SOA_TABLE(NPCascTable, "AOD", "NPCASCTABLE",
115117
NPCascadeTable::ITSClusSize,
116118
NPCascadeTable::HasReassociatedCluster,
117119
aod::collision::NumContrib,
120+
NPCascadeTable::CascPVContribs,
118121
aod::collision::CollisionTimeRes,
119122
NPCascadeTable::PvX,
120123
NPCascadeTable::PvY,
@@ -173,6 +176,7 @@ DECLARE_SOA_TABLE(NPCascTableNT, "AOD", "NPCASCTABLENT",
173176
NPCascadeTable::ITSClusSize,
174177
NPCascadeTable::HasReassociatedCluster,
175178
aod::collision::NumContrib,
179+
NPCascadeTable::CascPVContribs,
176180
aod::collision::CollisionTimeRes,
177181
NPCascadeTable::PvX,
178182
NPCascadeTable::PvY,
@@ -237,6 +241,7 @@ DECLARE_SOA_TABLE(NPCascTableMC, "AOD", "NPCASCTABLEMC",
237241
NPCascadeTable::IsFromBeauty,
238242
NPCascadeTable::IsFromCharm,
239243
aod::collision::NumContrib,
244+
NPCascadeTable::CascPVContribs,
240245
aod::collision::CollisionTimeRes,
241246
NPCascadeTable::PvX,
242247
NPCascadeTable::PvY,
@@ -309,6 +314,7 @@ DECLARE_SOA_TABLE(NPCascTableMCNT, "AOD", "NPCASCTABLEMCNT",
309314
NPCascadeTable::IsFromBeauty,
310315
NPCascadeTable::IsFromCharm,
311316
aod::collision::NumContrib,
317+
NPCascadeTable::CascPVContribs,
312318
aod::collision::CollisionTimeRes,
313319
NPCascadeTable::PvX,
314320
NPCascadeTable::PvY,

PWGLF/Tasks/Strangeness/nonPromptCascade.cxx

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ struct NPCascCandidate {
6565
bool isFromBeauty;
6666
bool isFromCharm;
6767
uint16_t pvContributors;
68+
uint8_t cascPVContribs;
6869
float pvTimeResolution;
6970
float pvX;
7071
float pvY;
@@ -285,6 +286,12 @@ struct NonPromptCascadeTask {
285286
const auto& ntrack = v0.template negTrack_as<TrackType>();
286287
const auto& protonTrack = bachelor.sign() > 0 ? ntrack : ptrack;
287288
const auto& pionTrack = bachelor.sign() > 0 ? ptrack : ntrack;
289+
290+
// first bit for the strange track, second for pos v0, third for neg v0, fourth for bachelor
291+
uint8_t cascPVContribs = 0;
292+
cascPVContribs |= ptrack.isPVContributor() << 1;
293+
cascPVContribs |= ntrack.isPVContributor() << 2;
294+
cascPVContribs |= bachelor.isPVContributor() << 3;
288295

289296
mRegistry.fill(HIST("h_PIDcutsXi"), 0, 1.322);
290297
mRegistry.fill(HIST("h_PIDcutsOmega"), 0, 1.675);
@@ -422,6 +429,7 @@ struct NonPromptCascadeTask {
422429
int trackedCascGlobalIndex{-1}, itsTrackGlobalIndex{-1}, cascITSclusters{-1};
423430
if constexpr (requires { candidate.track(); }) {
424431
const auto& track = candidate.template track_as<TrackType>();
432+
cascPVContribs |= track.isPVContributor() << 0;
425433
const auto& ITStrack = candidate.template itsTrack_as<TrackType>();
426434
auto trackTrkParCov = getTrackParCov(track);
427435
o2::base::Propagator::Instance()->propagateToDCA(primaryVertex, trackTrkParCov, mBz, 2.f, matCorr, &motherDCA);
@@ -447,7 +455,7 @@ struct NonPromptCascadeTask {
447455
float mc = collision.multFT0C();
448456
float ma = collision.multFT0A();
449457
candidates.emplace_back(NPCascCandidate{mcParticleID, trackedCascGlobalIndex, itsTrackGlobalIndex, candidate.collisionId(), matchingChi2, deltaPtITSCascade, cascITSclsSize, hasReassociatedClusters, isGoodMatch, isGoodCascade, pdgCodeMom, itsTrackPDG, fromHF[0], fromHF[1],
450-
collision.numContrib(), collision.collisionTimeRes(), primaryVertex.getX(), primaryVertex.getY(), primaryVertex.getZ(),
458+
collision.numContrib(), cascPVContribs, collision.collisionTimeRes(), primaryVertex.getX(), primaryVertex.getY(), primaryVertex.getZ(),
451459
cascadeLvector.pt(), cascadeLvector.eta(), cascadeLvector.phi(),
452460
protonTrack.pt(), protonTrack.eta(), pionTrack.pt(), pionTrack.eta(), bachelor.pt(), bachelor.eta(),
453461
motherDCA.getY(), motherDCA.getZ(), protonDCA.getY(), protonDCA.getZ(), pionDCA.getY(), pionDCA.getZ(), bachDCA.getY(), bachDCA.getZ(),
@@ -465,7 +473,7 @@ struct NonPromptCascadeTask {
465473
{
466474
for (const auto& c : candidates) {
467475
getDataTable<CascadeType>()(c.matchingChi2, c.deltaPt, c.itsClusSize, c.hasReassociatedCluster,
468-
c.pvContributors, c.pvTimeResolution, c.pvX, c.pvY, c.pvZ,
476+
c.pvContributors, c.cascPVContribs, c.pvTimeResolution, c.pvX, c.pvY, c.pvZ,
469477
c.cascPt, c.cascEta, c.cascPhi,
470478
c.protonPt, c.protonEta, c.pionPt, c.pionEta, c.bachPt, c.bachEta,
471479
c.cascDCAxy, c.cascDCAz, c.protonDCAxy, c.protonDCAz, c.pionDCAxy, c.pionDCAz, c.bachDCAxy, c.bachDCAz,
@@ -492,7 +500,7 @@ struct NonPromptCascadeTask {
492500
auto recCollision = collisions.iteratorAt(c.collisionID);
493501

494502
getMCtable<CascadeType>()(c.matchingChi2, c.deltaPt, c.itsClusSize, c.hasReassociatedCluster, c.isGoodMatch, c.isGoodCascade, c.pdgCodeMom, c.pdgCodeITStrack, c.isFromBeauty, c.isFromCharm,
495-
c.pvContributors, c.pvTimeResolution, c.pvX, c.pvY, c.pvZ, c.cascPt, c.cascEta, c.cascPhi,
503+
c.pvContributors,c.cascPVContribs, c.pvTimeResolution, c.pvX, c.pvY, c.pvZ, c.cascPt, c.cascEta, c.cascPhi,
496504
c.protonPt, c.protonEta, c.pionPt, c.pionEta, c.bachPt, c.bachEta,
497505
c.cascDCAxy, c.cascDCAz, c.protonDCAxy, c.protonDCAz, c.pionDCAxy, c.pionDCAz, c.bachDCAxy, c.bachDCAz,
498506
c.casccosPA, c.v0cosPA, c.massXi, c.massOmega, c.massV0, c.cascRadius, c.v0radius, c.cascLength, c.v0length,

0 commit comments

Comments
 (0)