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