Skip to content

Commit d93de68

Browse files
ddobrigkalibuild
andauthored
[Common] centrality study task update (#8271)
Co-authored-by: ALICE Builder <alibuild@users.noreply.github.com>
1 parent 95edb4f commit d93de68

File tree

1 file changed

+28
-7
lines changed

1 file changed

+28
-7
lines changed

Common/Tasks/centralityStudy.cxx

Lines changed: 28 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -61,11 +61,16 @@ struct centralityStudy {
6161
Configurable<float> minTimeDelta{"minTimeDelta", -1.0f, "reject collision if another collision is this close or less in time"};
6262
Configurable<float> minFT0CforVertexZ{"minFT0CforVertexZ", 250, "minimum FT0C for vertex-Z profile calculation"};
6363

64+
Configurable<bool> sumFT0AC{"sumFT0AC", false, "sum FT0A and FT0C"};
65+
Configurable<float> scaleSignalFT0C{"scaleSignalFT0C", 1.00f, "scale FT0C/A+C signal for convenience"};
66+
Configurable<float> scaleSignalFV0A{"scaleSignalFV0A", 1.00f, "scale FV0A signal for convenience"};
67+
6468
// Configurable Axes
6569
ConfigurableAxis axisMultFT0C{"axisMultFT0C", {2000, 0, 100000}, "FT0C amplitude"};
6670
ConfigurableAxis axisMultPVContributors{"axisMultPVContributors", {200, 0, 6000}, "Number of PV Contributors"};
6771

6872
// For one-dimensional plots, where binning is no issue
73+
ConfigurableAxis axisMultUltraFineFV0A{"axisMultUltraFineFV0A", {60000, 0, 60000}, "FV0A amplitude"};
6974
ConfigurableAxis axisMultUltraFineFT0C{"axisMultUltraFineFT0C", {60000, 0, 60000}, "FT0C amplitude"};
7075
ConfigurableAxis axisMultUltraFinePVContributors{"axisMultUltraFinePVContributors", {10000, 0, 10000}, "Number of PV Contributors"};
7176

@@ -100,6 +105,7 @@ struct centralityStudy {
100105
histos.get<TH1>(HIST("hCollisionSelection"))->GetXaxis()->SetBinLabel(13, "no ITS in-ROF pileup (strict)");
101106

102107
histos.add("hFT0C_Collisions", "hFT0C_Collisions", kTH1D, {axisMultUltraFineFT0C});
108+
histos.add("hFV0A_Collisions", "hFV0A_Collisions", kTH1D, {axisMultUltraFineFV0A});
103109
histos.add("hNPVContributors", "hNPVContributors", kTH1D, {axisMultUltraFinePVContributors});
104110

105111
histos.add("hFT0CvsPVz_Collisions_All", "hFT0CvsPVz_Collisions_All", kTProfile, {axisPVz});
@@ -109,6 +115,7 @@ struct centralityStudy {
109115
if (doprocessBCs) {
110116
histos.add("hBCSelection", "hBCSelection", kTH1D, {{20, -0.5, 19.5f}});
111117
histos.add("hFT0C_BCs", "hFT0C_BCs", kTH1D, {axisMultUltraFineFT0C});
118+
histos.add("hFV0A_BCs", "hFV0A_BCs", kTH1D, {axisMultUltraFineFV0A});
112119

113120
histos.add("hFT0CvsPVz_BCs_All", "hFT0CvsPVz_BCs_All", kTProfile, {axisPVz});
114121
histos.add("hFT0CvsPVz_BCs", "hFT0CvsPVz_BCs", kTProfile, {axisPVz});
@@ -182,6 +189,12 @@ struct centralityStudy {
182189
}
183190
histos.fill(HIST("hCollisionSelection"), 9 /* Not at same bunch pile-up */);
184191

192+
float multFT0_touse = collision.multFT0C();
193+
if (sumFT0AC) {
194+
multFT0_touse += collision.multFT0A();
195+
}
196+
multFT0_touse *= scaleSignalFT0C;
197+
185198
// do this only if information is available
186199
if constexpr (requires { collision.timeToNext(); }) {
187200
float timeToNeighbour = TMath::Min(
@@ -216,13 +229,14 @@ struct centralityStudy {
216229

217230
// if we got here, we also finally fill the FT0C histogram, please
218231
histos.fill(HIST("hNPVContributors"), collision.multPVTotalContributors());
219-
histos.fill(HIST("hFT0C_Collisions"), collision.multFT0C());
220-
histos.fill(HIST("hFT0CvsPVz_Collisions_All"), collision.multPVz(), collision.multFT0C());
232+
histos.fill(HIST("hFT0C_Collisions"), multFT0_touse);
233+
histos.fill(HIST("hFV0A_Collisions"), collision.multFV0A() * scaleSignalFV0A);
234+
histos.fill(HIST("hFT0CvsPVz_Collisions_All"), collision.multPVz(), multFT0_touse);
221235
if (collision.multFT0C() > minFT0CforVertexZ) {
222-
histos.fill(HIST("hFT0CvsPVz_Collisions"), collision.multPVz(), collision.multFT0C());
236+
histos.fill(HIST("hFT0CvsPVz_Collisions"), collision.multPVz(), multFT0_touse);
223237
}
224238
if (do2DPlots) {
225-
histos.fill(HIST("hFT0CvsNContribs"), collision.multNTracksPV(), collision.multFT0C());
239+
histos.fill(HIST("hFT0CvsNContribs"), collision.multNTracksPV(), multFT0_touse);
226240
histos.fill(HIST("hMatchedVsITSOnly"), collision.multNTracksITSOnly(), collision.multNTracksITSTPC());
227241
}
228242

@@ -274,12 +288,19 @@ struct centralityStudy {
274288
}
275289
histos.fill(HIST("hBCSelection"), 4); // FV0OrA
276290

291+
float multFT0_touse = multbc.multBCFT0C();
292+
if (sumFT0AC) {
293+
multFT0_touse += multbc.multBCFT0A();
294+
}
295+
multFT0_touse *= scaleSignalFT0C;
296+
277297
// if we got here, we also finally fill the FT0C histogram, please
278-
histos.fill(HIST("hFT0C_BCs"), multbc.multBCFT0C());
298+
histos.fill(HIST("hFT0C_BCs"), multFT0_touse);
299+
histos.fill(HIST("hFV0A_BCs"), multbc.multBCFV0A() * scaleSignalFV0A);
279300
if (multbc.multBCFT0PosZValid()) {
280-
histos.fill(HIST("hFT0CvsPVz_BCs_All"), multbc.multBCFT0PosZ(), multbc.multBCFT0C());
301+
histos.fill(HIST("hFT0CvsPVz_BCs_All"), multbc.multBCFT0PosZ(), multFT0_touse);
281302
if (multbc.multBCFT0C() > minFT0CforVertexZ) {
282-
histos.fill(HIST("hFT0CvsPVz_BCs"), multbc.multBCFT0PosZ(), multbc.multBCFT0C());
303+
histos.fill(HIST("hFT0CvsPVz_BCs"), multbc.multBCFT0PosZ(), multFT0_touse);
283304
}
284305
}
285306

0 commit comments

Comments
 (0)