]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSRecoParam.cxx
Bug fix
[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(),
e50912db 65fMaxSnp(1.),
572f41f9 66fNSigmaYLayerForRoadY(0),
67fNSigmaRoadY(0),
68fNSigmaZLayerForRoadZ(0),
69fNSigmaRoadZ(0),
70fNSigma2RoadZC(0),
71fNSigma2RoadYC(0),
72fNSigma2RoadZNonC(0),
73fNSigma2RoadYNonC(0),
74fMaxNormChi2NonCForHypothesis(0),
75fMaxChi2(0),
76fMaxRoad(0),
77fMaxChi2In(0),
78fChi2PerCluster(0),
79fXV(0),
80fYV(0),
81fZV(0),
82fSigmaXV(0),
83fSigmaYV(0),
84fSigmaZV(0),
85fVertexCut(0),
86fMaxDZforPrimTrk(0),
87fMaxDZToUseConstraint(0),
88fMaxDforV0dghtrForProlongation(0),
89fMaxDForProlongation(0),
90fMaxDZForProlongation(0),
91fMinPtForProlongation(0),
6518a6c5 92fAddVirtualClustersInDeadZone(kFALSE),
572f41f9 93fZWindowDeadZone(0),
94fSigmaXDeadZoneHit2(0),
95fSigmaZDeadZoneHit2(0),
96fXPassDeadZoneHits(0),
6518a6c5 97fUseTGeoInTracker(3),
572f41f9 98fAllowSharedClusters(kTRUE),
e50912db 99fClusterErrorsParam(1),
2755f080 100fExtendedEtaAcceptance(kFALSE),
6518a6c5 101fUseDeadZonesFromOCDB(kFALSE),
2755f080 102fFactorSAWindowSizes(1.),
6518a6c5 103fFindV0s(kTRUE),
104fUseUnfoldingInClusterFinderSPD(kFALSE),
105fUseUnfoldingInClusterFinderSDD(kTRUE),
106fUseUnfoldingInClusterFinderSSD(kTRUE)
44347160 107{
108 //
109 // constructor
110 //
6518a6c5 111 SetName("ITS");
112 SetTitle("ITS");
113
44347160 114 SetLayersParameters();
2755f080 115 for(Int_t i=0; i<AliITSgeomTGeo::kNLayers; i++) fLayersToSkip[i]=0;
6518a6c5 116 SetUseTGeoInTracker(3);
afd25725 117 SetAllowSharedClusters(kTRUE);
118 SetFindV0s(kTRUE);
6518a6c5 119 SetAddVirtualClustersInDeadZone(kFALSE);
572f41f9 120 SetUseAmplitudeInfo(kTRUE);
e50912db 121 SetClusterErrorsParam(1);
44347160 122}
123//_____________________________________________________________________________
124AliITSRecoParam::~AliITSRecoParam()
125{
126 //
127 // destructor
128 //
129}
130//_____________________________________________________________________________
131AliITSRecoParam *AliITSRecoParam::GetHighFluxParam()
132{
133 //
134 // make default reconstruction parameters for hig flux env.
135 //
136 AliITSRecoParam *param = new AliITSRecoParam();
137
138 param->fMaxSnp = 0.95;
139
140 param->fNSigmaYLayerForRoadY = 4.;
141 param->fNSigmaRoadY = 7.5;
142 param->fNSigmaZLayerForRoadZ = 4.;
143 param->fNSigmaRoadZ = 7.5;
144
145 param->fNSigma2RoadZC = 60.; //7.75^2
146 param->fNSigma2RoadYC = 60.; //7.75^2
147 param->fNSigma2RoadZNonC = 50.; //7.07^2
148 param->fNSigma2RoadYNonC = 50.; //7.07^2
149
150 param->fMaxChi2PerCluster[0] = 11.; //7
151 param->fMaxChi2PerCluster[1] = 12.; //5
152 param->fMaxChi2PerCluster[2] = 12.; //8
153 param->fMaxChi2PerCluster[3] = 5.; //8
154 param->fMaxChi2PerCluster[4] = 12.; //6.5
155
156 param->fMaxNormChi2NonC[0] = 7.;
157 param->fMaxNormChi2NonC[1] = 8.;
158 param->fMaxNormChi2NonC[2] = 8.;
159 param->fMaxNormChi2NonC[3] = 11.;
160 param->fMaxNormChi2NonC[4] = 14.;
161 param->fMaxNormChi2NonC[5] = 25.;
162
163 param->fMaxNormChi2C[0] = 11.;
164 param->fMaxNormChi2C[1] = 13.;
165 param->fMaxNormChi2C[2] = 15.;
166 param->fMaxNormChi2C[3] = 18.;
167 param->fMaxNormChi2C[4] = 30.;
168 param->fMaxNormChi2C[5] = 35.;
afd25725 169
170 param->fMaxNormChi2NonCForHypothesis = 7.;
44347160 171
172 param->fMaxChi2 = 35.;
173
174 param->fMaxChi2s[0] = 25.; //40
175 param->fMaxChi2s[1] = 25.; //40
176 param->fMaxChi2s[2] = 25.; //40
177 param->fMaxChi2s[3] = 25.; //40
178 param->fMaxChi2s[4] = 40.; //40
179 param->fMaxChi2s[5] = 50.; //40
180
181 param->fMaxRoad = 6.;
182
183 // not used
184 param->fMaxChi2In = 16.;
185
186 param->fMaxChi2sR[0] = 10.;
187 param->fMaxChi2sR[1] = 10.;
188 param->fMaxChi2sR[2] = 10.;
189 param->fMaxChi2sR[3] = 10.;
190 param->fMaxChi2sR[4] = 30.;
191 param->fMaxChi2sR[5] = 40.;
192
193 param->fChi2PerCluster = 9.;
194 // not used
195
196 param->fXV = 0.;
197 param->fYV = 0.;
198 param->fZV = 0.;
199 param->fSigmaXV = 0.0050;
200 param->fSigmaYV = 0.0050;
201 param->fSigmaZV = 0.0100;
202
203 param->fVertexCut = 25.;
afd25725 204
205 param->fMaxDZforPrimTrk = 0.4;
206 param->fMaxDZToUseConstraint = 3.;
207
208 param->fMaxDforV0dghtrForProlongation = 30.;
6518a6c5 209 param->fMaxDForProlongation = 40.;//10.;
210 param->fMaxDZForProlongation = 60.;//20.;
afd25725 211 param->fMinPtForProlongation = 0.120;
212
213 param->fZWindowDeadZone = 2.0;
214 param->fSigmaXDeadZoneHit2 = 0.004/12.;
215 param->fSigmaZDeadZoneHit2 = 0.001/12.;
216 param->fXPassDeadZoneHits = 0.018;
217
44347160 218
219 return param;
220}
221//_____________________________________________________________________________
222AliITSRecoParam *AliITSRecoParam::GetLowFluxParam()
223{
224 //
225 // make default reconstruction parameters for low flux env.
226 //
227 return GetHighFluxParam();
228}
229//_____________________________________________________________________________
230AliITSRecoParam *AliITSRecoParam::GetCosmicTestParam()
231{
232 //
233 // make default reconstruction parameters for cosmics
234 //
e340bb86 235 AliITSRecoParam *param = new AliITSRecoParam();
236
2755f080 237 // larger seach windows for SA (in case of large misalignments)
238 param->SetFactorSAWindowSizes(3.);
e340bb86 239
240 param->fMaxSnp = 0.95;
241
242 param->fNSigmaYLayerForRoadY = 4.;
243 param->fNSigmaRoadY = 7.5;
244 param->fNSigmaZLayerForRoadZ = 4.;
245 param->fNSigmaRoadZ = 7.5;
246
247 param->fNSigma2RoadZC = 60.; //7.75^2
248 param->fNSigma2RoadYC = 60.; //7.75^2
249 param->fNSigma2RoadZNonC = 50.; //7.07^2
250 param->fNSigma2RoadYNonC = 50.; //7.07^2
251
252 param->fMaxChi2PerCluster[0] = 11.; //7
253 param->fMaxChi2PerCluster[1] = 12.; //5
254 param->fMaxChi2PerCluster[2] = 12.; //8
255 param->fMaxChi2PerCluster[3] = 5.; //8
256 param->fMaxChi2PerCluster[4] = 12.; //6.5
257
258 param->fMaxNormChi2NonC[0] = 7.;
259 param->fMaxNormChi2NonC[1] = 8.;
260 param->fMaxNormChi2NonC[2] = 8.;
261 param->fMaxNormChi2NonC[3] = 11.;
262 param->fMaxNormChi2NonC[4] = 14.;
263 param->fMaxNormChi2NonC[5] = 25.;
264
265 param->fMaxNormChi2C[0] = 11.;
266 param->fMaxNormChi2C[1] = 13.;
267 param->fMaxNormChi2C[2] = 15.;
268 param->fMaxNormChi2C[3] = 18.;
269 param->fMaxNormChi2C[4] = 30.;
270 param->fMaxNormChi2C[5] = 35.;
271
272 param->fMaxNormChi2NonCForHypothesis = 7.;
273
274 param->fMaxChi2 = 35.;
275
276 param->fMaxChi2s[0] = 25.; //40
277 param->fMaxChi2s[1] = 25.; //40
278 param->fMaxChi2s[2] = 25.; //40
279 param->fMaxChi2s[3] = 25.; //40
280 param->fMaxChi2s[4] = 40.; //40
281 param->fMaxChi2s[5] = 50.; //40
282
283 param->fMaxRoad = 6.;
284
285 // not used
286 param->fMaxChi2In = 16.;
287
288 param->fMaxChi2sR[0] = 10.;
289 param->fMaxChi2sR[1] = 10.;
290 param->fMaxChi2sR[2] = 10.;
291 param->fMaxChi2sR[3] = 10.;
292 param->fMaxChi2sR[4] = 30.;
293 param->fMaxChi2sR[5] = 40.;
294
295 param->fChi2PerCluster = 9.;
296 // not used
297
298 param->fXV = 0.;
299 param->fYV = 0.;
300 param->fZV = 0.;
301 param->fSigmaXV = 0.0050;
302 param->fSigmaYV = 0.0050;
303 param->fSigmaZV = 0.0100;
304
305 param->fVertexCut = 25.;
306
307 param->fMaxDZforPrimTrk = 0.4;
308 param->fMaxDZToUseConstraint = 3.;
309
310 param->fMaxDforV0dghtrForProlongation = 30.;
311 param->fMaxDForProlongation = 10.;
312 param->fMaxDZForProlongation = 20.;
313 param->fMinPtForProlongation = 0.120;
314
315 param->fZWindowDeadZone = 2.0;
316 param->fSigmaXDeadZoneHit2 = 0.004/12.;
317 param->fSigmaZDeadZoneHit2 = 0.001/12.;
318 param->fXPassDeadZoneHits = 0.018;
319
320
321 return param;
44347160 322}
323//_____________________________________________________________________________
324void AliITSRecoParam::SetLayersParameters()
325{
326 //
327 // number of layers and layers spatial resolutions
328 //
329
330 // spatial resolutions of the detectors
331 // y: 12 12 38 38 20 20 micron
332 fSigmaY2[0]=1.44e-6;
333 fSigmaY2[1]=1.44e-6;
334 fSigmaY2[2]=1.444e-5;
335 fSigmaY2[3]=1.444e-5;
336 fSigmaY2[4]=4.0e-6;
337 fSigmaY2[5]=4.0e-6;
338 // z: 120 120 28 28 830 830 micron
339 fSigmaZ2[0]=1.44e-4;
340 fSigmaZ2[1]=1.44e-4;
341 fSigmaZ2[2]=7.84e-6;
342 fSigmaZ2[3]=7.84e-6;
343 fSigmaZ2[4]=6.889e-3;
344 fSigmaZ2[5]=6.889e-3;
345
346 return;
347}
348