Skip to content

Commit 398c722

Browse files
Nils314Nils Konert
andauthored
[PWGCF] Added PID bit checks for KStar-K0S-legacy function (#14501)
Co-authored-by: Nils Konert <ge87lel@nidoking.ktas.ph.tum.de>
1 parent dd7f6a9 commit 398c722

File tree

1 file changed

+18
-2
lines changed

1 file changed

+18
-2
lines changed

PWGCF/FemtoDream/TableProducer/femtoDreamProducerTaskForSpecificAnalysis.cxx

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,10 @@ struct FemtoDreamProducerTaskForSpecificAnalysis {
8080
Configurable<o2::aod::femtodreamparticle::cutContainerType> confChildNegCutV0{"confChildNegCutV0", 149, "Selection bit for negative child of V0"};
8181
Configurable<o2::aod::femtodreamparticle::cutContainerType> confChildNegTPCBitV0{"confChildNegTPCBitV0", 2, "PID TPC bit for negative child of V0"};
8282

83+
Configurable<bool> confCheckV0PIDcutLegacy{"confCheckV0PIDcutLegacy", false, "Flag for V0-children must fulfill PID cut in K0Short-K*-Legacy selection"};
84+
Configurable<aod::femtodreamparticle::cutContainerType> confV0ParticleType1TPCBitLegacy{"confV0ParticleType1TPCBitLegacy", 0, "PID TPC bit for first particle type of V0 child, checked in K0Short-K*-Legacy selection"};
85+
Configurable<aod::femtodreamparticle::cutContainerType> confV0ParticleType2TPCBitLegacy{"confV0ParticleType2TPCBitLegacy", 0, "PID TPC bit for second particle type of V0 child, checked in K0Short-K*-Legacy selection"};
86+
8387
/// Cascade selection
8488
Configurable<float> confMinInvMassCascade{"confMinInvMassCascade", 1.2, "Minimum invariant mass of Cascade (particle)"};
8589
Configurable<float> confMaxInvMassCascade{"confMaxInvMassCascade", 1.5, "Maximum invariant mass of Cascade (particle)"};
@@ -93,6 +97,10 @@ struct FemtoDreamProducerTaskForSpecificAnalysis {
9397

9498
Configurable<aod::femtodreamparticle::cutContainerType> daughPosCutBit{"daughPosCutBit", 2401446, "Selection bit for positive child of Reso"};
9599
Configurable<aod::femtodreamparticle::cutContainerType> daughNegCutBit{"daughNegCutBit", 2401445, "Selection bit for negative child of Reso"};
100+
101+
Configurable<bool> confCheckResoPIDcutLegacy{"confCheckResoPIDcutLegacy", false, "Flag for Reso-children must fulfill PID cut in K0Short-K*-Legacy selection"};
102+
Configurable<aod::femtodreamparticle::cutContainerType> confParticleType1TPCBitLegacy{"confParticleType1TPCBitLegacy", 0, "PID TPC bit for first particle type of Reso child, checked in K0Short-K*-Legacy selection"};
103+
Configurable<aod::femtodreamparticle::cutContainerType> confParticleType2TPCBitLegacy{"confParticleType2TPCBitLegacy", 0, "PID TPC bit for second particle type of Reso child, checked in K0Short-K*-Legacy selection"};
96104
} Reso;
97105

98106
// Partition for selected particles
@@ -801,7 +809,11 @@ struct FemtoDreamProducerTaskForSpecificAnalysis {
801809

802810
for (const auto& femtoParticle : parts) {
803811

804-
if (aod::femtodreamparticle::ParticleType::kResoChild == femtoParticle.partType()) {
812+
bool resoChildFulfillsPID = !Reso.confCheckResoPIDcutLegacy ||
813+
((femtoParticle.pidcut() & Reso.confParticleType1TPCBitLegacy) == Reso.confParticleType1TPCBitLegacy) ||
814+
((femtoParticle.pidcut() & Reso.confParticleType2TPCBitLegacy) == Reso.confParticleType2TPCBitLegacy);
815+
816+
if ((aod::femtodreamparticle::ParticleType::kResoChild == femtoParticle.partType()) && resoChildFulfillsPID) {
805817
std::vector<int> childIDs;
806818
const auto& children = femtoParticle.childrenIds();
807819
childIDs.push_back(children[0]);
@@ -841,7 +853,11 @@ struct FemtoDreamProducerTaskForSpecificAnalysis {
841853
femtoParticle.mAntiLambda());
842854
}
843855

844-
if (aod::femtodreamparticle::ParticleType::kV0Child == femtoParticle.partType()) {
856+
bool v0ChildFulfillsPID = !confCheckV0PIDcutLegacy ||
857+
((femtoParticle.pidcut() & confV0ParticleType1TPCBitLegacy) == confV0ParticleType1TPCBitLegacy) ||
858+
((femtoParticle.pidcut() & confV0ParticleType1TPCBitLegacy) == confV0ParticleType1TPCBitLegacy);
859+
860+
if ((aod::femtodreamparticle::ParticleType::kV0Child == femtoParticle.partType()) && v0ChildFulfillsPID) {
845861
std::vector<int> childIDs;
846862
const auto& children = femtoParticle.childrenIds();
847863
childIDs.push_back(children[0]);

0 commit comments

Comments
 (0)