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