26
26
using namespace o2 ;
27
27
using namespace o2 ::framework;
28
28
29
- namespace o2 ::analysis::femtoUniverse {
29
+ namespace o2 ::analysis::femtoUniverse
30
+ {
30
31
31
32
// / \class FemtoUniversePairSHCentMultKt
32
33
// / \brief Container for all histogramming related to the spherical harmonics of
@@ -48,8 +49,9 @@ class PairSHCentMultKt
48
49
// / \param ktbins Number of kT bins
49
50
// / \param maxl Maximum valie of L component of the spherical harmonics
50
51
template <typename t1>
51
- void init (HistogramRegistry *registry, t1 &kstarbins, t1 ¢multbins,
52
- t1 &ktbins, int maxl) {
52
+ void init (HistogramRegistry* registry, t1& kstarbins, t1& centmultbins,
53
+ t1& ktbins, int maxl)
54
+ {
53
55
PairSHCentMultKtRegistry = registry;
54
56
AxisSpec kstarAxis = {kstarbins, " #it{k*} (GeV/#it{c})" };
55
57
KStarBins = kstarbins;
@@ -93,32 +95,32 @@ class PairSHCentMultKt
93
95
int highBin = static_cast <int >((CentMultBins[i + 1 ]));
94
96
95
97
std::string HistTitle =
96
- " mult_" + std::to_string (lowBin) + " -" + std::to_string (highBin);
98
+ " mult_" + std::to_string (lowBin) + " -" + std::to_string (highBin);
97
99
std::string HistSuffix1 =
98
- std::to_string (static_cast <int >(CentMultBins[i]));
100
+ std::to_string (static_cast <int >(CentMultBins[i]));
99
101
std::string HistSuffix2 =
100
- std::to_string (static_cast <int >(CentMultBins[i + 1 ]));
102
+ std::to_string (static_cast <int >(CentMultBins[i + 1 ]));
101
103
std::string HistFolderMult = " mult_" + HistSuffix1 + " _" + HistSuffix2;
102
104
103
105
for (int j = 0 ; j < static_cast <int >(KtBins.size () - 1 ); j++) {
104
106
int ktlowBin = static_cast <int >(KtBins[j]);
105
107
int kthighBin = static_cast <int >(KtBins[j + 1 ]);
106
108
107
109
std::string HistTitlekT =
108
- " kT_" + std::to_string (ktlowBin) + " -" + std::to_string (kthighBin);
110
+ " kT_" + std::to_string (ktlowBin) + " -" + std::to_string (kthighBin);
109
111
std::string HistSuffixkT1 =
110
- std::to_string (static_cast <int >(KtBins[j] * 100.0 ));
112
+ std::to_string (static_cast <int >(KtBins[j] * 100.0 ));
111
113
std::string HistSuffixkT2 =
112
- std::to_string (static_cast <int >(KtBins[j + 1 ] * 100.0 ));
114
+ std::to_string (static_cast <int >(KtBins[j + 1 ] * 100.0 ));
113
115
std::string HistFolderkT = " kT_" + HistSuffixkT1 + " _" + HistSuffixkT2;
114
116
115
117
std::string suffix;
116
118
fbinctn[i][j] = new TH1D (
117
- TString (" BinCountNum" ), " Bin Occupation (Numerator)" ,
118
- static_cast <int >(KStarBins[0 ]), KStarBins[1 ], KStarBins[2 ]);
119
+ TString (" BinCountNum" ), " Bin Occupation (Numerator)" ,
120
+ static_cast <int >(KStarBins[0 ]), KStarBins[1 ], KStarBins[2 ]);
119
121
fbinctd[i][j] = new TH1D (
120
- TString (" BinCountDen" ), " Bin Occupation (Denominator)" ,
121
- static_cast <int >(KStarBins[0 ]), KStarBins[1 ], KStarBins[2 ]);
122
+ TString (" BinCountDen" ), " Bin Occupation (Denominator)" ,
123
+ static_cast <int >(KStarBins[0 ]), KStarBins[1 ], KStarBins[2 ]);
122
124
123
125
for (int ihist = 0 ; ihist < fMaxJM ; ihist++) {
124
126
if (femsi[ihist] < 0 ) {
@@ -130,47 +132,47 @@ class PairSHCentMultKt
130
132
}
131
133
if (mFolderSuffix [mEventType ] == mFolderSuffix [0 ]) {
132
134
fnumsreal[i][j][ihist] = PairSHCentMultKtRegistry->add <TH1>(
133
- (HistFolderMult + " /" + HistFolderkT + " /" + " NumRe" + suffix)
134
- .c_str (),
135
- (" ; " + femtoObs1D + " ; Entries" ).c_str (), kTH1D ,
136
- {femtoObsAxis1D});
135
+ (HistFolderMult + " /" + HistFolderkT + " /" + " NumRe" + suffix)
136
+ .c_str (),
137
+ (" ; " + femtoObs1D + " ; Entries" ).c_str (), kTH1D ,
138
+ {femtoObsAxis1D});
137
139
fnumsimag[i][j][ihist] = PairSHCentMultKtRegistry->add <TH1>(
138
- (HistFolderMult + " /" + HistFolderkT + " /" + " NumIm" + suffix)
139
- .c_str (),
140
- (" ; " + femtoObs1D + " ; Entries" ).c_str (), kTH1D ,
141
- {femtoObsAxis1D});
140
+ (HistFolderMult + " /" + HistFolderkT + " /" + " NumIm" + suffix)
141
+ .c_str (),
142
+ (" ; " + femtoObs1D + " ; Entries" ).c_str (), kTH1D ,
143
+ {femtoObsAxis1D});
142
144
} else {
143
145
fdensreal[i][j][ihist] = PairSHCentMultKtRegistry->add <TH1>(
144
- (HistFolderMult + " /" + HistFolderkT + " /" + " DenRe" + suffix)
145
- .c_str (),
146
- (" ; " + femtoObs1D + " ; Entries" ).c_str (), kTH1D ,
147
- {femtoObsAxis1D});
146
+ (HistFolderMult + " /" + HistFolderkT + " /" + " DenRe" + suffix)
147
+ .c_str (),
148
+ (" ; " + femtoObs1D + " ; Entries" ).c_str (), kTH1D ,
149
+ {femtoObsAxis1D});
148
150
fdensimag[i][j][ihist] = PairSHCentMultKtRegistry->add <TH1>(
149
- (HistFolderMult + " /" + HistFolderkT + " /" + " DenIm" + suffix)
150
- .c_str (),
151
- (" ; " + femtoObs1D + " ; Entries" ).c_str (), kTH1D ,
152
- {femtoObsAxis1D});
151
+ (HistFolderMult + " /" + HistFolderkT + " /" + " DenIm" + suffix)
152
+ .c_str (),
153
+ (" ; " + femtoObs1D + " ; Entries" ).c_str (), kTH1D ,
154
+ {femtoObsAxis1D});
153
155
}
154
156
}
155
157
156
158
if (mFolderSuffix [mEventType ] == mFolderSuffix [0 ]) {
157
159
std::string bufnameNum = " CovNum" ;
158
160
fcovnum[i][j] = PairSHCentMultKtRegistry->add <TH3>(
159
- (HistFolderMult + " /" + HistFolderkT + " /" + bufnameNum).c_str (),
160
- " ; x; y; z" , kTH3D ,
161
- {{kstarbins},
162
- {(fMaxJM * 2 ), -0.5 , ((static_cast <float >(fMaxJM ) * 2.0 - 0.5 ))},
163
- {(fMaxJM * 2 ), -0.5 ,
164
- ((static_cast <float >(fMaxJM ) * 2.0 - 0.5 ))}});
161
+ (HistFolderMult + " /" + HistFolderkT + " /" + bufnameNum).c_str (),
162
+ " ; x; y; z" , kTH3D ,
163
+ {{kstarbins},
164
+ {(fMaxJM * 2 ), -0.5 , ((static_cast <float >(fMaxJM ) * 2.0 - 0.5 ))},
165
+ {(fMaxJM * 2 ), -0.5 ,
166
+ ((static_cast <float >(fMaxJM ) * 2.0 - 0.5 ))}});
165
167
} else if (mFolderSuffix [mEventType ] == mFolderSuffix [1 ]) {
166
168
std::string bufnameDen = " CovDen" ;
167
169
fcovden[i][j] = PairSHCentMultKtRegistry->add <TH3>(
168
- (HistFolderMult + " /" + HistFolderkT + " /" + bufnameDen).c_str (),
169
- " ; x; y; z" , kTH3D ,
170
- {{kstarbins},
171
- {(fMaxJM * 2 ), -0.5 , ((static_cast <float >(fMaxJM ) * 2.0 - 0.5 ))},
172
- {(fMaxJM * 2 ), -0.5 ,
173
- ((static_cast <float >(fMaxJM ) * 2.0 - 0.5 ))}});
170
+ (HistFolderMult + " /" + HistFolderkT + " /" + bufnameDen).c_str (),
171
+ " ; x; y; z" , kTH3D ,
172
+ {{kstarbins},
173
+ {(fMaxJM * 2 ), -0.5 , ((static_cast <float >(fMaxJM ) * 2.0 - 0.5 ))},
174
+ {(fMaxJM * 2 ), -0.5 ,
175
+ ((static_cast <float >(fMaxJM ) * 2.0 - 0.5 ))}});
174
176
}
175
177
}
176
178
}
@@ -182,8 +184,9 @@ class PairSHCentMultKt
182
184
// / component of the spherical harmonics \param multval Multiplicity value
183
185
// / \param ktval kT value
184
186
template <typename T>
185
- void fill_mult_NumDen (T const &part1, T const &part2, uint8_t ChosenEventType,
186
- int maxl, int multval, float ktval) {
187
+ void fill_mult_NumDen (T const & part1, T const & part2, uint8_t ChosenEventType,
188
+ int maxl, int multval, float ktval)
189
+ {
187
190
int multbinval;
188
191
int absmultval = multval;
189
192
@@ -210,8 +213,9 @@ class PairSHCentMultKt
210
213
// / \param multval Multiplicity value
211
214
// / \param ktval kT value
212
215
template <typename T>
213
- void fill_kT_NumDen (T const &part1, T const &part2, uint8_t ChosenEventType,
214
- int maxl, int multval, float ktval) {
216
+ void fill_kT_NumDen (T const & part1, T const & part2, uint8_t ChosenEventType,
217
+ int maxl, int multval, float ktval)
218
+ {
215
219
int ktbinval = -1 ;
216
220
if ((ktval > KtBins[0 ]) && (ktval <= KtBins[1 ])) {
217
221
ktbinval = 0 ;
@@ -230,7 +234,8 @@ class PairSHCentMultKt
230
234
// / Set the PDG codes of the two particles involved
231
235
// / \param pdg1 PDG code of particle one
232
236
// / \param pdg2 PDG code of particle two
233
- void setPDGCodes (const int pdg1, const int pdg2) {
237
+ void setPDGCodes (const int pdg1, const int pdg2)
238
+ {
234
239
mMassOne = TDatabasePDG::Instance ()->GetParticle (pdg1)->Mass ();
235
240
mMassTwo = TDatabasePDG::Instance ()->GetParticle (pdg2)->Mass ();
236
241
mPDGOne = pdg1;
@@ -243,7 +248,8 @@ class PairSHCentMultKt
243
248
// / \param zeroimag
244
249
// / \param ilmprim
245
250
// / \param primimag
246
- int GetBin (int qbin, int ilmzero, int zeroimag, int ilmprim, int primimag) {
251
+ int GetBin (int qbin, int ilmzero, int zeroimag, int ilmprim, int primimag)
252
+ {
247
253
return qbin * fMaxJM * fMaxJM * 4 + (ilmprim * 2 + primimag) * fMaxJM * 2 +
248
254
ilmzero * 2 + zeroimag;
249
255
}
@@ -256,8 +262,9 @@ class PairSHCentMultKt
256
262
// / \param multval Multiplicity value
257
263
// / \param ktval kT value
258
264
template <typename T>
259
- void AddEventPair (T const &part1, T const &part2, uint8_t ChosenEventType,
260
- int maxl, int multval, int ktval) {
265
+ void AddEventPair (T const & part1, T const & part2, uint8_t ChosenEventType,
266
+ int maxl, int multval, int ktval)
267
+ {
261
268
int fMultBin = multval;
262
269
int fKtBin = ktval;
263
270
std::vector<std::complex<double >> fYlmBuffer (fMaxJM );
@@ -285,13 +292,13 @@ class PairSHCentMultKt
285
292
for (int ilmzero = 0 ; ilmzero < fMaxJM ; ilmzero++) {
286
293
for (int ilmprim = 0 ; ilmprim < fMaxJM ; ilmprim++) {
287
294
fcovmnum[fMultBin ][fKtBin ][GetBin (nqbin, ilmzero, 0 , ilmprim, 0 )] +=
288
- (real (fYlmBuffer [ilmzero]) * real (fYlmBuffer [ilmprim]));
295
+ (real (fYlmBuffer [ilmzero]) * real (fYlmBuffer [ilmprim]));
289
296
fcovmnum[fMultBin ][fKtBin ][GetBin (nqbin, ilmzero, 0 , ilmprim, 1 )] +=
290
- (real (fYlmBuffer [ilmzero]) * -imag (fYlmBuffer [ilmprim]));
297
+ (real (fYlmBuffer [ilmzero]) * -imag (fYlmBuffer [ilmprim]));
291
298
fcovmnum[fMultBin ][fKtBin ][GetBin (nqbin, ilmzero, 1 , ilmprim, 0 )] +=
292
- (-imag (fYlmBuffer [ilmzero]) * real (fYlmBuffer [ilmprim]));
299
+ (-imag (fYlmBuffer [ilmzero]) * real (fYlmBuffer [ilmprim]));
293
300
fcovmnum[fMultBin ][fKtBin ][GetBin (nqbin, ilmzero, 1 , ilmprim, 1 )] +=
294
- (-imag (fYlmBuffer [ilmzero]) * -imag (fYlmBuffer [ilmprim]));
301
+ (-imag (fYlmBuffer [ilmzero]) * -imag (fYlmBuffer [ilmprim]));
295
302
}
296
303
}
297
304
}
@@ -305,13 +312,13 @@ class PairSHCentMultKt
305
312
for (int ilmzero = 0 ; ilmzero < fMaxJM ; ilmzero++) {
306
313
for (int ilmprim = 0 ; ilmprim < fMaxJM ; ilmprim++) {
307
314
fcovmden[fMultBin ][fKtBin ][GetBin (nqbin, ilmzero, 0 , ilmprim, 0 )] +=
308
- (real (fYlmBuffer [ilmzero]) * real (fYlmBuffer [ilmprim]));
315
+ (real (fYlmBuffer [ilmzero]) * real (fYlmBuffer [ilmprim]));
309
316
fcovmden[fMultBin ][fKtBin ][GetBin (nqbin, ilmzero, 0 , ilmprim, 1 )] +=
310
- (real (fYlmBuffer [ilmzero]) * -imag (fYlmBuffer [ilmprim]));
317
+ (real (fYlmBuffer [ilmzero]) * -imag (fYlmBuffer [ilmprim]));
311
318
fcovmden[fMultBin ][fKtBin ][GetBin (nqbin, ilmzero, 1 , ilmprim, 0 )] +=
312
- (-imag (fYlmBuffer [ilmzero]) * real (fYlmBuffer [ilmprim]));
319
+ (-imag (fYlmBuffer [ilmzero]) * real (fYlmBuffer [ilmprim]));
313
320
fcovmden[fMultBin ][fKtBin ][GetBin (nqbin, ilmzero, 1 , ilmprim, 1 )] +=
314
- (-imag (fYlmBuffer [ilmzero]) * -imag (fYlmBuffer [ilmprim]));
321
+ (-imag (fYlmBuffer [ilmzero]) * -imag (fYlmBuffer [ilmprim]));
315
322
}
316
323
}
317
324
}
@@ -323,7 +330,8 @@ class PairSHCentMultKt
323
330
// / \param MaxJM Maximum value of J
324
331
// / \param multval Multiplicity value
325
332
// / \param ktval kT value
326
- void PackCov (uint8_t ChosenEventType, int MaxJM, int multval, int ktval) {
333
+ void PackCov (uint8_t ChosenEventType, int MaxJM, int multval, int ktval)
334
+ {
327
335
int fMultBin = multval;
328
336
int fKtBin = ktval;
329
337
if (ChosenEventType == femtoUniverseSHContainer::EventType::same) {
@@ -354,7 +362,8 @@ class PairSHCentMultKt
354
362
// / Function to acces each multiplicity and kT directory and call PackCov
355
363
// / \param ChosenEventType same or mixed event
356
364
// / \param MaxJM Maximum value of J
357
- void fill_mult_kT_Cov (uint8_t ChosenEventType, int MaxJM) {
365
+ void fill_mult_kT_Cov (uint8_t ChosenEventType, int MaxJM)
366
+ {
358
367
for (int multbinvalcov = 0 ;
359
368
multbinvalcov < static_cast <int >(CentMultBins.size () - 2 );
360
369
multbinvalcov++) {
@@ -367,35 +376,35 @@ class PairSHCentMultKt
367
376
368
377
private:
369
378
std::array<std::array<std::array<std::shared_ptr<TH1>, 15 >, 10 >, 10 >
370
- fnumsreal{};
379
+ fnumsreal{};
371
380
std::array<std::array<std::array<std::shared_ptr<TH1>, 15 >, 10 >, 10 >
372
- fnumsimag{};
381
+ fnumsimag{};
373
382
std::array<std::array<std::array<std::shared_ptr<TH1>, 15 >, 10 >, 10 >
374
- fdensreal{};
383
+ fdensreal{};
375
384
std::array<std::array<std::array<std::shared_ptr<TH1>, 15 >, 10 >, 10 >
376
- fdensimag{};
385
+ fdensimag{};
377
386
378
- TH1D * fbinctn[10 ][10 ];
379
- TH1D * fbinctd[10 ][10 ];
387
+ TH1D* fbinctn[10 ][10 ];
388
+ TH1D* fbinctd[10 ][10 ];
380
389
381
390
static constexpr int fMaxL = 2 ;
382
391
static constexpr int fMaxJM = (fMaxL + 1 ) * (fMaxL + 1 );
383
392
384
393
std::array<std::array<std::array<float , (fMaxJM * fMaxJM * 4 * 100 )>, 10 >, 10 >
385
- fcovmnum{}; // /< Covariance matrix for the numerator
394
+ fcovmnum{}; // /< Covariance matrix for the numerator
386
395
std::array<std::array<std::array<float , (fMaxJM * fMaxJM * 4 * 100 )>, 10 >, 10 >
387
- fcovmden{}; // /< Covariance matrix for the numerator
396
+ fcovmden{}; // /< Covariance matrix for the numerator
388
397
389
398
std::array<std::array<std::shared_ptr<TH3>, 10 >, 10 > fcovnum{};
390
399
std::array<std::array<std::shared_ptr<TH3>, 10 >, 10 > fcovden{};
391
400
392
401
protected:
393
- HistogramRegistry * PairSHCentMultKtRegistry = nullptr ;
402
+ HistogramRegistry* PairSHCentMultKtRegistry = nullptr ;
394
403
static constexpr std::string_view mFolderSuffix [2 ] = {
395
- " SameEvent" ,
396
- " MixedEvent" }; // /< Folder naming for the output according to mEventType
404
+ " SameEvent" ,
405
+ " MixedEvent" }; // /< Folder naming for the output according to mEventType
397
406
static constexpr int mEventType =
398
- eventType; // /< Type of the event (same/mixed, according to
407
+ eventType; // /< Type of the event (same/mixed, according to
399
408
// /< FEMTOUNIVERSESHCONTAINER::EventType)
400
409
float mMassOne = 0 .f; // /< PDG mass of particle 1
401
410
float mMassTwo = 0 .f; // /< PDG mass of particle 2
0 commit comments