Skip to content

Commit 5c2d97e

Browse files
committed
Added configurable to select FT0C or FT0M
1 parent 3c05d73 commit 5c2d97e

File tree

1 file changed

+35
-6
lines changed

1 file changed

+35
-6
lines changed

PWGLF/Tasks/Strangeness/strangenessInJetsIons.cxx

Lines changed: 35 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -76,11 +76,15 @@ using namespace o2::constants::math;
7676
using std::array;
7777

7878
// Define convenient aliases for joined AOD tables
79-
using SelCollisions = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs>;
79+
using SelCollisions = soa::Join<aod::Collisions,
80+
aod::EvSels,
81+
aod::CentFT0Cs,
82+
aod::CentFT0Ms>;
8083
using SimCollisions = soa::Join<aod::McCollisionLabels,
8184
aod::Collisions,
8285
aod::EvSels,
83-
aod::CentFT0Cs>;
86+
aod::CentFT0Cs,
87+
aod::CentFT0Ms>;
8488
using DaughterTracks = soa::Join<aod::Tracks, aod::TracksIU, aod::TracksExtra, aod::TracksCovIU, aod::TracksDCA,
8589
aod::pidTPCFullPi, aod::pidTPCFullKa, aod::pidTPCFullPr,
8690
aod::pidTOFFullPi, aod::pidTOFFullKa, aod::pidTOFFullPr>;
@@ -123,6 +127,7 @@ struct StrangenessInJetsIons {
123127
Configurable<double> deltaEtaEdge{"deltaEtaEdge", 0.05, "eta gap from detector edge"};
124128
Configurable<bool> cfgSkimmedProcessing{"cfgSkimmedProcessing", false, "Enable processing of skimmed data"};
125129
Configurable<std::string> triggerName{"triggerName", "fOmega", "Software trigger name"};
130+
Configurable<std::string> centrEstimator{"centrEstimator", "FT0C", "Select centrality estimator. Options: FT0C, FT0M"};
126131

127132
// Event selection
128133
Configurable<bool> requireNoSameBunchPileup{"requireNoSameBunchPileup", true, "Require kNoSameBunchPileup selection"};
@@ -204,7 +209,17 @@ struct StrangenessInJetsIons {
204209

205210
// Define binning and axis specifications for multiplicity, eta, pT, PID, and invariant mass histograms
206211
std::vector<double> multBinning = {0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100};
207-
AxisSpec multAxis = {multBinning, "FT0C percentile"};
212+
std::string multAxTitle;
213+
std::string centrEstimatorStr = static_cast<std::string>(centrEstimator);
214+
if (centrEstimatorStr == "FT0C") {
215+
multAxTitle = "FT0C percentile";
216+
} else if (centrEstimatorStr == "FT0M") {
217+
multAxTitle = "FT0M percentile";
218+
} else {
219+
LOG(fatal) << "Centrality estimator " << centrEstimatorStr << " not available. Exit." << endl;
220+
}
221+
AxisSpec multAxis = {multBinning, multAxTitle};
222+
208223
const AxisSpec ptAxis{100, 0.0, 10.0, "#it{p}_{T} (GeV/#it{c})"};
209224
const AxisSpec invMassK0sAxis{200, 0.44, 0.56, "m_{#pi#pi} (GeV/#it{c}^{2})"};
210225
const AxisSpec invMassLambdaAxis{200, 1.09, 1.14, "m_{p#pi} (GeV/#it{c}^{2})"};
@@ -1140,7 +1155,12 @@ struct StrangenessInJetsIons {
11401155
registryData.fill(HIST("number_of_events_data"), 7.5);
11411156

11421157
// Event multiplicity
1143-
const float multiplicity = collision.centFT0C();
1158+
float multiplicity;
1159+
if (static_cast<std::string>(centrEstimator) == "FT0C") {
1160+
multiplicity = collision.centFT0C();
1161+
} else {
1162+
multiplicity = collision.centFT0M();
1163+
}
11441164

11451165
// Fill event multiplicity
11461166
registryData.fill(HIST("number_of_events_vsmultiplicity"), multiplicity);
@@ -1351,7 +1371,11 @@ struct StrangenessInJetsIons {
13511371
if (!selectRecoEvent(recoColl))
13521372
continue;
13531373

1354-
multiplicity = recoColl.centFT0C();
1374+
if (static_cast<std::string>(centrEstimator) == "FT0C") {
1375+
multiplicity = recoColl.centFT0C();
1376+
} else {
1377+
multiplicity = recoColl.centFT0M();
1378+
}
13551379
// LOGF(info, " MC GEN index: %d", collision.globalIndex());
13561380
// LOGF(info, " MC RECO index: %d", recoColl.mcCollisionId());
13571381
// LOGF(info, " multiplicity: %f", multiplicity);
@@ -1668,7 +1692,12 @@ struct StrangenessInJetsIons {
16681692
registryMC.fill(HIST("number_of_events_mc_rec"), 4.5);
16691693

16701694
// Event multiplicity
1671-
const float multiplicity = collision.centFT0C();
1695+
float multiplicity;
1696+
if (static_cast<std::string>(centrEstimator) == "FT0C") {
1697+
multiplicity = collision.centFT0C();
1698+
} else {
1699+
multiplicity = collision.centFT0M();
1700+
}
16721701

16731702
// Number of V0 and cascades per collision
16741703
auto v0sPerColl = fullV0s.sliceBy(perCollisionV0, collision.globalIndex());

0 commit comments

Comments
 (0)