- include option to avoid multiple reconstruction of tracklets in the
[u/mrichter/AliRoot.git] / ITS / AliITSRecoParam.cxx
CommitLineData
44347160 1/**************************************************************************
572f41f9 2 * Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
44347160 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
572f41f9 16#include "AliITSRecoParam.h"
17
18/* $Id$ */
44347160 19
20///////////////////////////////////////////////////////////////////////////////
21// //
22// Class with ITS reconstruction parameters //
23// Origin: andrea.dainese@lnl.infn.it //
24// //
25///////////////////////////////////////////////////////////////////////////////
26
27
44347160 28
29ClassImp(AliITSRecoParam)
30
e50912db 31const Int_t AliITSRecoParam::fgkLayersNotToSkip[AliITSgeomTGeo::kNLayers]={0,0,0,0,0,0};
32const Int_t AliITSRecoParam::fgkLastLayerToTrackTo=0;
33const Int_t AliITSRecoParam::fgkMaxDetectorPerLayer=1000;
34const Double_t AliITSRecoParam::fgkriw=80.0;
35const Double_t AliITSRecoParam::fgkdiw=0.0053;
36const Double_t AliITSRecoParam::fgkX0iw=30.0;
37const Double_t AliITSRecoParam::fgkrcd=61.0;
38const Double_t AliITSRecoParam::fgkdcd=0.0053;
39const Double_t AliITSRecoParam::fgkX0cd=30.0;
40const Double_t AliITSRecoParam::fgkyr=12.8;
41const Double_t AliITSRecoParam::fgkdr=0.03;
42const Double_t AliITSRecoParam::fgkzm=0.2;
43const Double_t AliITSRecoParam::fgkdm=0.40;
44const Double_t AliITSRecoParam::fgkrs=50.0;
45const Double_t AliITSRecoParam::fgkds=0.001;
46const Double_t AliITSRecoParam::fgkrInsideITSscreen=49.0;
47const Double_t AliITSRecoParam::fgkrInsideSPD1=3.7;
48const Double_t AliITSRecoParam::fgkrPipe=3.;
49const Double_t AliITSRecoParam::fgkrInsidePipe=2.7;
50const Double_t AliITSRecoParam::fgkrOutsidePipe=3.3;
51const Double_t AliITSRecoParam::fgkdPipe=0.0028;
52const Double_t AliITSRecoParam::fgkrInsideShield[2]={7.5,25.0};
53const Double_t AliITSRecoParam::fgkrOutsideShield[2]={10.5,30.0};
54const Double_t AliITSRecoParam::fgkdshield[2]={0.0097,0.0034};
55const Double_t AliITSRecoParam::fgkX0shield[2]={38.6,42.0};
56const Double_t AliITSRecoParam::fgkX0Air=21.82;
57const Double_t AliITSRecoParam::fgkX0Be=65.19;
58const Double_t AliITSRecoParam::fgkBoundaryWidth=0.2;
59const Double_t AliITSRecoParam::fgkDeltaXNeighbDets=0.5;
60const Double_t AliITSRecoParam::fgkSPDdetzlength=6.960; // 7.072-2*0.056
61const Double_t AliITSRecoParam::fgkSPDdetxlength=1.298; // 1.410-2*0.056
44347160 62
63//_____________________________________________________________________________
6518a6c5 64AliITSRecoParam::AliITSRecoParam() : AliDetectorRecoParam(),
f9119eb9 65fTracker(0),
66fITSonly(kFALSE),
67fVertexer(0),
876026b6 68fClusterFinder(0),
69fPID(0),
7203e11a 70fVtxr3DZCutWide(0.),
71fVtxr3DRCutWide(0.),
72fVtxr3DZCutNarrow(0.),
73fVtxr3DRCutNarrow(0.),
74fVtxr3DPhiCutLoose(0.),
75fVtxr3DPhiCutTight(0.),
76fVtxr3DDCACut(0.),
e50912db 77fMaxSnp(1.),
572f41f9 78fNSigmaYLayerForRoadY(0),
79fNSigmaRoadY(0),
80fNSigmaZLayerForRoadZ(0),
81fNSigmaRoadZ(0),
82fNSigma2RoadZC(0),
83fNSigma2RoadYC(0),
84fNSigma2RoadZNonC(0),
85fNSigma2RoadYNonC(0),
1c97ce2f 86fRoadMisal(0),
572f41f9 87fMaxNormChi2NonCForHypothesis(0),
88fMaxChi2(0),
89fMaxRoad(0),
90fMaxChi2In(0),
91fChi2PerCluster(0),
92fXV(0),
93fYV(0),
94fZV(0),
95fSigmaXV(0),
96fSigmaYV(0),
97fSigmaZV(0),
98fVertexCut(0),
99fMaxDZforPrimTrk(0),
100fMaxDZToUseConstraint(0),
101fMaxDforV0dghtrForProlongation(0),
102fMaxDForProlongation(0),
103fMaxDZForProlongation(0),
104fMinPtForProlongation(0),
6518a6c5 105fAddVirtualClustersInDeadZone(kFALSE),
572f41f9 106fZWindowDeadZone(0),
107fSigmaXDeadZoneHit2(0),
108fSigmaZDeadZoneHit2(0),
109fXPassDeadZoneHits(0),
6518a6c5 110fUseTGeoInTracker(3),
572f41f9 111fAllowSharedClusters(kTRUE),
e50912db 112fClusterErrorsParam(1),
4a66240a 113fComputePlaneEff(kFALSE),
5fbd4fd6 114fHistoPlaneEff(kFALSE),
0ed58a47 115fIPlanePlaneEff(0),
275a301c 116fReadPlaneEffFromOCDB(kFALSE),
0ed58a47 117fMinPtPlaneEff(0),
118fMaxMissingClustersPlaneEff(0),
119fRequireClusterInOuterLayerPlaneEff(kFALSE),
120fRequireClusterInInnerLayerPlaneEff(kFALSE),
121fOnlyConstraintPlaneEff(kFALSE),
2755f080 122fExtendedEtaAcceptance(kFALSE),
23197852 123fUseBadZonesFromOCDB(kFALSE),
124fUseSingleBadChannelsFromOCDB(kFALSE),
125fMinFractionOfBadInRoad(0),
ae00569a 126fAllowProlongationWithEmptyRoad(kFALSE),
9f9cae94 127fOuterStartLayerSA(0),
2755f080 128fFactorSAWindowSizes(1.),
c7d6d7b7 129fNLoopsSA(33),
130fMinPhiSA(0.002),
131fMaxPhiSA(0.0145),
132fMinLambdaSA(0.003),
133fMaxLambdaSA(0.008),
5a03f353 134fSAOnePointTracks(kFALSE),
135fSAUseAllClusters(kFALSE),
6518a6c5 136fFindV0s(kTRUE),
137fUseUnfoldingInClusterFinderSPD(kFALSE),
138fUseUnfoldingInClusterFinderSDD(kTRUE),
a86176e3 139fUseUnfoldingInClusterFinderSSD(kTRUE),
7b116aa1 140fUseChargeMatchingInClusterFinderSSD(kTRUE),
141fTrackleterOnlyOneTrackletPerC2(kTRUE),
142fTrackleterPhiWindow(0.08),
143fTrackleterZetaWindow(1.00),
144fTrackleterRemoveClustersFromOverlaps(kFALSE),
145fTrackleterPhiOverlapCut(0.005),
146fTrackleterZetaOverlapCut(0.05)
44347160 147{
148 //
149 // constructor
150 //
6518a6c5 151 SetName("ITS");
152 SetTitle("ITS");
153
44347160 154 SetLayersParameters();
2755f080 155 for(Int_t i=0; i<AliITSgeomTGeo::kNLayers; i++) fLayersToSkip[i]=0;
6518a6c5 156 SetUseTGeoInTracker(3);
afd25725 157 SetAllowSharedClusters(kTRUE);
158 SetFindV0s(kTRUE);
6518a6c5 159 SetAddVirtualClustersInDeadZone(kFALSE);
572f41f9 160 SetUseAmplitudeInfo(kTRUE);
e50912db 161 SetClusterErrorsParam(1);
f9119eb9 162 SetClusterMisalError(0.);
7203e11a 163 SetVertexer3DDefaults();
44347160 164}
165//_____________________________________________________________________________
166AliITSRecoParam::~AliITSRecoParam()
167{
168 //
169 // destructor
170 //
171}
172//_____________________________________________________________________________
173AliITSRecoParam *AliITSRecoParam::GetHighFluxParam()
174{
175 //
176 // make default reconstruction parameters for hig flux env.
177 //
178 AliITSRecoParam *param = new AliITSRecoParam();
7203e11a 179 param->SetVertexer3DDefaults();
44347160 180
181 param->fMaxSnp = 0.95;
182
183 param->fNSigmaYLayerForRoadY = 4.;
184 param->fNSigmaRoadY = 7.5;
185 param->fNSigmaZLayerForRoadZ = 4.;
186 param->fNSigmaRoadZ = 7.5;
187
188 param->fNSigma2RoadZC = 60.; //7.75^2
189 param->fNSigma2RoadYC = 60.; //7.75^2
190 param->fNSigma2RoadZNonC = 50.; //7.07^2
191 param->fNSigma2RoadYNonC = 50.; //7.07^2
192
193 param->fMaxChi2PerCluster[0] = 11.; //7
194 param->fMaxChi2PerCluster[1] = 12.; //5
195 param->fMaxChi2PerCluster[2] = 12.; //8
196 param->fMaxChi2PerCluster[3] = 5.; //8
197 param->fMaxChi2PerCluster[4] = 12.; //6.5
198
199 param->fMaxNormChi2NonC[0] = 7.;
200 param->fMaxNormChi2NonC[1] = 8.;
201 param->fMaxNormChi2NonC[2] = 8.;
202 param->fMaxNormChi2NonC[3] = 11.;
203 param->fMaxNormChi2NonC[4] = 14.;
204 param->fMaxNormChi2NonC[5] = 25.;
205
206 param->fMaxNormChi2C[0] = 11.;
207 param->fMaxNormChi2C[1] = 13.;
208 param->fMaxNormChi2C[2] = 15.;
209 param->fMaxNormChi2C[3] = 18.;
210 param->fMaxNormChi2C[4] = 30.;
211 param->fMaxNormChi2C[5] = 35.;
afd25725 212
213 param->fMaxNormChi2NonCForHypothesis = 7.;
44347160 214
215 param->fMaxChi2 = 35.;
216
217 param->fMaxChi2s[0] = 25.; //40
218 param->fMaxChi2s[1] = 25.; //40
219 param->fMaxChi2s[2] = 25.; //40
220 param->fMaxChi2s[3] = 25.; //40
221 param->fMaxChi2s[4] = 40.; //40
222 param->fMaxChi2s[5] = 50.; //40
223
224 param->fMaxRoad = 6.;
225
226 // not used
227 param->fMaxChi2In = 16.;
228
229 param->fMaxChi2sR[0] = 10.;
230 param->fMaxChi2sR[1] = 10.;
231 param->fMaxChi2sR[2] = 10.;
232 param->fMaxChi2sR[3] = 10.;
233 param->fMaxChi2sR[4] = 30.;
234 param->fMaxChi2sR[5] = 40.;
235
236 param->fChi2PerCluster = 9.;
237 // not used
238
239 param->fXV = 0.;
240 param->fYV = 0.;
241 param->fZV = 0.;
242 param->fSigmaXV = 0.0050;
243 param->fSigmaYV = 0.0050;
244 param->fSigmaZV = 0.0100;
245
246 param->fVertexCut = 25.;
afd25725 247
248 param->fMaxDZforPrimTrk = 0.4;
249 param->fMaxDZToUseConstraint = 3.;
250
251 param->fMaxDforV0dghtrForProlongation = 30.;
6518a6c5 252 param->fMaxDForProlongation = 40.;//10.;
253 param->fMaxDZForProlongation = 60.;//20.;
afd25725 254 param->fMinPtForProlongation = 0.120;
255
256 param->fZWindowDeadZone = 2.0;
257 param->fSigmaXDeadZoneHit2 = 0.004/12.;
258 param->fSigmaZDeadZoneHit2 = 0.001/12.;
259 param->fXPassDeadZoneHits = 0.018;
44347160 260
261 return param;
262}
263//_____________________________________________________________________________
264AliITSRecoParam *AliITSRecoParam::GetLowFluxParam()
265{
266 //
267 // make default reconstruction parameters for low flux env.
268 //
c7d6d7b7 269 AliITSRecoParam *param = new AliITSRecoParam();
7203e11a 270 param->SetVertexer3DDefaults();
c7d6d7b7 271
272 param->fMaxSnp = 0.95;
273
274 param->fNSigmaYLayerForRoadY = 4.;
275 param->fNSigmaRoadY = 7.5;
276 param->fNSigmaZLayerForRoadZ = 4.;
277 param->fNSigmaRoadZ = 7.5;
278
279 param->fNSigma2RoadZC = 60.; //7.75^2
280 param->fNSigma2RoadYC = 60.; //7.75^2
281 param->fNSigma2RoadZNonC = 50.; //7.07^2
282 param->fNSigma2RoadYNonC = 50.; //7.07^2
283
284 param->fMaxChi2PerCluster[0] = 11.; //7
285 param->fMaxChi2PerCluster[1] = 12.; //5
286 param->fMaxChi2PerCluster[2] = 12.; //8
287 param->fMaxChi2PerCluster[3] = 5.; //8
288 param->fMaxChi2PerCluster[4] = 12.; //6.5
289
290 param->fMaxNormChi2NonC[0] = 7.;
291 param->fMaxNormChi2NonC[1] = 8.;
292 param->fMaxNormChi2NonC[2] = 8.;
293 param->fMaxNormChi2NonC[3] = 11.;
294 param->fMaxNormChi2NonC[4] = 14.;
295 param->fMaxNormChi2NonC[5] = 25.;
296
297 param->fMaxNormChi2C[0] = 11.;
298 param->fMaxNormChi2C[1] = 13.;
299 param->fMaxNormChi2C[2] = 15.;
300 param->fMaxNormChi2C[3] = 18.;
301 param->fMaxNormChi2C[4] = 30.;
302 param->fMaxNormChi2C[5] = 35.;
303
304 param->fMaxNormChi2NonCForHypothesis = 7.;
305
306 param->fMaxChi2 = 35.;
307
308 param->fMaxChi2s[0] = 25.; //40
309 param->fMaxChi2s[1] = 25.; //40
310 param->fMaxChi2s[2] = 25.; //40
311 param->fMaxChi2s[3] = 25.; //40
312 param->fMaxChi2s[4] = 40.; //40
313 param->fMaxChi2s[5] = 50.; //40
314
315 param->fMaxRoad = 6.;
316
317 // not used
318 param->fMaxChi2In = 16.;
319
320 param->fMaxChi2sR[0] = 10.;
321 param->fMaxChi2sR[1] = 10.;
322 param->fMaxChi2sR[2] = 10.;
323 param->fMaxChi2sR[3] = 10.;
324 param->fMaxChi2sR[4] = 30.;
325 param->fMaxChi2sR[5] = 40.;
326
327 param->fChi2PerCluster = 9.;
328 // not used
329
330 param->fXV = 0.;
331 param->fYV = 0.;
332 param->fZV = 0.;
333 param->fSigmaXV = 0.0050;
334 param->fSigmaYV = 0.0050;
335 param->fSigmaZV = 0.0100;
336
337 param->fVertexCut = 25.;
338
339 param->fMaxDZforPrimTrk = 0.4;
340 param->fMaxDZToUseConstraint = 3.;
341
342 param->fMaxDforV0dghtrForProlongation = 30.;
343 param->fMaxDForProlongation = 40.;//10.;
344 param->fMaxDZForProlongation = 60.;//20.;
345 param->fMinPtForProlongation = 0.120;
346
347 param->fZWindowDeadZone = 2.0;
348 param->fSigmaXDeadZoneHit2 = 0.004/12.;
349 param->fSigmaZDeadZoneHit2 = 0.001/12.;
350 param->fXPassDeadZoneHits = 0.018;
351 param->SetNLoopsSA(10);
7203e11a 352
c7d6d7b7 353 return param;
44347160 354}
355//_____________________________________________________________________________
356AliITSRecoParam *AliITSRecoParam::GetCosmicTestParam()
357{
358 //
359 // make default reconstruction parameters for cosmics
360 //
e340bb86 361 AliITSRecoParam *param = new AliITSRecoParam();
362
f9119eb9 363 // vertexer for cosmics
364 param->SetVertexer(2);
365
9f9cae94 366 // find independently ITS SA tracks
367 param->SetSAUseAllClusters();
368 param->SetOuterStartLayerSA(AliITSgeomTGeo::GetNLayers()-2);
f9119eb9 369
2755f080 370 // larger seach windows for SA (in case of large misalignments)
371 param->SetFactorSAWindowSizes(3.);
e340bb86 372
373 param->fMaxSnp = 0.95;
374
375 param->fNSigmaYLayerForRoadY = 4.;
376 param->fNSigmaRoadY = 7.5;
377 param->fNSigmaZLayerForRoadZ = 4.;
378 param->fNSigmaRoadZ = 7.5;
379
380 param->fNSigma2RoadZC = 60.; //7.75^2
381 param->fNSigma2RoadYC = 60.; //7.75^2
382 param->fNSigma2RoadZNonC = 50.; //7.07^2
383 param->fNSigma2RoadYNonC = 50.; //7.07^2
384
385 param->fMaxChi2PerCluster[0] = 11.; //7
386 param->fMaxChi2PerCluster[1] = 12.; //5
387 param->fMaxChi2PerCluster[2] = 12.; //8
388 param->fMaxChi2PerCluster[3] = 5.; //8
389 param->fMaxChi2PerCluster[4] = 12.; //6.5
390
391 param->fMaxNormChi2NonC[0] = 7.;
392 param->fMaxNormChi2NonC[1] = 8.;
393 param->fMaxNormChi2NonC[2] = 8.;
394 param->fMaxNormChi2NonC[3] = 11.;
395 param->fMaxNormChi2NonC[4] = 14.;
396 param->fMaxNormChi2NonC[5] = 25.;
397
398 param->fMaxNormChi2C[0] = 11.;
399 param->fMaxNormChi2C[1] = 13.;
400 param->fMaxNormChi2C[2] = 15.;
401 param->fMaxNormChi2C[3] = 18.;
402 param->fMaxNormChi2C[4] = 30.;
403 param->fMaxNormChi2C[5] = 35.;
404
405 param->fMaxNormChi2NonCForHypothesis = 7.;
406
407 param->fMaxChi2 = 35.;
408
409 param->fMaxChi2s[0] = 25.; //40
410 param->fMaxChi2s[1] = 25.; //40
411 param->fMaxChi2s[2] = 25.; //40
412 param->fMaxChi2s[3] = 25.; //40
413 param->fMaxChi2s[4] = 40.; //40
414 param->fMaxChi2s[5] = 50.; //40
415
416 param->fMaxRoad = 6.;
417
418 // not used
419 param->fMaxChi2In = 16.;
420
421 param->fMaxChi2sR[0] = 10.;
422 param->fMaxChi2sR[1] = 10.;
423 param->fMaxChi2sR[2] = 10.;
424 param->fMaxChi2sR[3] = 10.;
425 param->fMaxChi2sR[4] = 30.;
426 param->fMaxChi2sR[5] = 40.;
427
428 param->fChi2PerCluster = 9.;
429 // not used
430
431 param->fXV = 0.;
432 param->fYV = 0.;
433 param->fZV = 0.;
434 param->fSigmaXV = 0.0050;
435 param->fSigmaYV = 0.0050;
436 param->fSigmaZV = 0.0100;
437
438 param->fVertexCut = 25.;
439
440 param->fMaxDZforPrimTrk = 0.4;
441 param->fMaxDZToUseConstraint = 3.;
442
443 param->fMaxDforV0dghtrForProlongation = 30.;
444 param->fMaxDForProlongation = 10.;
445 param->fMaxDZForProlongation = 20.;
446 param->fMinPtForProlongation = 0.120;
447
448 param->fZWindowDeadZone = 2.0;
449 param->fSigmaXDeadZoneHit2 = 0.004/12.;
450 param->fSigmaZDeadZoneHit2 = 0.001/12.;
451 param->fXPassDeadZoneHits = 0.018;
452
453
454 return param;
44347160 455}
456//_____________________________________________________________________________
ae00569a 457AliITSRecoParam *AliITSRecoParam::GetPlaneEffParam(Int_t i)
458{
459 //
460 // make special reconstruction parameters for Plane Efficiency study on layer i
461 //
0ed58a47 462 if (i<0 || i>=AliITSgeomTGeo::kNLayers) {
463 printf("AliITSRecoParam::GetPlaneEffParam: index of ITS Plane not in the range [0,5]\n");
464 printf("returning null pointer");
465 return NULL;
466 }
ae00569a 467 AliITSRecoParam *param;
468 param = GetHighFluxParam();
469 param->SetComputePlaneEff();
470 param->SetLayerToSkip(i);
0ed58a47 471 param->SetIPlanePlaneEff(i);
472 // optimized setting for SPD0 (i==0)
473 if (i==0 || i==1) {
474 param->fMinPtPlaneEff = 0.200; // high pt particles
475 param->fMaxMissingClustersPlaneEff = 1; // at most 1 layer out of 5 without cluster
476 param->fRequireClusterInOuterLayerPlaneEff = kTRUE; // cluster on SPD1 must be
477 //param->fOnlyConstraintPlaneEff = kTRUE;
478 }
479 if (i==2 || i==3) {
480 param->fMinPtPlaneEff = 0.200; // high pt particles
481 param->fMaxMissingClustersPlaneEff = 1; // at most 1 layer out of 5 without cluster
482 param->fRequireClusterInOuterLayerPlaneEff = kTRUE;
483 //param->fOnlyConstraintPlaneEff = kTRUE;
484 }
485 if (i==4) {
486 param->fMinPtPlaneEff = 0.200; // high pt particles
487 param->fMaxMissingClustersPlaneEff = 0; // at most 1 layer out of 5 without cluster
488 param->fRequireClusterInOuterLayerPlaneEff = kTRUE;
489 //param->fOnlyConstraintPlaneEff = kTRUE;
490 }
491 if (i==5) {
492 param->fMinPtPlaneEff = 0.200; // high pt particles
493 }
494 //
ae00569a 495 return param;
496}
497//_____________________________________________________________________________
44347160 498void AliITSRecoParam::SetLayersParameters()
499{
500 //
501 // number of layers and layers spatial resolutions
502 //
503
504 // spatial resolutions of the detectors
505 // y: 12 12 38 38 20 20 micron
506 fSigmaY2[0]=1.44e-6;
507 fSigmaY2[1]=1.44e-6;
508 fSigmaY2[2]=1.444e-5;
509 fSigmaY2[3]=1.444e-5;
510 fSigmaY2[4]=4.0e-6;
511 fSigmaY2[5]=4.0e-6;
512 // z: 120 120 28 28 830 830 micron
513 fSigmaZ2[0]=1.44e-4;
514 fSigmaZ2[1]=1.44e-4;
515 fSigmaZ2[2]=7.84e-6;
516 fSigmaZ2[3]=7.84e-6;
517 fSigmaZ2[4]=6.889e-3;
518 fSigmaZ2[5]=6.889e-3;
519
520 return;
521}
ed446fa3 522//_____________________________________________________________________________
523void AliITSRecoParam::PrintParameters() const
524{
525 //
526 // print parameters
527 //
528
529 printf("============================= AliITSRecoParam::PrintParameters ");
f9119eb9 530 printf("============================= \n\n");
ed446fa3 531 for(Int_t i=0; i<AliITSgeomTGeo::kNLayers; i++) {
532 if(!fLayersToSkip[i]) {
533 printf("ITS Traking: using layer %d\n",i);
534 } else {
535 printf("ITS Traking: skipping layer %d\n",i);
536 }
537 }
538 for(Int_t i=0; i<AliITSgeomTGeo::kNLayers; i++) {
539 if(fUseAmplitudeInfo[i]) {
540 printf("ITS Traking: use amplitude info for layer %d\n",i);
541 } else {
542 printf("ITS Traking: don't use amplitude info for layer %d\n",i);
543 }
544 }
545 for(Int_t i=0; i<AliITSgeomTGeo::kNLayers; i++)
f9119eb9 546 printf("Layer %d:\n sigmaY2 %f, sigmaZ2 %f\n sigmaMisalY %f, sigmaMisalZ %f\n max norm chi2 for non constrained tracks %f\n max norm chi2 for constrained tracks %f\n max predicted chi2 (cluster & track prol.) %f\n",i,fSigmaY2[i],fSigmaZ2[i],fClusterMisalErrorY[i],fClusterMisalErrorZ[i],fMaxNormChi2NonC[i],fMaxNormChi2C[i],fMaxChi2s[i]);
ed446fa3 547
548
549 Dump();
550
551 return;
552}