Skip to content

Commit 4cfbe8a

Browse files
rootroot
authored andcommitted
fix selectionsFlag in selector and fix candidates used in taskOmegac0
1 parent fcfdaec commit 4cfbe8a

File tree

2 files changed

+19
-7
lines changed

2 files changed

+19
-7
lines changed

PWGHF/D2H/Tasks/taskOmegac0ToOmegapi.cxx

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ using namespace o2::framework::expressions;
3636
struct HfTaskOmegac0 {
3737
Configurable<double> yCandGenMax{"yCandGenMax", 0.5, "max. gen particle rapidity"};
3838
Configurable<double> yCandRecoMax{"yCandRecoMax", 0.8, "max. cand. rapidity"};
39-
Configurable<int> selectionFlagHf{"selectionFlagHf", 1, "Selection Flag for HF flagged candidates"};
39+
Configurable<int> selectionFlagOmegac0{"selectionFlagOmegac0", 1, "Selection Flag for Omegac0 candidates"};
4040

4141
// ML inference
4242
Configurable<bool> applyMl{"applyMl", false, "Flag to apply ML selections"};
@@ -60,7 +60,7 @@ struct HfTaskOmegac0 {
6060
using Omegac0CandidatesKF = soa::Join<Omegac0Candidates, aod::HfOmegacKf>;
6161
using OmegaC0CandidatesMcKF = soa::Join<Omegac0CandidatesKF, aod::HfToOmegaPiMCRec>;
6262

63-
using Omegac0CandidatesMl = soa::Join<aod::HfCandToOmegaPi, aod::HfMlSelOmegacToOmegaPi>;
63+
using Omegac0CandidatesMl = soa::Join<Omegac0Candidates, aod::HfMlSelOmegacToOmegaPi>;
6464
using Omegac0CandidatesMlKF = soa::Join<Omegac0CandidatesMl, aod::HfOmegacKf>;
6565
using Omegac0CandidatesMlMcKF = soa::Join<Omegac0CandidatesMlKF, aod::HfToOmegaPiMCRec>;
6666

@@ -69,6 +69,9 @@ struct HfTaskOmegac0 {
6969
PresliceUnsorted<CollisionsWithMcLabels> colPerMcCollision = aod::mccollisionlabel::mcCollisionId;
7070
SliceCache cache;
7171

72+
Partition<Omegac0CandidatesKF> selectedOmegac0CandidatesKF = aod::hf_sel_toomegapii::resultSelections >= selectionFlagOmegac0;
73+
Partition<Omegac0CandidatesMlKF> selectedOmegac0CandidatesMlKF = aod::hf_sel_toomegapi::resultSelections >= selectionFlagOmegac0;
74+
7275
HistogramRegistry registry{
7376
"registry",
7477
{}};
@@ -140,16 +143,16 @@ struct HfTaskOmegac0 {
140143
}
141144
}
142145

143-
void processDataWithKFParticle(Omegac0CandidatesKF const& omegac0CandidatesKF, Collisions const& collisions)
146+
void processDataWithKFParticle(Omegac0CandidatesKF const&, Collisions const& collisions)
144147
{
145-
processData<false>(omegac0CandidatesKF, collisions);
148+
processData<false>(selectedOmegac0CandidatesKF, collisions);
146149
}
147150
PROCESS_SWITCH(HfTaskOmegac0, processDataWithKFParticle, "process taskOmegac0 with KFParticle", false);
148151
// TODO: add processKFParticleCent
149152

150-
void processDataWithKFParticleMl(Omegac0CandidatesMlKF const& omegac0CandidatesMlKF, Collisions const& collisions)
153+
void processDataWithKFParticleMl(Omegac0CandidatesMlKF const&, Collisions const& collisions)
151154
{
152-
processData<true>(omegac0CandidatesMlKF, collisions);
155+
processData<true>(selectedOmegac0CandidatesMlKF, collisions);
153156
}
154157
PROCESS_SWITCH(HfTaskOmegac0, processDataWithKFParticleMl, "process taskOmegac0 with KFParticle and ML selections", false);
155158
// TODO: add processKFParticleMlCent
@@ -175,7 +178,7 @@ struct HfTaskOmegac0 {
175178
massOmegac0 = candidate.invMassCharmBaryon();
176179
auto ptCandidate = candidate.ptCharmBaryon();
177180
auto rapidityCandidate = candidate.kfRapOmegac();
178-
181+
if(candidate.resultSelections() >= selectionFlagOmegac0)
179182
if (candidate.flagMcMatchRec() == (1 << aod::hf_cand_xic0_omegac0::DecayType::OmegaczeroToOmegaPi)) {
180183
if constexpr (applyMl) {
181184
registry.fill(HIST("hBdtScoreVsMassVsPtVsPtBVsYVsOriginVsOmegac0Type"), candidate.mlProbOmegac()[0], massOmegac0, ptCandidate, rapidityCandidate, candidate.ptBhadMotherPart(), candidate.originRec(), numPvContributors);

PWGHF/TableProducer/candidateSelectorOmegac0ToOmegaPi.cxx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -669,20 +669,26 @@ struct HfCandidateSelectorToOmegaPi {
669669
if (resultSelections) {
670670
registry.fill(HIST("hStatusCheck"), 0.5);
671671
}
672+
} else {
673+
resultSelections = false;
672674
}
673675

674676
if (statusPidPrFromLam == TrackSelectorPID::Accepted && statusPidPiFromLam == TrackSelectorPID::Accepted && statusPidKaFromCasc == TrackSelectorPID::Accepted) {
675677
statusPidCascade = true;
676678
if (resultSelections) {
677679
registry.fill(HIST("hStatusCheck"), 1.5);
678680
}
681+
} else {
682+
resultSelections = false;
679683
}
680684

681685
if (statusPidPrFromLam == TrackSelectorPID::Accepted && statusPidPiFromLam == TrackSelectorPID::Accepted && statusPidKaFromCasc == TrackSelectorPID::Accepted && statusPidPiFromCharmBaryon == TrackSelectorPID::Accepted) {
682686
statusPidCharmBaryon = true;
683687
if (resultSelections) {
684688
registry.fill(HIST("hStatusCheck"), 2.5);
685689
}
690+
} else {
691+
resultSelections = false;
686692
}
687693

688694
// invariant mass cuts
@@ -698,6 +704,7 @@ struct HfCandidateSelectorToOmegaPi {
698704
}
699705
} else {
700706
registry.fill(HIST("hSelMassLam"), 0);
707+
resultSelections = false;
701708
}
702709

703710
if (std::abs(invMassCascade - o2::constants::physics::MassOmegaMinus) < cascadeMassWindow) {
@@ -708,6 +715,7 @@ struct HfCandidateSelectorToOmegaPi {
708715
}
709716
} else {
710717
registry.fill(HIST("hSelMassCasc"), 0);
718+
resultSelections = false;
711719
}
712720

713721
if ((invMassCharmBaryon >= invMassCharmBaryonMin) && (invMassCharmBaryon <= invMassCharmBaryonMax)) {
@@ -718,6 +726,7 @@ struct HfCandidateSelectorToOmegaPi {
718726
}
719727
} else {
720728
registry.fill(HIST("hSelMassCharmBaryon"), 0);
729+
resultSelections = false;
721730
}
722731
// ML selections
723732
if constexpr (ConstructMethod == hf_cand_casc_lf::ConstructMethod::KfParticle) {

0 commit comments

Comments
 (0)