@@ -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