Protection added until code in STEER won't be updated
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALRecParam.cxx
CommitLineData
1e7c9b89 1/**************************************************************************
3a8be91c 2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16/* $Id$ */
feedcab9 17
3a8be91c 18//-----------------------------------------------------------------------------
19// Container of EMCAL reconstruction parameters
20// The purpose of this object is to store it to OCDB
1e7c9b89 21// and retrieve it in the corresponding reconstruction class:
22// AliEMCALClusterizer, AliEMCALPID, AliEMCALTracker ...
23//
3a8be91c 24// Author: Yuri Kharlov
25//-----------------------------------------------------------------------------
26
1e7c9b89 27// --- Root header files
28//#include "TObjArray.h"
29
30// --- AliRoot header files ---
31#include "AliCDBManager.h"
32#include "AliCDBEntry.h"
33#include "AliEMCALRecParam.h"
34
35ClassImp(AliEMCALRecParam)
36
37 TObjArray* AliEMCALRecParam::fgkMaps =0; //ALTRO mappings
38
413e6b81 39AliEMCALRecParam::AliEMCALRecParam() :
40 AliDetectorRecoParam(),
41 fClusteringThreshold(0.5),
42 fW0(4.5),
43 fMinECut(0.45),
44 fUnfold(kFALSE),
45 fLocMaxCut(0.03), //clustering
46 fTrkCutX(6.0),
47 fTrkCutY(6.0),
48 fTrkCutZ(6.0),
49 fTrkCutR(10.0),
50 fTrkCutAlphaMin(-50.0),
51 fTrkCutAlphaMax(50.0),
dcd86c5d 52 fTrkCutAngle(10000.0),
53 fTrkCutNITS(3.0),
54 fTrkCutNTPC(20.0), //track matching
413e6b81 55 fHighLowGainFactor(16.0),
56 fOrderParameter(2),
57 fTau(2.35),
58 fNoiseThreshold(3),
59 fNPedSamples(5) //raw signal
c47157cd 60{
61 // default reco values
1e7c9b89 62
63 // PID parameters for Pb Pb from Lambda0 distributions fitted by
64 // a landau inverted + Gaussian for Gammas
65 // and a Landau +Gaussian for Pi0 and hadrons
66 // New parametrisation for
67 // lambda0^2 (=x): f(x) = normLandau*TMath::Landau(((1-mpvlandau)-x),mpvLandau,widthLandau)+normgaus*TMath::Gaus(x,meangaus,sigmagaus) for gammas
68 // lambda0^2 (=x): f(x) = normLandau*TMath::Landau(x,mpvLandau,widthLandau)+normgaus*TMath::Gaus(x,meangaus,sigmagaus) for pi0 & hadrons
69
70 // See AliEMCALPid
71 // (index i) refers to each parameters of the f(lambda0^2)
72 // i=0: normGaus
73 // i=1: meanGaus
74 // i=2: sigmaGaus
75 // i=3: normLandau
76 // i=4: mpvLandau
77 // i=5: sigmaLanda
78 // (index j) refers to the polynomial parameters of the fit of each parameter vs energy
79 // Pb Pb
80
8ba062b1 81 // as a first step, all array elements are initialized to 0.0
82 Int_t i, j;
83 for (i = 0; i < 6; i++) {
1e7c9b89 84 for (j = 0; j < 6; j++) {
85 fGamma[i][j] = fPiZero[i][j] = fHadron[i][j] = 0.;
86 fGamma1to10[i][j] = fHadron1to10[i][j]= 0.;
8ba062b1 87 }
1e7c9b89 88 fGammaEnergyProb[i]=0.; // not yet implemented
89 fHadronEnergyProb[i]=0.;
90 fPiZeroEnergyProb[i]=0.; // not yet implemented
91
92
8ba062b1 93 }
1e7c9b89 94 // Pb Pb
8ba062b1 95
1e7c9b89 96 fGamma[0][0] = -7.656908e-01;
97 fGamma[0][1] = 2.352536e-01;
98 fGamma[0][2] = 1.555996e-02;
99 fGamma[0][3] = 2.243525e-04;
100 fGamma[0][4] = -2.560087e-06;
101
102 fGamma[1][0] = 6.500216e+00;
103 fGamma[1][1] = -2.564958e-01;
104 fGamma[1][2] = 1.967894e-01;
105 fGamma[1][3] = -3.982273e-04;
106 fGamma[1][4] = 2.797737e-06;
107
108 fGamma[2][0] = 2.416489e+00;
109 fGamma[2][1] = -1.601258e-01;
110 fGamma[2][2] = 3.126839e-02;
111 fGamma[2][3] = 3.387532e-04;
112 fGamma[2][4] = -4.089145e-06;
113
114
115 fGamma[3][0] = 0.;
116 fGamma[3][1] = -2.696008e+00;
117 fGamma[3][2] = 6.920305e-01;
118 fGamma[3][3] = -2.281122e-03;
119 fGamma[3][4] = 0.;
120
121 fGamma[4][0] = 2.281564e-01;
122 fGamma[4][1] = -7.575040e-02;
123 fGamma[4][2] = 3.813423e-01;
124 fGamma[4][3] = -1.243854e-04;
125 fGamma[4][4] = 1.232045e-06;
126
127 fGamma[5][0] = -3.290107e-01;
128 fGamma[5][1] = 3.707545e-02;
129 fGamma[5][2] = 2.917397e-03;
130 fGamma[5][3] = 4.695306e-05;
131 fGamma[5][4] = -3.572981e-07;
132
133
134 fHadron[0][0] = 1.519112e-01;
135 fHadron[0][1] = -8.267603e-02;
136 fHadron[0][2] = 1.914574e-02;
137 fHadron[0][3] = -2.677921e-04;
138 fHadron[0][4] = 5.447939e-06;
139
140
141 fHadron[1][0] = 0.;
142 fHadron[1][1] = -7.549870e-02;
143 fHadron[1][2] = 3.930087e-01;
144 fHadron[1][3] = -2.368500e-03;
145 fHadron[1][4] = 0.;
146
147
148 fHadron[2][0] = 0.;
149 fHadron[2][1] = -2.463152e-02;
150 fHadron[2][2] = 1.349257e-01;
151 fHadron[2][3] = -1.089440e-03;
152 fHadron[2][4] = 0.;
153
154
155
156 fHadron[3][0] = 0.;
157 fHadron[3][1] = 5.101560e-01;
158 fHadron[3][2] = 1.458679e-01;
159 fHadron[3][3] = 4.903068e-04;
160 fHadron[3][4] = 0.;
161
162 fHadron[4][0] = 0.;
163 fHadron[4][1] = -6.693943e-03;
164 fHadron[4][2] = 2.444753e-01;
165 fHadron[4][3] = -5.553749e-05;
166 fHadron[4][4] = 0.;
167
168 fHadron[5][0] = -4.414030e-01;
169 fHadron[5][1] = 2.292277e-01;
170 fHadron[5][2] = -2.433737e-02;
171 fHadron[5][3] = 1.758422e-03;
172 fHadron[5][4] = -3.001493e-05;
173
174
175 fPiZero[0][0] = 5.072157e-01;
176 fPiZero[0][1] = -5.352747e-01;
177 fPiZero[0][2] = 8.499259e-02;
178 fPiZero[0][3] = -3.687401e-03;
179 fPiZero[0][4] = 5.482280e-05;
180
181
182 fPiZero[1][0] = 4.590137e+02;
183 fPiZero[1][1] = -7.079341e+01;
184 fPiZero[1][2] = 4.990735e+00;
185 fPiZero[1][3] = -1.241302e-01;
186 fPiZero[1][4] = 1.065772e-03;
187
188
189 fPiZero[2][0] = 1.376415e+02;
190 fPiZero[2][1] = -3.031577e+01;
191 fPiZero[2][2] = 2.474338e+00;
192 fPiZero[2][3] = -6.903410e-02;
193 fPiZero[2][4] = 6.244089e-04;
194
195 fPiZero[3][0] = 0.;
196 fPiZero[3][1] = 1.145983e+00;
197 fPiZero[3][2] = -2.476052e-01;
198 fPiZero[3][3] = 1.367373e-02;
199 fPiZero[3][4] = 0.;
200
201 fPiZero[4][0] = -2.097586e+02;
202 fPiZero[4][1] = 6.300800e+01;
203 fPiZero[4][2] = -4.038906e+00;
204 fPiZero[4][3] = 1.088543e-01;
205 fPiZero[4][4] = -9.362485e-04;
206
207 fPiZero[5][0] = -1.671477e+01;
208 fPiZero[5][1] = 2.995415e+00;
209 fPiZero[5][2] = -6.040360e-02;
210 fPiZero[5][3] = -6.137459e-04;
211 fPiZero[5][4] = 1.847328e-05;
212
213 // High flux ones pp
214
215 fHadronEnergyProb[0]= 0.;
216 fHadronEnergyProb[1]= 0.;
217 fHadronEnergyProb[2]= 6.188452e-02;
218 fHadronEnergyProb[3]= 2.030230e+00;
219 fHadronEnergyProb[4]= -6.402242e-02;
220
221
222}
8ba062b1 223
8ba062b1 224
3a8be91c 225
226//-----------------------------------------------------------------------------
413e6b81 227AliEMCALRecParam::AliEMCALRecParam(const AliEMCALRecParam& rp) :
228 AliDetectorRecoParam(),
229 fClusteringThreshold(rp.fClusteringThreshold),
230 fW0(rp.fW0),
231 fMinECut(rp.fMinECut),
232 fUnfold(rp.fUnfold),
233 fLocMaxCut(rp.fLocMaxCut), //clustering
234 fTrkCutX(rp.fTrkCutX),
235 fTrkCutY(rp.fTrkCutY),
236 fTrkCutZ(rp.fTrkCutZ),
237 fTrkCutR(rp.fTrkCutR),
238 fTrkCutAlphaMin(rp.fTrkCutAlphaMin),
239 fTrkCutAlphaMax(rp.fTrkCutAlphaMax),
1e7c9b89 240 fTrkCutAngle(rp.fTrkCutAngle),
dcd86c5d 241 fTrkCutNITS(rp.fTrkCutNITS),
242 fTrkCutNTPC(rp.fTrkCutNTPC), // track matching
413e6b81 243 fHighLowGainFactor(rp.fHighLowGainFactor),
244 fOrderParameter(rp.fOrderParameter),
245 fTau(rp.fTau),
246 fNoiseThreshold(rp.fNoiseThreshold),
247 fNPedSamples(rp.fNPedSamples) //raw signal
248{
249 //copy constructor
1e7c9b89 250
413e6b81 251 //PID values
252 Int_t i, j;
253 for (i = 0; i < 6; i++) {
254 for (j = 0; j < 6; j++) {
255 fGamma[i][j] = rp.fGamma[i][j];
1e7c9b89 256 fGamma1to10[i][j] = rp.fGamma1to10[i][j];
413e6b81 257 fHadron[i][j] = rp.fHadron[i][j];
1e7c9b89 258 fHadron1to10[i][j] = rp.fHadron1to10[i][j];
259 fPiZero[i][j] = rp.fPiZero[i][j];
413e6b81 260 }
1e7c9b89 261 fGammaEnergyProb[i] = rp.fGammaEnergyProb[i];
262 fPiZeroEnergyProb[i] = rp.fPiZeroEnergyProb[i];
263 fHadronEnergyProb[i] = rp.fHadronEnergyProb[i];
264
413e6b81 265 }
1e7c9b89 266
413e6b81 267}
268
269//-----------------------------------------------------------------------------
270AliEMCALRecParam& AliEMCALRecParam::operator = (const AliEMCALRecParam& rp)
271{
272 //assignment operator
1e7c9b89 273
413e6b81 274 if(this != &rp) {
275 fClusteringThreshold = rp.fClusteringThreshold;
276 fW0 = rp.fW0;
277 fMinECut = rp.fMinECut;
278 fUnfold = rp.fUnfold;
279 fLocMaxCut = rp.fLocMaxCut; //clustering
280 fTrkCutX = rp.fTrkCutX;
281 fTrkCutY = rp.fTrkCutY;
282 fTrkCutZ = rp.fTrkCutZ;
283 fTrkCutR = rp.fTrkCutR;
284 fTrkCutAlphaMin = rp.fTrkCutAlphaMin;
285 fTrkCutAlphaMax = rp.fTrkCutAlphaMax;
1e7c9b89 286 fTrkCutAngle = rp.fTrkCutAngle;
dcd86c5d 287 fTrkCutNITS = rp.fTrkCutNITS;
288 fTrkCutNTPC = rp.fTrkCutNTPC; //track matching
413e6b81 289 fHighLowGainFactor = rp.fHighLowGainFactor;
290 fOrderParameter = rp.fOrderParameter;
291 fTau = rp.fTau;
292 fNoiseThreshold = rp.fNoiseThreshold;
293 fNPedSamples = rp.fNPedSamples; //raw signal
1e7c9b89 294
413e6b81 295 //PID values
296 Int_t i, j;
297 for (i = 0; i < 6; i++) {
298 for (j = 0; j < 6; j++) {
299 fGamma[i][j] = rp.fGamma[i][j];
1e7c9b89 300 fGamma1to10[i][j] = rp.fGamma1to10[i][j];
413e6b81 301 fHadron[i][j] = rp.fHadron[i][j];
1e7c9b89 302 fHadron1to10[i][j] = rp.fHadron1to10[i][j];
303 fPiZero[i][j] = rp.fPiZero[i][j];
413e6b81 304 }
1e7c9b89 305 fGammaEnergyProb[i] = rp.fGammaEnergyProb[i];
306 fPiZeroEnergyProb[i] = rp.fPiZeroEnergyProb[i];
307 fHadronEnergyProb[i] = rp.fHadronEnergyProb[i];
413e6b81 308 }
1e7c9b89 309
413e6b81 310 }
311
312 return *this;
1e7c9b89 313
413e6b81 314}
315
316//-----------------------------------------------------------------------------
317AliEMCALRecParam* AliEMCALRecParam::GetDefaultParameters()
318{
319 //default parameters for the reconstruction
320 AliEMCALRecParam* params = new AliEMCALRecParam();
f5fc991a 321 params->SetName("Default - Pb+Pb");
322 params->SetTitle("Default - Pb+Pb");
323 return params;
1e7c9b89 324
f5fc991a 325}
326
98cf874d 327//-----------------------------------------------------------------------------
328AliEMCALRecParam* AliEMCALRecParam::GetCalibParam()
329{
1e7c9b89 330 //parameters for the reconstruction of calibration runs
331 AliEMCALRecParam* params = GetLowFluxParam();
332 //params->SetClusteringThreshold(0.2); // 200 MeV
333 //params->SetMinECut(0.01); //10 MeV
334 params->SetName("Calibration - LED");
335 params->SetTitle("Calibration - LED");
336 params->SetEventSpecie(AliRecoParam::kCalib);
337
338 return params;
339
98cf874d 340}
341
342//-----------------------------------------------------------------------------
343AliEMCALRecParam* AliEMCALRecParam::GetCosmicParam()
344{
1e7c9b89 345 //parameters for the reconstruction of cosmic runs
346 AliEMCALRecParam* params = GetLowFluxParam();
347 //params->SetClusteringThreshold(0.2); // 200 MeV
348 //params->SetMinECut(0.01); //10 MeV
349 params->SetName("Cosmic");
350 params->SetTitle("Cosmic");
351 params->SetEventSpecie(AliRecoParam::kCosmic);
352
353 return params;
354
98cf874d 355}
f5fc991a 356
1e7c9b89 357
f5fc991a 358//-----------------------------------------------------------------------------
359AliEMCALRecParam* AliEMCALRecParam::GetLowFluxParam()
360{
361 //low flux/multiplicity ("p+p") parameters for the reconstruction
362 AliEMCALRecParam* params = new AliEMCALRecParam();
fd096fa9 363 params->SetClusteringThreshold(0.1); // 200 MeV
f5fc991a 364 params->SetMinECut(0.01); //10 MeV
365 params->SetName("Low Flux - p+p");
366 params->SetTitle("Low Flux - p+p");
367 params->SetEventSpecie(AliRecoParam::kLowMult);
1e7c9b89 368
369
370 //PID parameters for pp implemented
371 // as a first step, all array elements are initialized to 0.0
372 Int_t i, j;
373 for (i = 0; i < 6; i++) {
374 for (j = 0; j < 6; j++) {
375 params->SetGamma(i,j,0.);
376 params->SetGamma1to10(i,j,0.);
377 params->SetHadron(i,j,0.);
378 params->SetHadron1to10(i,j,0.);
379 params->SetPiZero(i,j,0.);
380
381 }
382 params->SetGammaEnergyProb(i,0.); // not yet implemented
383 params->SetHadronEnergyProb(i,0.);
384 params->SetPiZeroEnergyProb(i,0.); // not yet implemented
385 }
386
387
388 params->SetGamma(0,0,-7.656908e-01);
389 params->SetGamma(0,1,2.352536e-01);
390 params->SetGamma(0,2,1.555996e-02);
391 params->SetGamma(0,3,2.243525e-04);
392 params->SetGamma(0,4,-2.560087e-06);
393
394 params->SetGamma(1,0,6.500216e+00);
395 params->SetGamma(1,1,-2.564958e-01);
396 params->SetGamma(1,2,1.967894e-01);
397 params->SetGamma(1,3,-3.982273e-04);
398 params->SetGamma(1,4,2.797737e-06);
399
400 params->SetGamma(2,0,2.416489e+00);
401 params->SetGamma(2,1,-1.601258e-01);
402 params->SetGamma(2,2,3.126839e-02);
403 params->SetGamma(2,3,3.387532e-04);
404 params->SetGamma(2,4,-4.089145e-06);
405
406 params->SetGamma(3,0,0.);
407 params->SetGamma(3,1,-2.696008e+00);
408 params->SetGamma(3,2, 6.920305e-01);
409 params->SetGamma(3,3,-2.281122e-03);
410 params->SetGamma(3,4,0.);
411
412 params->SetGamma(4,0,2.281564e-01);
413 params->SetGamma(4,1,-7.575040e-02);
414 params->SetGamma(4,2,3.813423e-01);
415 params->SetGamma(4,3,-1.243854e-04);
416 params->SetGamma(4,4,1.232045e-06);
417
418 params->SetGamma(5,0,-3.290107e-01);
419 params->SetGamma(5,1,3.707545e-02);
420 params->SetGamma(5,2,2.917397e-03);
421 params->SetGamma(5,3,4.695306e-05);
422 params->SetGamma(5,4,-3.572981e-07);
423
424 params->SetHadron(0,0,9.482243e-01);
425 params->SetHadron(0,1,-2.780896e-01);
426 params->SetHadron(0,2, 2.223507e-02);
427 params->SetHadron(0,3,7.294263e-04);
428 params->SetHadron(0,4,-5.665872e-06);
429
430 params->SetHadron(1,0,0.);
431 params->SetHadron(1,1,0.);
432 params->SetHadron(1,2,2.483298e-01);
433 params->SetHadron(1,3,0.);
434 params->SetHadron(1,4,0.);
435
436 params->SetHadron(2,0,-5.601199e+00);
437 params->SetHadron(2,1,2.097382e+00);
438 params->SetHadron(2,2,-2.307965e-01);
439 params->SetHadron(2,3,9.206871e-03);
440 params->SetHadron(2,4,-8.887548e-05);
441
442 params->SetHadron(3,0,6.543101e+00);
443 params->SetHadron(3,1,-2.305203e+00);
444 params->SetHadron(3,2,2.761673e-01);
445 params->SetHadron(3,3,-5.465855e-03);
446 params->SetHadron(3,4,2.784329e-05);
447
448 params->SetHadron(4,0,-2.443530e+01);
449 params->SetHadron(4,1,8.902578e+00);
450 params->SetHadron(4,2,-5.265901e-01);
451 params->SetHadron(4,3,2.549111e-02);
452 params->SetHadron(4,4,-2.196801e-04);
453
454 params->SetHadron(5,0,2.102007e-01);
455 params->SetHadron(5,1,-3.844418e-02);
456 params->SetHadron(5,2,1.234682e-01);
457 params->SetHadron(5,3,-3.866733e-03);
458 params->SetHadron(5,4,3.362719e-05);
459
460 params->SetPiZero(0,0,5.07215e-01);
461 params->SetPiZero(0,1,-5.35274e-01);
462 params->SetPiZero(0,2,8.49925e-02);
463 params->SetPiZero(0,3,-3.68740e-03);
464 params->SetPiZero(0,4,5.48228e-05);
465
466 params->SetPiZero(1,0,4.590137e+02);
467 params->SetPiZero(1,1,-7.079341e+01);
468 params->SetPiZero(1,2,4.990735e+00);
469 params->SetPiZero(1,3,-1.241302e-01);
470 params->SetPiZero(1,4,1.065772e-03);
471
472 params->SetPiZero(2,0,1.376415e+02);
473 params->SetPiZero(2,1,-3.031577e+01);
474 params->SetPiZero(2,2,2.474338e+00);
475 params->SetPiZero(2,3,-6.903410e-02);
476 params->SetPiZero(2,4,6.244089e-04);
477
478 params->SetPiZero(3,0,0.);
479 params->SetPiZero(3,1,1.145983e+00);
480 params->SetPiZero(3,2,-2.476052e-01);
481 params->SetPiZero(3,3,1.367373e-02);
482 params->SetPiZero(3,4,0.);
483
484 params->SetPiZero(4,0,-2.09758e+02);
485 params->SetPiZero(4,1,6.30080e+01);
486 params->SetPiZero(4,2,-4.03890e+00);
487 params->SetPiZero(4,3,1.08854e-01);
488 params->SetPiZero(4,4,-9.36248e-04);
489
490 params->SetPiZero(5,0,-1.671477e+01);
491 params->SetPiZero(5,1,2.995415e+00);
492 params->SetPiZero(5,2,-6.040360e-02);
493 params->SetPiZero(5,3,-6.137459e-04);
494 params->SetPiZero(5,4,1.847328e-05);
495
496
497// params->SetHadronEnergyProb(0,0.);
498// params->SetHadronEnergyProb(1,0.);
499// params->SetHadronEnergyProb(2,1.);
500// params->SetHadronEnergyProb(3,0.);
501// params->SetHadronEnergyProb(4,0.);
502
503 params->SetHadronEnergyProb(0, 4.767543e-02);
504 params->SetHadronEnergyProb(1,-1.537523e+00);
505 params->SetHadronEnergyProb(2,2.956727e-01);
506 params->SetHadronEnergyProb(3,-3.051022e+01);
507 params->SetHadronEnergyProb(4,-6.036931e-02);
508
509// Int_t ii= 0;
510// Int_t jj= 3;
511// AliDebug(1,Form("PID parameters (%d, %d): fGamma=%.3f, fPi=%.3f, fHadron=%.3f",
512// ii,jj, params->GetGamma(ii,jj), params->GetPiZero(ii,jj), params->GetHadron(ii,jj)));
513// cout << " Low Flux Parameters fGamma [2][2] = " << params->GetGamma(2,2) << endl;
514// cout << " Low Flux Parameters fHadron [2][2] = " << params->GetHadron(2,2) << endl;
515
f5fc991a 516 return params;
517
518}
519
520
521//-----------------------------------------------------------------------------
522AliEMCALRecParam* AliEMCALRecParam::GetHighFluxParam()
523{
524 //high flux/multiplicity ("Pb+Pb") parameters for the reconstruction
525 AliEMCALRecParam* params = new AliEMCALRecParam();
526 //For now, same as default
527 //if later these need to be modified, here's where it is done
528 params->SetName("High Flux - Pb+Pb");
529 params->SetTitle("High Flux - Pb+Pb");
530 params->SetEventSpecie(AliRecoParam::kHighMult);
1e7c9b89 531
413e6b81 532 return params;
1e7c9b89 533
413e6b81 534}
535
536//-----------------------------------------------------------------------------
3a8be91c 537void AliEMCALRecParam::Print(Option_t *) const
538{
3a8be91c 539 // Print reconstruction parameters to stdout
225cd96d 540 AliInfo(Form("Clusterization parameters :\n fClusteringThreshold=%.3f,\n fW0=%.3f,\n fMinECut=%.3f,\n fUnfold=%d,\n fLocMaxCut=%.3f \n",
541 fClusteringThreshold,fW0,fMinECut,fUnfold,fLocMaxCut));
1e7c9b89 542
543 AliInfo(Form("Track-matching cuts :\n x %f, y %f, z %f, R %f \n alphaMin %f, alphaMax %f, Angle %f, NITS %f, NTPC %\n", fTrkCutX, fTrkCutY, fTrkCutZ, fTrkCutR,fTrkCutAlphaMin,fTrkCutAlphaMax, fTrkCutAngle,fTrkCutNITS,fTrkCutNTPC));
544
8ba062b1 545 AliInfo(Form("PID parameters, Gamma :\n"));
546 for(Int_t i = 0; i < 6; i++){
547 for(Int_t j = 0; j < 6; j++){
548 printf(" %f, ", fGamma[i][j]);
549 }
550 printf("\n");
551 }
1e7c9b89 552
553
8ba062b1 554 AliInfo(Form("PID parameters, Hadron :\n"));
555 for(Int_t i = 0; i < 6; i++){
556 for(Int_t j = 0; j < 6; j++){
557 printf(" %f, ", fHadron[i][j]);
558 }
559 printf("\n");
560 }
1e7c9b89 561
8ba062b1 562 printf("\n");
1e7c9b89 563
564 AliInfo(Form("PID parameters, Pi0zero :\n"));
8ba062b1 565 for(Int_t i = 0; i < 6; i++){
566 for(Int_t j = 0; j < 6; j++){
1e7c9b89 567 printf(" %f, ", fPiZero[i][j]);
8ba062b1 568 }
569 printf("\n");
570 }
1e7c9b89 571
8ba062b1 572 printf("\n");
1e7c9b89 573
574
b4133f05 575 AliInfo(Form("Raw signal parameters: \n gain factor=%f, order=%d, tau=%f, noise threshold=%d, nped samples=%d \n",
576 fHighLowGainFactor,fOrderParameter,fTau,fNoiseThreshold,fNPedSamples));
1e7c9b89 577
3a8be91c 578}
8ba062b1 579
413e6b81 580//-----------------------------------------------------------------------------
feedcab9 581const TObjArray* AliEMCALRecParam::GetMappings()
582{
413e6b81 583 //Returns array of AliAltroMappings for RCU0..RCUX.
584 //If not found, read it from OCDB.
1e7c9b89 585
413e6b81 586 //Quick check as follows:
1e7c9b89 587 // root [0] AliCDBManager::Instance()->SetDefaultStorage("local://$ALICE_ROOT"
413e6b81 588 // root [1] AliCDBManager::Instance()->SetRun(1);
589 // root [2] TObjArray* maps = AliEMCALRecParam::GetMappings();
590 // root [3] maps->Print();
1e7c9b89 591
feedcab9 592 if(fgkMaps) return fgkMaps;
1e7c9b89 593
feedcab9 594 AliCDBEntry* entry = AliCDBManager::Instance()->Get("EMCAL/Calib/Mapping");
595 if(entry)
596 fgkMaps = (TObjArray*)entry->GetObject();
1e7c9b89 597
feedcab9 598 return fgkMaps;
1e7c9b89 599
feedcab9 600}
601