Skip to content

Commit a49cc1d

Browse files
committed
[PWGEM/Dilepton] reject diquarks for taggingHFE
1 parent 119408e commit a49cc1d

2 files changed

Lines changed: 22 additions & 12 deletions

File tree

PWGEM/Dilepton/Tasks/taggingHFE.cxx

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -169,11 +169,11 @@ struct taggingHFE {
169169
Configurable<float> cfg_max_TPCNsigmaKa{"cfg_max_TPCNsigmaKa", +3, "max n sigma ka in TPC"};
170170
Configurable<float> cfg_min_TOFNsigmaKa{"cfg_min_TOFNsigmaKa", -3, "min n sigma ka in TOF"};
171171
Configurable<float> cfg_max_TOFNsigmaKa{"cfg_max_TOFNsigmaKa", +3, "max n sigma ka in TOF"};
172-
Configurable<float> cfg_min_TPCNsigmaPr{"cfg_min_TPCNsigmaPr", -3, "min n sigma pr in TPC"};
173-
Configurable<float> cfg_max_TPCNsigmaPr{"cfg_max_TPCNsigmaPr", +3, "max n sigma pr in TPC"};
174-
Configurable<float> cfg_min_TOFNsigmaPr{"cfg_min_TOFNsigmaPr", -3, "min n sigma pr in TOF"};
175-
Configurable<float> cfg_max_TOFNsigmaPr{"cfg_max_TOFNsigmaPr", +3, "max n sigma pr in TOF"};
176-
Configurable<bool> requirePiKaPr{"requirePiKaPr", true, "require hadron to be pion or kaon or proton"};
172+
// Configurable<float> cfg_min_TPCNsigmaPr{"cfg_min_TPCNsigmaPr", -3, "min n sigma pr in TPC"};
173+
// Configurable<float> cfg_max_TPCNsigmaPr{"cfg_max_TPCNsigmaPr", +3, "max n sigma pr in TPC"};
174+
// Configurable<float> cfg_min_TOFNsigmaPr{"cfg_min_TOFNsigmaPr", -3, "min n sigma pr in TOF"};
175+
// Configurable<float> cfg_max_TOFNsigmaPr{"cfg_max_TOFNsigmaPr", +3, "max n sigma pr in TOF"};
176+
Configurable<bool> requirePiKa{"requirePiKa", true, "require hadron to be pion or kaon or proton"};
177177
Configurable<bool> applyTOFif{"applyTOFif", false, "apply TOFif for hadron identification"};
178178
} hadronCut;
179179

@@ -477,23 +477,23 @@ struct taggingHFE {
477477
}
478478

