Skip to content

Commit d840355

Browse files
sawankumawatSawan Sawan
andauthored
[PWGLF] Added strangeness TOF selection for V0 (#13669)
Co-authored-by: Sawan Sawan <sawan.sawan@cern.ch>
1 parent 2336e0e commit d840355

File tree

1 file changed

+50
-16
lines changed

1 file changed

+50
-16
lines changed

PWGLF/Tasks/Resonances/higherMassResonances.cxx

Lines changed: 50 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -527,7 +527,7 @@ struct HigherMassResonances {
527527
}
528528

529529
template <typename T, typename V0s>
530-
bool isSelectedV0Daughter(T const& track, float charge, double nsigmaV0DaughterTPC, V0s const& /*candidate*/)
530+
bool isSelectedV0Daughter(T const& track, float charge, double nsigmaV0DaughterTPC, V0s const& v0candidate)
531531
{
532532
if (config.qAPID) {
533533
// Filling the PID of the V0 daughters in the region of the K0 peak.
@@ -576,7 +576,13 @@ struct HigherMassResonances {
576576
}
577577
rEventSelection.fill(HIST("htrackscheck_v0_daughters"), 8.5);
578578

579-
// if (std::abs())
579+
if (std::abs(v0candidate.tofNSigmaK0PiPlus()) > config.confDaughPIDCutTOF && track.hasTOF()) {
580+
return false;
581+
}
582+
583+
if (std::abs(v0candidate.tofNSigmaK0PiMinus()) > config.confDaughPIDCutTOF && track.hasTOF()) {
584+
return false;
585+
}
580586

581587
if (config.qAPID) {
582588
(charge == 1) ? rKzeroShort.fill(HIST("hNSigmaPosPionK0s_after"), track.tpcInnerParam(), track.tpcNSigmaPi()) : rKzeroShort.fill(HIST("hNSigmaNegPionK0s_after"), track.tpcInnerParam(), track.tpcNSigmaPi());
@@ -586,7 +592,8 @@ struct HigherMassResonances {
586592
}
587593

588594
using EventCandidatesDerivedData = soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraStamps>;
589-
using V0CandidatesDerivedData = soa::Join<aod::V0CollRefs, aod::V0Cores, aod::V0Extras>;
595+
using V0CandidatesDerivedData = soa::Join<aod::V0CollRefs, aod::V0Cores, aod::V0Extras, aod::V0TOFPIDs, aod::V0TOFNSigmas>;
596+
// using DauTracks = soa::Join<aod::DauTrackExtras, aod::DauTrackTPCPIDs, aod::DauTrackTOFPIDs>;
590597
using DauTracks = soa::Join<aod::DauTrackExtras, aod::DauTrackTPCPIDs>;
591598

592599
template <typename TV0>
@@ -618,10 +625,20 @@ struct HigherMassResonances {
618625
return false;
619626
}
620627

628+
// // check TOF PID if TOF exists
629+
621630
if (config.isApplyDCAv0topv && (std::abs(v0.dcapostopv()) < config.cMaxV0DCA || std::abs(v0.dcanegtopv()) < config.cMaxV0DCA)) {
622631
return false;
623632
}
624633

634+
if (std::abs(v0.tofNSigmaK0PiPlus()) > config.confDaughPIDCutTOF && posTrackExtra.hasTOF()) {
635+
return false;
636+
}
637+
638+
if (std::abs(v0.tofNSigmaK0PiMinus()) > config.confDaughPIDCutTOF && negTrackExtra.hasTOF()) {
639+
return false;
640+
}
641+
625642
// rKzeroShort.fill(HIST("negative_pt"), negTrackExtra.pt());
626643
// rKzeroShort.fill(HIST("positive_pt"), posTrackExtra.pt());
627644
// rKzeroShort.fill(HIST("negative_eta"), negTrackExtra.eta());
@@ -662,11 +679,11 @@ struct HigherMassResonances {
662679
// Defining the type of the daughter tracks
663680
using EventCandidates = soa::Filtered<soa::Join<aod::Collisions, aod::EvSels, aod::FT0Mults, aod::FV0Mults, aod::MultZeqs, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::Mults, aod::PVMults>>;
664681
using TrackCandidates = soa::Filtered<soa::Join<aod::Tracks, aod::TrackSelection, aod::TracksExtra, aod::TracksDCA, aod::pidTPCFullPi, aod::pidTOFFullPi>>;
665-
using V0TrackCandidate = aod::V0Datas;
682+
using V0TrackCandidate = soa::Join<aod::V0Datas, aod::V0TOFPIDs, aod::V0TOFNSigmas>;
666683
// For Monte Carlo
667684
using EventCandidatesMC = soa::Join<aod::Collisions, aod::EvSels, aod::McCollisionLabels, aod::CentFT0Cs, aod::CentFT0Ms, aod::CentFT0As, aod::CentFV0As, aod::PVMults>;
668685
using TrackCandidatesMC = soa::Filtered<soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksDCA, aod::TrackSelection, aod::pidTPCFullKa, aod::pidTOFFullKa, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::McTrackLabels>>;
669-
using V0TrackCandidatesMC = soa::Filtered<soa::Join<aod::V0Datas, aod::McV0Labels>>;
686+
using V0TrackCandidatesMC = soa::Filtered<soa::Join<aod::V0Datas, aod::V0TOFPIDs, aod::V0TOFNSigmas, aod::McV0Labels>>;
670687
// zBeam direction in lab frame
671688

672689
template <typename T>
@@ -851,7 +868,7 @@ struct HigherMassResonances {
851868
// }
852869
}
853870

854-
void processSE(EventCandidates::iterator const& collision, TrackCandidates const& /*tracks*/, aod::V0Datas const& V0s)
871+
void processSE(EventCandidates::iterator const& collision, TrackCandidates const& /*tracks*/, V0TrackCandidate const& V0s)
855872
{
856873
multiplicity = 0.0;
857874

@@ -921,16 +938,33 @@ struct HigherMassResonances {
921938
continue;
922939
}
923940

924-
if (postrack1.hasTOF() && negtrack1.hasTOF() && postrack2.hasTOF() && negtrack2.hasTOF()) {
925-
double nTOFSigmaPos1{postrack1.tofNSigmaPi()};
926-
double nTOFSigmaNeg1{negtrack1.tofNSigmaPi()};
927-
double nTOFSigmaPos2{postrack2.tofNSigmaPi()};
928-
double nTOFSigmaNeg2{negtrack2.tofNSigmaPi()};
929-
if ((std::abs(nTOFSigmaPos1) > config.confDaughPIDCutTPC) || (std::abs(nTOFSigmaNeg1) > config.confDaughPIDCutTPC) ||
930-
(std::abs(nTOFSigmaPos2) > config.confDaughPIDCutTPC) || (std::abs(nTOFSigmaNeg2) > config.confDaughPIDCutTPC)) {
931-
continue;
932-
}
933-
}
941+
// if (postrack1.hasTOF()) {
942+
// double nTOFSigmaPos1{postrack1.tofNSigmaPi()};
943+
// if ((std::abs(nTOFSigmaPos1) > config.confDaughPIDCutTOF)) {
944+
// continue;
945+
// }
946+
// }
947+
948+
// if (negtrack1.hasTOF()) {
949+
// double nTOFSigmaNeg1{negtrack1.tofNSigmaPi()};
950+
// if (std::abs(nTOFSigmaNeg1) > config.confDaughPIDCutTOF) {
951+
// continue;
952+
// }
953+
// }
954+
955+
// if (postrack2.hasTOF()) {
956+
// double nTOFSigmaPos2{postrack2.tofNSigmaPi()};
957+
// if ((std::abs(nTOFSigmaPos2) > config.confDaughPIDCutTOF)) {
958+
// continue;
959+
// }
960+
// }
961+
962+
// if (negtrack2.hasTOF()) {
963+
// double nTOFSigmaNeg2{negtrack2.tofNSigmaPi()};
964+
// if (std::abs(nTOFSigmaNeg2) > config.confDaughPIDCutTOF) {
965+
// continue;
966+
// }
967+
// }
934968

935969
if (std::find(v0indexes.begin(), v0indexes.end(), v1.globalIndex()) == v0indexes.end()) {
936970
v0indexes.push_back(v1.globalIndex());

0 commit comments

Comments
 (0)