Skip to content

Commit 519ac40

Browse files
[PWGCF] added Event_cut for removing time ranges with dead ITS - dips (#12475)
1 parent 7c69664 commit 519ac40

File tree

4 files changed

+18
-6
lines changed

4 files changed

+18
-6
lines changed

PWGCF/Femto3D/DataModel/singletrackselector.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ DECLARE_SOA_DYNAMIC_COLUMN(dIsGoodZvtxFT0vsPV, isGoodZvtxFT0vsPV, [](uint64_t se
135135
DECLARE_SOA_DYNAMIC_COLUMN(dIsVertexITSTPC, isVertexITSTPC, [](uint64_t selBit) -> bool { return TESTBIT(selBit, evsel::kIsVertexITSTPC); });
136136
DECLARE_SOA_DYNAMIC_COLUMN(dIsVertexTOForTRDmatched, isVertexTOForTRDmatched, [](uint64_t selBit) -> int { return static_cast<int>(TESTBIT(selBit, evsel::kIsVertexTOFmatched)) + static_cast<int>(TESTBIT(selBit, evsel::kIsVertexTRDmatched)); });
137137
DECLARE_SOA_DYNAMIC_COLUMN(dNoCollInTimeRangeStandard, noCollInTimeRangeStandard, [](uint64_t selBit) -> bool { return TESTBIT(selBit, evsel::kNoCollInTimeRangeStandard); });
138-
138+
DECLARE_SOA_DYNAMIC_COLUMN(dIsGoodITSLayersAll, isGoodITSLayersAll, [](uint64_t selBit) -> bool { return TESTBIT(selBit, evsel::kIsGoodITSLayersAll); });
139139
} // namespace singletrackselector
140140

141141
DECLARE_SOA_TABLE(SingleCollSels, "AOD", "SINGLECOLLSEL", // Table of the variables for single track selection.
@@ -154,7 +154,8 @@ DECLARE_SOA_TABLE(SingleCollExtras_v1, "AOD", "SINGLECOLLEXTR1", // Joinable col
154154
singletrackselector::dIsGoodZvtxFT0vsPV<evsel::Selection>,
155155
singletrackselector::dIsVertexITSTPC<evsel::Selection>,
156156
singletrackselector::dIsVertexTOForTRDmatched<evsel::Selection>,
157-
singletrackselector::dNoCollInTimeRangeStandard<evsel::Selection>);
157+
singletrackselector::dNoCollInTimeRangeStandard<evsel::Selection>,
158+
singletrackselector::dIsGoodITSLayersAll<evsel::Selection>);
158159

159160
using SingleCollExtras = SingleCollExtras_v1;
160161

PWGCF/Femto3D/Tasks/femto3dPairTask.cxx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ struct FemtoCorrelations {
5555
Configurable<bool> _requestVertexITSTPC{"requestVertexITSTPC", false, ""};
5656
Configurable<int> _requestVertexTOForTRDmatched{"requestVertexTOFmatched", 0, "0 -> no selectio; 1 -> vertex is matched to TOF or TRD; 2 -> matched to both;"};
5757
Configurable<bool> _requestNoCollInTimeRangeStandard{"requestNoCollInTimeRangeStandard", false, ""};
58+
Configurable<bool> _requestIsGoodITSLayersAll{"requestIsGoodITSLayersAll", false, "cut time intervals with dead ITS staves"};
5859
Configurable<std::pair<float, float>> _IRcut{"IRcut", std::pair<float, float>{0.f, 100.f}, "[min., max.] IR range to keep events within"};
5960
Configurable<std::pair<int, int>> _OccupancyCut{"OccupancyCut", std::pair<int, int>{0, 10000}, "[min., max.] occupancy range to keep events within"};
6061

@@ -423,6 +424,8 @@ struct FemtoCorrelations {
423424
continue;
424425
if (_requestNoCollInTimeRangeStandard && !track.template singleCollSel_as<soa::Filtered<FilteredCollisions>>().noCollInTimeRangeStandard())
425426
continue;
427+
if (_requestIsGoodITSLayersAll && !track.template singleCollSel_as<soa::Filtered<FilteredCollisions>>().isGoodITSLayersAll())
428+
continue;
426429
if (track.tpcFractionSharedCls() > _tpcFractionSharedCls || track.itsNCls() < _itsNCls)
427430
continue;
428431
if (track.template singleCollSel_as<soa::Filtered<FilteredCollisions>>().multPerc() < *_centBins.value.begin() || track.template singleCollSel_as<soa::Filtered<FilteredCollisions>>().multPerc() >= *(_centBins.value.end() - 1))
@@ -473,7 +476,8 @@ struct FemtoCorrelations {
473476
continue;
474477
if (_requestNoCollInTimeRangeStandard && !collision.noCollInTimeRangeStandard())
475478
continue;
476-
479+
if (_requestIsGoodITSLayersAll && !collision.isGoodITSLayersAll())
480+
continue;
477481
if (selectedtracks_1.find(collision.globalIndex()) == selectedtracks_1.end()) {
478482
if (IsIdentical)
479483
continue;

PWGCF/Femto3D/Tasks/femto3dPairTaskMC.cxx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ struct FemtoCorrelationsMC {
5151
Configurable<bool> _requestVertexITSTPC{"requestVertexITSTPC", false, ""};
5252
Configurable<int> _requestVertexTOForTRDmatched{"requestVertexTOFmatched", 0, "0 -> no selectio; 1 -> vertex is matched to TOF or TRD; 2 -> matched to both;"};
5353
Configurable<bool> _requestNoCollInTimeRangeStandard{"requestNoCollInTimeRangeStandard", false, ""};
54+
Configurable<bool> _requestIsGoodITSLayersAll{"requestIsGoodITSLayersAll", false, "cut time intervals with dead ITS staves"};
5455
Configurable<std::pair<float, float>> _IRcut{"IRcut", std::pair<float, float>{0.f, 100.f}, "[min., max.] IR range to keep events within"};
5556
Configurable<std::pair<int, int>> _OccupancyCut{"OccupancyCut", std::pair<int, int>{0, 10000}, "[min., max.] occupancy range to keep events within"};
5657

@@ -350,7 +351,8 @@ struct FemtoCorrelationsMC {
350351
continue;
351352
if (_requestNoCollInTimeRangeStandard && !track.template singleCollSel_as<soa::Filtered<FilteredCollisions>>().noCollInTimeRangeStandard())
352353
continue;
353-
354+
if (_requestIsGoodITSLayersAll && !track.template singleCollSel_as<soa::Filtered<FilteredCollisions>>().isGoodITSLayersAll())
355+
continue;
354356
unsigned int centBin = o2::aod::singletrackselector::getBinIndex<unsigned int>(track.template singleCollSel_as<soa::Filtered<FilteredCollisions>>().multPerc(), _centBins);
355357

356358
if (track.sign() == _sign_1 && (track.p() < _PIDtrshld_1 ? o2::aod::singletrackselector::TPCselection<true>(track, TPCcuts_1, _itsNSigma_1.value) : o2::aod::singletrackselector::TOFselection(track, TOFcuts_1, _tpcNSigmaResidual_1.value))) {
@@ -412,7 +414,8 @@ struct FemtoCorrelationsMC {
412414
continue;
413415
if (_requestNoCollInTimeRangeStandard && !collision.noCollInTimeRangeStandard())
414416
continue;
415-
417+
if (_requestIsGoodITSLayersAll && !collision.isGoodITSLayersAll())
418+
continue;
416419
if (selectedtracks_1.find(collision.globalIndex()) == selectedtracks_1.end()) {
417420
if (IsIdentical)
418421
continue;

PWGCF/Femto3D/Tasks/femto3dQA.cxx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ struct QAHistograms {
5252
Configurable<bool> _requestVertexITSTPC{"requestVertexITSTPC", false, ""};
5353
Configurable<int> _requestVertexTOForTRDmatched{"requestVertexTOFmatched", 0, "0 -> no selectio; 1 -> vertex is matched to TOF or TRD; 2 -> matched to both;"};
5454
Configurable<bool> _requestNoCollInTimeRangeStandard{"requestNoCollInTimeRangeStandard", false, ""};
55+
Configurable<bool> _requestIsGoodITSLayersAll{"requestIsGoodITSLayersAll", false, "cut time intervals with dead ITS staves"};
5556
Configurable<std::pair<float, float>> _IRcut{"IRcut", std::pair<float, float>{0.f, 100.f}, "[min., max.] IR range to keep events within"};
5657
Configurable<std::pair<int, int>> _OccupancyCut{"OccupancyCut", std::pair<int, int>{0, 10000}, "[min., max.] occupancy range to keep events within"};
5758

@@ -181,6 +182,8 @@ struct QAHistograms {
181182
continue;
182183
if (_requestNoCollInTimeRangeStandard && !collision.noCollInTimeRangeStandard())
183184
continue;
185+
if (_requestIsGoodITSLayersAll && !collision.isGoodITSLayersAll())
186+
continue;
184187
if (collision.multPerc() < _centCut.value.first || collision.multPerc() >= _centCut.value.second)
185188
continue;
186189
if (collision.hadronicRate() < _IRcut.value.first || collision.hadronicRate() >= _IRcut.value.second)
@@ -206,7 +209,8 @@ struct QAHistograms {
206209
continue;
207210
if (_requestNoCollInTimeRangeStandard && !track.template singleCollSel_as<ColsType>().noCollInTimeRangeStandard())
208211
continue;
209-
212+
if (_requestIsGoodITSLayersAll && !track.template singleCollSel_as<ColsType>().isGoodITSLayersAll())
213+
continue;
210214
if (std::fabs(track.template singleCollSel_as<ColsType>().posZ()) > _vertexZ)
211215
continue;
212216
if (track.template singleCollSel_as<ColsType>().multPerc() < _centCut.value.first || track.template singleCollSel_as<ColsType>().multPerc() >= _centCut.value.second)

0 commit comments

Comments
 (0)