479479
template <typename TCollision, typename TTrack>
480-
bool isPiKaPr(TCollision const& collision, TTrack const& track)
480+
bool isPiKa(TCollision const& collision, TTrack const& track)
481481
{
482482
float tofNSigmaPi = mapTOFNsigmaPiReassociated[std::make_pair(collision.globalIndex(), track.globalIndex())];
483483
float tofNSigmaKa = mapTOFNsigmaKaReassociated[std::make_pair(collision.globalIndex(), track.globalIndex())];
484-
float tofNSigmaPr = mapTOFNsigmaPrReassociated[std::make_pair(collision.globalIndex(), track.globalIndex())];
484+
// float tofNSigmaPr = mapTOFNsigmaPrReassociated[std::make_pair(collision.globalIndex(), track.globalIndex())];
485485
bool is_pi_included_TPC = hadronCut.cfg_min_TPCNsigmaPi < track.tpcNSigmaPi() && track.tpcNSigmaPi() < hadronCut.cfg_max_TPCNsigmaPi;
486486
bool is_pi_included_TOF = track.hasTOF() ? (hadronCut.cfg_min_TOFNsigmaPi < tofNSigmaPi && tofNSigmaPi < hadronCut.cfg_max_TOFNsigmaPi) : true;
487487
bool is_ka_included_TPC = hadronCut.cfg_min_TPCNsigmaKa < track.tpcNSigmaKa() && track.tpcNSigmaKa() < hadronCut.cfg_max_TPCNsigmaKa;
488488
bool is_ka_included_TOF = track.hasTOF() ? (hadronCut.cfg_min_TOFNsigmaKa < tofNSigmaKa && tofNSigmaKa < hadronCut.cfg_max_TOFNsigmaKa) : true;
489-
bool is_pr_included_TPC = hadronCut.cfg_min_TPCNsigmaPr < track.tpcNSigmaPr() && track.tpcNSigmaPr() < hadronCut.cfg_max_TPCNsigmaPr;
490-
bool is_pr_included_TOF = track.hasTOF() ? (hadronCut.cfg_min_TOFNsigmaPr < tofNSigmaPr && tofNSigmaPr < hadronCut.cfg_max_TOFNsigmaPr) : true;
489+
// bool is_pr_included_TPC = hadronCut.cfg_min_TPCNsigmaPr < track.tpcNSigmaPr() && track.tpcNSigmaPr() < hadronCut.cfg_max_TPCNsigmaPr;
490+
// bool is_pr_included_TOF = track.hasTOF() ? (hadronCut.cfg_min_TOFNsigmaPr < tofNSigmaPr && tofNSigmaPr < hadronCut.cfg_max_TOFNsigmaPr) : true;
491491
if (!hadronCut.applyTOFif) {
492492
is_pi_included_TOF = true;
493493
is_ka_included_TOF = true;
494-
is_pr_included_TOF = true;
494+
// is_pr_included_TOF = true;
495495
}
496-
return (is_pi_included_TPC && is_pi_included_TOF) || (is_ka_included_TPC && is_ka_included_TOF) || (is_pr_included_TPC && is_pr_included_TOF);
496+
return (is_pi_included_TPC && is_pi_included_TOF) || (is_ka_included_TPC && is_ka_included_TOF) /* || (is_pr_included_TPC && is_pr_included_TOF)*/;
497497
}
498498

499499
template <typename TCollision, typename TTrack>
@@ -730,7 +730,7 @@ struct taggingHFE {
730730
return false;
731731
}
732732

733-
if (hadronCut.requirePiKaPr && !isPiKaPr(collision, track)) {
733+
if (hadronCut.requirePiKa && !isPiKa(collision, track)) {
734734
return false;
735735
}
736736

PWGEM/Dilepton/Utils/MCUtilities.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,11 @@ bool isCharmBaryon(T const& track)
130130
return false;
131131
}
132132

133+
// reject diquarks
134+
if (std::abs(track.pdgCode()) == 4101 || std::abs(track.pdgCode()) == 4103 || std::abs(track.pdgCode()) == 4201 || std::abs(track.pdgCode()) == 4203 || std::abs(track.pdgCode()) == 4301 || std::abs(track.pdgCode()) == 4303 || std::abs(track.pdgCode()) == 4403) {
135+
return false;
136+
}
137+
133138
if (4000 < std::abs(track.pdgCode()) && std::abs(track.pdgCode()) < 5000) {
134139
return true;
135140
} else {
@@ -193,6 +198,11 @@ bool isBeautyBaryon(T const& track)
193198
return false;
194199
}
195200

201+
// reject diquarks
202+
if (std::abs(track.pdgCode()) == 5101 || std::abs(track.pdgCode()) == 5103 || std::abs(track.pdgCode()) == 5201 || std::abs(track.pdgCode()) == 5203 || std::abs(track.pdgCode()) == 5301 || std::abs(track.pdgCode()) == 5303 || std::abs(track.pdgCode()) == 5401 || std::abs(track.pdgCode()) == 5403 || std::abs(track.pdgCode()) == 5503) {
203+
return false;
204+
}
205+
196206
if (5000 < std::abs(track.pdgCode()) && std::abs(track.pdgCode()) < 6000) {
197207
return true;
198208
} else {

0 commit comments

Comments
 (0)