Skip to content

Commit 2ae303d

Browse files
committed
Fix MC selections
1 parent 0eaac50 commit 2ae303d

File tree

1 file changed

+9
-13
lines changed

1 file changed

+9
-13
lines changed

PWGHF/TableProducer/derivedDataCreatorXicToXiPiPi.cxx

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ struct HfDerivedDataCreatorXicToXiPiPi {
101101
using THfCandDaughtersMl = aod::Cascades;
102102

103103
Filter filterSelectCandidates = (aod::hf_sel_candidate_xic::isSelXicToXiPiPi & static_cast<int8_t>(BIT(o2::aod::hf_sel_candidate_xic::XicToXiPiPiSelectionStep::RecoMl - 1))) != 0;
104-
Filter filterMcGenMatching = nabs(aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchGen) == static_cast<int8_t>(DecayType::XicToXiPiPi);
104+
Filter filterMcGenMatching = aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchGen != 0;
105105

106106
Preslice<SelectedCandidates> candidatesPerCollision = aod::hf_cand::collisionId;
107107
Preslice<SelectedCandidatesMc> candidatesMcPerCollision = aod::hf_cand::collisionId;
@@ -115,10 +115,10 @@ struct HfDerivedDataCreatorXicToXiPiPi {
115115
Partition<SelectedCandidatesMl> candidatesMlAll = aod::hf_sel_candidate_xic::isSelXicToXiPiPi >= 0;
116116
Partition<SelectedCandidatesMcMl> candidatesMcMlAll = aod::hf_sel_candidate_xic::isSelXicToXiPiPi >= 0;
117117
// partitions for signal and background
118-
Partition<SelectedCandidatesMc> candidatesMcSig = nabs(aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec) == static_cast<int8_t>(DecayType::XicToXiPiPi);
119-
Partition<SelectedCandidatesMc> candidatesMcBkg = nabs(aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec) != static_cast<int8_t>(DecayType::XicToXiPiPi);
120-
Partition<SelectedCandidatesMcMl> candidatesMcMlSig = nabs(aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec) == static_cast<int8_t>(DecayType::XicToXiPiPi);
121-
Partition<SelectedCandidatesMcMl> candidatesMcMlBkg = nabs(aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec) != static_cast<int8_t>(DecayType::XicToXiPiPi);
118+
Partition<SelectedCandidatesMc> candidatesMcSig = aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec != 0;
119+
Partition<SelectedCandidatesMc> candidatesMcBkg = aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec == 0;
120+
Partition<SelectedCandidatesMcMl> candidatesMcMlSig = aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec != 0;
121+
Partition<SelectedCandidatesMcMl> candidatesMcMlBkg = aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec == 0;
122122

123123
void init(InitContext const&)
124124
{
@@ -268,7 +268,7 @@ struct HfDerivedDataCreatorXicToXiPiPi {
268268
flagMcRec = candidate.flagMcMatchRec();
269269
origin = candidate.originMcRec();
270270
if constexpr (onlyBkg) {
271-
if (std::abs(flagMcRec) == DecayType::XicToXiPiPi) {
271+
if (TESTBIT(std::abs(flagMcRec), DecayType::XicToXiPiPi)) {
272272
continue;
273273
}
274274
if (downSampleBkgFactor < 1.) {
@@ -279,23 +279,19 @@ struct HfDerivedDataCreatorXicToXiPiPi {
279279
}
280280
}
281281
if constexpr (onlySig) {
282-
if (std::abs(flagMcRec) != DecayType::XicToXiPiPi) {
282+
if (!TESTBIT(std::abs(flagMcRec), DecayType::XicToXiPiPi)) {
283283
continue;
284284
}
285285
}
286286
}
287-
// auto prongPi0FromXic = candidate.template pi0_as<TracksWPid>();
288-
double y = hfHelper.yXic(candidate);
289287
float massXicToXiPiPi = candidate.invMassXicPlus();
290288
double ct = hfHelper.ctXic(candidate);
289+
double y = hfHelper.yXic(candidate);
291290
std::vector<float> mlScoreXicToXiPiPi;
292-
// float mlScoreXicToXiPiPi{-1.f};
293-
// std::vector<float> mlScoresXi;
294-
// bool isXi = prongPi0FromXic.sign() < 0;
295291
if constexpr (isMl) {
296292
std::copy(candidate.mlProbXicToXiPiPi().begin(), candidate.mlProbXicToXiPiPi().end(), std::back_inserter(mlScoreXicToXiPiPi));
297293
}
298-
// flag = 0 for Xi pi-, flag = 1 for Xibar pi+
294+
// FIXME: Remove candFlag?
299295
fillTablesCandidate(candidate, 1, massXicToXiPiPi, ct, y, flagMcRec, origin, mlScoreXicToXiPiPi);
300296
}
301297
}

0 commit comments

Comments
 (0)