Skip to content

Commit c2c94fc

Browse files
committed
optional occupancy selection for collisions
1 parent f56dc02 commit c2c94fc

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

PWGUD/Tasks/upcRhoAnalysis.cxx

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,8 @@ struct UpcRhoAnalysis {
199199
Configurable<int> collisionsNumContribsMaxCut{"collisionsNumContribsMaxCut", 2, "max number of contributors cut on collisions"};
200200
Configurable<float> znCommonEnergyCut{"znCommonEnergyCut", 0.0, "ZN common energy cut"};
201201
Configurable<float> znTimeCut{"znTimeCut", 2.0, "ZN time cut"};
202+
Configurable<bool> cutOccupancy{"cutOccupancy", true, "cut on collision occupancy?"};
203+
Configurable<float> occupancyCut{"occupancyCut", 1000.0, "occupancy cut"};
202204

203205
Configurable<float> tracksTpcNSigmaPiCut{"tracksTpcNSigmaPiCut", 3.0, "TPC nSigma pion cut"};
204206
Configurable<bool> rejectLowerProbPairs{"rejectLowerProbPairs", true, "reject track pairs with lower El or Ka PID radii"};
@@ -261,7 +263,7 @@ struct UpcRhoAnalysis {
261263
rQC.addClone("QC/collisions/all/", "QC/collisions/trackSelections/");
262264
rQC.addClone("QC/collisions/all/", "QC/collisions/systemSelections/");
263265

264-
std::vector<std::string> collisionSelectionCounterLabels = {"all collisions", "rapidity gap", "ITS-TPC vertex", "same bunch pile-up", "ITS ROF border", "TF border", "#it{z} position", "number of contributors", "RCT selections", "reco flag selection"};
266+
std::vector<std::string> collisionSelectionCounterLabels = {"all collisions", "rapidity gap", "ITS-TPC vertex", "same bunch pile-up", "ITS ROF border", "TF border", "#it{z} position", "number of contributors", "RCT selections", "reco flag selection", "occupancy selection"};
265267
rQC.add("QC/collisions/hSelectionCounter", ";;collisions passing selections", kTH1D, {{static_cast<int>(collisionSelectionCounterLabels.size()), -0.5, static_cast<float>(collisionSelectionCounterLabels.size()) - 0.5}});
266268
rQC.add("QC/collisions/hSelectionCounterPerRun", ";;run number;collisions passing selections", kTH2D, {{static_cast<int>(collisionSelectionCounterLabels.size()), -0.5, static_cast<float>(collisionSelectionCounterLabels.size()) - 0.5}, runNumberAxis});
267269
for (int i = 0; i < static_cast<int>(collisionSelectionCounterLabels.size()); ++i) {
@@ -585,6 +587,13 @@ struct UpcRhoAnalysis {
585587
rQC.fill(HIST("QC/collisions/hSelectionCounterPerRun"), 9, runIndex);
586588
}
587589

590+
if (cutOccupancy) {
591+
if (collision.occupancyInTime() > occupancyCut)
592+
return false;
593+
rQC.fill(HIST("QC/collisions/hSelectionCounter"), 10);
594+
rQC.fill(HIST("QC/collisions/hSelectionCounterPerRun"), 10, runIndex);
595+
}
596+
588597
// if all selections passed
589598
return true;
590599
}

0 commit comments

Comments
 (0)