Skip to content

Commit 280ad16

Browse files
author
Prottay Das
committed
removed physical primary condition on phi meson for MC closure
1 parent c985c8c commit 280ad16

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

PWGCF/Tasks/correlations.cxx

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ struct CorrelationTask {
128128
Filter collisionVertexTypeFilter = (aod::collision::flags & static_cast<uint16_t>(aod::collision::CollisionFlagsRun2::Run2VertexerTracks)) == static_cast<uint16_t>(aod::collision::CollisionFlagsRun2::Run2VertexerTracks);
129129

130130
// Track filters
131-
Filter trackFilter = (nabs(aod::track::eta) < cfgCutEta) && (aod::track::pt > cfgCutPt) && ((requireGlobalTrackInFilter()) || (aod::track::isGlobalTrackSDD == (uint8_t) true));
131+
Filter trackFilter = (nabs(aod::track::eta) < cfgCutEta) && (aod::track::pt > cfgCutPt) && ((requireGlobalTrackInFilter()) || (aod::track::isGlobalTrackSDD == (uint8_t)true));
132132
Filter cfTrackFilter = (nabs(aod::cftrack::eta) < cfgCutEta) && (aod::cftrack::pt > cfgCutPt) && ((aod::track::trackType & (uint8_t)cfgTrackBitMask) == (uint8_t)cfgTrackBitMask);
133133

134134
// MC filters
@@ -430,6 +430,17 @@ struct CorrelationTask {
430430
bool checkObject(TTrack& track)
431431
{
432432
if constexpr (step <= CorrelationContainer::kCFStepAnaTopology) {
433+
// If using MC trigger PDGs, allow ONLY those PDGs to bypass isPhysicalPrimary
434+
if (!cfgMcTriggerPDGs->empty()) {
435+
// track has pdgCode in this compilation branch (you only call checkObject where that is true)
436+
const bool isWantedTrigger =
437+
std::find(cfgMcTriggerPDGs->begin(), cfgMcTriggerPDGs->end(), track.pdgCode()) != cfgMcTriggerPDGs->end();
438+
if (isWantedTrigger) {
439+
return true; // allow phi, K*, etc. even if not physical primary
440+
}
441+
// For everything else keep original definition
442+
return track.isPhysicalPrimary();
443+
}
433444
return track.isPhysicalPrimary();
434445
} else if constexpr (step == CorrelationContainer::kCFStepTrackedOnlyPrim) {
435446
return track.isPhysicalPrimary() && (track.flags() & aod::cfmcparticle::kReconstructed);

0 commit comments

Comments
 (0)