]>
Commit | Line | Data |
---|---|---|
a00021a7 | 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 "AliGRPRecoParam.h" | |
17 | ||
18 | /////////////////////////////////////////////////////////////////////////////// | |
19 | // // | |
20 | // Class with GRP reconstruction parameters // | |
21 | // Origin: andrea.dainese@lnl.infn.it // | |
22 | // // | |
23 | /////////////////////////////////////////////////////////////////////////////// | |
24 | ||
25 | ||
26 | ||
27 | ClassImp(AliGRPRecoParam) | |
28 | ||
29 | //_____________________________________________________________________________ | |
30 | AliGRPRecoParam::AliGRPRecoParam() : AliDetectorRecoParam(), | |
71f6cda4 | 31 | fMostProbablePt(0.350), |
f2a195c1 | 32 | fVertexerTracksConstraintITS(kTRUE), |
33 | fVertexerTracksConstraintTPC(kTRUE), | |
7878b3ae | 34 | fVertexerTracksNCuts(24), |
a00021a7 | 35 | fVertexerTracksITSdcacut(0.1), |
36 | fVertexerTracksITSdcacutIter0(0.1), | |
37 | fVertexerTracksITSmaxd0z0(0.5), | |
38 | fVertexerTracksITSminCls(5), | |
39 | fVertexerTracksITSmintrks(1), | |
40 | fVertexerTracksITSnsigma(3.), | |
41 | fVertexerTracksITSnindetfitter(100.), | |
42 | fVertexerTracksITSmaxtgl(1000.), | |
43 | fVertexerTracksITSfidR(3.), | |
44 | fVertexerTracksITSfidZ(30.), | |
8c75f668 | 45 | fVertexerTracksITSalgo(1.), |
46 | fVertexerTracksITSalgoIter0(4.), | |
3f2db92f | 47 | // |
48 | fVertexerTracksITSMVTukey2(7.), | |
49 | fVertexerTracksITSMVSig2Ini(1e3), | |
50 | fVertexerTracksITSMVMaxSigma2(5.0), | |
51 | fVertexerTracksITSMVMinSig2Red(0.05), | |
52 | fVertexerTracksITSMVMinDst(10e-4), | |
53 | fVertexerTracksITSMVScanStep(2.), | |
54 | fVertexerTracksITSMVMaxWghNtr(10), | |
55 | fVertexerTracksITSMVFinalWBinary(1), | |
56 | fVertexerTracksITSMVBCSpacing(50), | |
57 | // | |
7878b3ae | 58 | fVertexerTracksITSclusterize(0), |
59 | fVertexerTracksITSclusterdz(999999.), | |
60 | fVertexerTracksITSclusternsigmaz(3.), | |
61 | // | |
a00021a7 | 62 | fVertexerTracksTPCdcacut(0.1), |
63 | fVertexerTracksTPCdcacutIter0(1.0), | |
64 | fVertexerTracksTPCmaxd0z0(5.), | |
65 | fVertexerTracksTPCminCls(10), | |
66 | fVertexerTracksTPCmintrks(1), | |
67 | fVertexerTracksTPCnsigma(3.), | |
68 | fVertexerTracksTPCnindetfitter(0.1), | |
69 | fVertexerTracksTPCmaxtgl(1.5), | |
70 | fVertexerTracksTPCfidR(3.), | |
8c75f668 | 71 | fVertexerTracksTPCfidZ(30.), |
72 | fVertexerTracksTPCalgo(1.), | |
61a14552 | 73 | fVertexerTracksTPCalgoIter0(4.), |
3f2db92f | 74 | // |
75 | fVertexerTracksTPCMVTukey2(7.), | |
76 | fVertexerTracksTPCMVSig2Ini(1e3), | |
77 | fVertexerTracksTPCMVMaxSigma2(5.0), | |
78 | fVertexerTracksTPCMVMinSig2Red(0.05), | |
79 | fVertexerTracksTPCMVMinDst(10e-4), | |
80 | fVertexerTracksTPCMVScanStep(2.), | |
81 | fVertexerTracksTPCMVMaxWghNtr(10), | |
82 | fVertexerTracksTPCMVFinalWBinary(1), | |
83 | fVertexerTracksTPCMVBCSpacing(50), | |
84 | // | |
7878b3ae | 85 | fVertexerTracksTPCclusterize(0), |
86 | fVertexerTracksTPCclusterdz(999999.), | |
87 | fVertexerTracksTPCclusternsigmaz(3.), | |
88 | // | |
61a14552 | 89 | fVertexerV0NCuts(7), |
90 | fVertexerV0Chi2max(33.), | |
91 | fVertexerV0DNmin(0.05), | |
92 | fVertexerV0DPmin(0.05), | |
93 | fVertexerV0DCAmax(1.5), | |
94 | fVertexerV0CPAmin(0.9), | |
95 | fVertexerV0Rmin(0.2), | |
96 | fVertexerV0Rmax(200.), | |
97 | fVertexerCascadeNCuts(8), | |
98 | fVertexerCascadeChi2max(33.), | |
99 | fVertexerCascadeDV0min(0.01), | |
100 | fVertexerCascadeMassWin(0.008), | |
101 | fVertexerCascadeDBachMin(0.01), | |
102 | fVertexerCascadeDCAmax(2.0), | |
103 | fVertexerCascadeCPAmin(0.98), | |
104 | fVertexerCascadeRmin(0.2), | |
105 | fVertexerCascadeRmax(100.) | |
a00021a7 | 106 | { |
107 | // | |
108 | // constructor | |
109 | // | |
110 | SetName("GRP"); | |
111 | SetTitle("GRP"); | |
112 | } | |
113 | ||
114 | //_____________________________________________________________________________ | |
115 | AliGRPRecoParam::~AliGRPRecoParam() | |
116 | { | |
117 | // | |
118 | // destructor | |
119 | // | |
120 | } | |
121 | ||
122 | AliGRPRecoParam::AliGRPRecoParam(const AliGRPRecoParam& par) : | |
123 | AliDetectorRecoParam(par), | |
71f6cda4 | 124 | fMostProbablePt(par.fMostProbablePt), |
f2a195c1 | 125 | fVertexerTracksConstraintITS(par.fVertexerTracksConstraintITS), |
126 | fVertexerTracksConstraintTPC(par.fVertexerTracksConstraintTPC), | |
a00021a7 | 127 | fVertexerTracksNCuts(par.fVertexerTracksNCuts), |
128 | fVertexerTracksITSdcacut(par.fVertexerTracksITSdcacut), | |
129 | fVertexerTracksITSdcacutIter0(par.fVertexerTracksITSdcacutIter0), | |
130 | fVertexerTracksITSmaxd0z0(par.fVertexerTracksITSmaxd0z0), | |
131 | fVertexerTracksITSminCls(par.fVertexerTracksITSminCls), | |
132 | fVertexerTracksITSmintrks(par.fVertexerTracksITSmintrks), | |
133 | fVertexerTracksITSnsigma(par.fVertexerTracksITSnsigma), | |
134 | fVertexerTracksITSnindetfitter(par.fVertexerTracksITSnindetfitter), | |
135 | fVertexerTracksITSmaxtgl(par.fVertexerTracksITSmaxtgl), | |
136 | fVertexerTracksITSfidR(par.fVertexerTracksITSfidR), | |
137 | fVertexerTracksITSfidZ(par.fVertexerTracksITSfidZ), | |
8c75f668 | 138 | fVertexerTracksITSalgo(par.fVertexerTracksITSalgo), |
139 | fVertexerTracksITSalgoIter0(par.fVertexerTracksITSalgoIter0), | |
3f2db92f | 140 | // |
141 | fVertexerTracksITSMVTukey2(par.fVertexerTracksITSMVTukey2), | |
142 | fVertexerTracksITSMVSig2Ini(par.fVertexerTracksITSMVSig2Ini), | |
143 | fVertexerTracksITSMVMaxSigma2(par.fVertexerTracksITSMVMaxSigma2), | |
144 | fVertexerTracksITSMVMinSig2Red(par.fVertexerTracksITSMVMinSig2Red), | |
145 | fVertexerTracksITSMVMinDst(par.fVertexerTracksITSMVMinDst), | |
146 | fVertexerTracksITSMVScanStep(par.fVertexerTracksITSMVScanStep), | |
147 | fVertexerTracksITSMVMaxWghNtr(par.fVertexerTracksITSMVMaxWghNtr), | |
148 | fVertexerTracksITSMVFinalWBinary(par.fVertexerTracksITSMVFinalWBinary), | |
149 | fVertexerTracksITSMVBCSpacing(par.fVertexerTracksITSMVBCSpacing), | |
150 | // | |
7878b3ae | 151 | fVertexerTracksITSclusterize(par.fVertexerTracksITSclusterize), |
152 | fVertexerTracksITSclusterdz(par.fVertexerTracksITSclusterdz), | |
153 | fVertexerTracksITSclusternsigmaz(par.fVertexerTracksITSclusternsigmaz), | |
154 | // | |
a00021a7 | 155 | fVertexerTracksTPCdcacut(par.fVertexerTracksTPCdcacut), |
156 | fVertexerTracksTPCdcacutIter0(par.fVertexerTracksTPCdcacutIter0), | |
157 | fVertexerTracksTPCmaxd0z0(par.fVertexerTracksTPCmaxd0z0), | |
158 | fVertexerTracksTPCminCls(par.fVertexerTracksTPCminCls), | |
159 | fVertexerTracksTPCmintrks(par.fVertexerTracksTPCmintrks), | |
160 | fVertexerTracksTPCnsigma(par.fVertexerTracksTPCnsigma), | |
161 | fVertexerTracksTPCnindetfitter(par.fVertexerTracksTPCnindetfitter), | |
162 | fVertexerTracksTPCmaxtgl(par.fVertexerTracksTPCmaxtgl), | |
163 | fVertexerTracksTPCfidR(par.fVertexerTracksTPCfidR), | |
8c75f668 | 164 | fVertexerTracksTPCfidZ(par.fVertexerTracksTPCfidZ), |
165 | fVertexerTracksTPCalgo(par.fVertexerTracksTPCalgo), | |
61a14552 | 166 | fVertexerTracksTPCalgoIter0(par.fVertexerTracksTPCalgoIter0), |
3f2db92f | 167 | // |
168 | fVertexerTracksTPCMVTukey2(par.fVertexerTracksTPCMVTukey2), | |
169 | fVertexerTracksTPCMVSig2Ini(par.fVertexerTracksTPCMVSig2Ini), | |
170 | fVertexerTracksTPCMVMaxSigma2(par.fVertexerTracksTPCMVMaxSigma2), | |
171 | fVertexerTracksTPCMVMinSig2Red(par.fVertexerTracksTPCMVMinSig2Red), | |
172 | fVertexerTracksTPCMVMinDst(par.fVertexerTracksTPCMVMinDst), | |
173 | fVertexerTracksTPCMVScanStep(par.fVertexerTracksTPCMVScanStep), | |
174 | fVertexerTracksTPCMVMaxWghNtr(par.fVertexerTracksTPCMVMaxWghNtr), | |
175 | fVertexerTracksTPCMVFinalWBinary(par.fVertexerTracksTPCMVFinalWBinary), | |
176 | fVertexerTracksTPCMVBCSpacing(par.fVertexerTracksTPCMVBCSpacing), | |
177 | // | |
7878b3ae | 178 | fVertexerTracksTPCclusterize(par.fVertexerTracksTPCclusterize), |
179 | fVertexerTracksTPCclusterdz(par.fVertexerTracksTPCclusterdz), | |
180 | fVertexerTracksTPCclusternsigmaz(par.fVertexerTracksTPCclusternsigmaz), | |
181 | // | |
61a14552 | 182 | fVertexerV0NCuts(par.fVertexerV0NCuts), |
183 | fVertexerV0Chi2max(par.fVertexerV0Chi2max), | |
184 | fVertexerV0DNmin(par.fVertexerV0DNmin), | |
185 | fVertexerV0DPmin(par.fVertexerV0DPmin), | |
186 | fVertexerV0DCAmax(par.fVertexerV0DCAmax), | |
187 | fVertexerV0CPAmin(par.fVertexerV0CPAmin), | |
188 | fVertexerV0Rmin(par.fVertexerV0Rmin), | |
189 | fVertexerV0Rmax(par.fVertexerV0Rmax), | |
190 | fVertexerCascadeNCuts(par.fVertexerCascadeNCuts), | |
191 | fVertexerCascadeChi2max(par.fVertexerCascadeChi2max), | |
192 | fVertexerCascadeDV0min(par.fVertexerCascadeDV0min), | |
193 | fVertexerCascadeMassWin(par.fVertexerCascadeMassWin), | |
194 | fVertexerCascadeDBachMin(par.fVertexerCascadeDBachMin), | |
195 | fVertexerCascadeDCAmax(par.fVertexerCascadeDCAmax), | |
196 | fVertexerCascadeCPAmin(par.fVertexerCascadeCPAmin), | |
197 | fVertexerCascadeRmin(par.fVertexerCascadeRmin), | |
198 | fVertexerCascadeRmax(par.fVertexerCascadeRmax) | |
a00021a7 | 199 | { |
200 | // copy constructor | |
201 | } | |
202 | ||
203 | //_____________________________________________________________________________ | |
204 | AliGRPRecoParam& AliGRPRecoParam::operator = (const AliGRPRecoParam& par) | |
205 | { | |
206 | // assignment operator | |
207 | ||
208 | if(&par == this) return *this; | |
209 | ||
210 | this->~AliGRPRecoParam(); | |
211 | new(this) AliGRPRecoParam(par); | |
212 | return *this; | |
213 | } | |
214 | ||
215 | //_____________________________________________________________________________ | |
216 | AliGRPRecoParam *AliGRPRecoParam::GetHighFluxParam() | |
217 | { | |
218 | // | |
61a14552 | 219 | // make default reconstruction parameters for high flux env. |
a00021a7 | 220 | // |
221 | AliGRPRecoParam *param = new AliGRPRecoParam(); | |
222 | ||
8c75f668 | 223 | // to speed up the vertexing in PbPb |
224 | param->fVertexerTracksITSalgoIter0 = 1.; | |
225 | param->fVertexerTracksTPCalgoIter0 = 1.; | |
226 | ||
61a14552 | 227 | // tighter selections for V0s |
228 | param->fVertexerV0Chi2max = 33.; | |
229 | param->fVertexerV0DNmin = 0.1; | |
230 | param->fVertexerV0DPmin = 0.1; | |
5e1dcac5 | 231 | param->fVertexerV0DCAmax = 1.0; |
232 | param->fVertexerV0CPAmin = 0.998; | |
61a14552 | 233 | param->fVertexerV0Rmin = 0.9; |
234 | param->fVertexerV0Rmax = 100.; | |
235 | ||
236 | // tighter selections for Cascades | |
237 | param->fVertexerCascadeChi2max = 33.; | |
238 | param->fVertexerCascadeDV0min = 0.05; | |
239 | param->fVertexerCascadeMassWin = 0.008; | |
5e1dcac5 | 240 | param->fVertexerCascadeDBachMin = 0.030; |
241 | param->fVertexerCascadeDCAmax = 0.3; | |
242 | param->fVertexerCascadeCPAmin = 0.999; | |
61a14552 | 243 | param->fVertexerCascadeRmin = 0.9; |
244 | param->fVertexerCascadeRmax = 100.; | |
245 | ||
a00021a7 | 246 | return param; |
247 | } | |
248 | //_____________________________________________________________________________ | |
249 | AliGRPRecoParam *AliGRPRecoParam::GetLowFluxParam() | |
250 | { | |
251 | // | |
252 | // make default reconstruction parameters for low flux env. | |
253 | // | |
254 | AliGRPRecoParam *param = new AliGRPRecoParam(); | |
a00021a7 | 255 | return param; |
256 | } | |
257 | //_____________________________________________________________________________ | |
f2a195c1 | 258 | AliGRPRecoParam *AliGRPRecoParam::GetCosmicTestParam() |
259 | { | |
260 | // | |
261 | // make default reconstruction parameters for cosmics env. | |
262 | // | |
263 | AliGRPRecoParam *param = new AliGRPRecoParam(); | |
264 | ||
b5f9d03a | 265 | param->SetVertexerTracksConstraintITS(kFALSE); |
266 | param->SetVertexerTracksConstraintTPC(kFALSE); | |
267 | param->SetMostProbablePt(3.0); | |
268 | ||
f2a195c1 | 269 | return param; |
270 | } | |
271 | //_____________________________________________________________________________ | |
8eaa1a42 | 272 | void AliGRPRecoParam::GetVertexerTracksCuts(Int_t mode,Double_t *cuts, int n) const { |
a00021a7 | 273 | // |
274 | // get cuts for ITS (0) or TPC (1) mode | |
275 | // | |
276 | if(mode==1) { | |
8eaa1a42 | 277 | if (n>0) cuts[0] = fVertexerTracksTPCdcacut; |
278 | if (n>1) cuts[1] = fVertexerTracksTPCdcacutIter0; | |
279 | if (n>2) cuts[2] = fVertexerTracksTPCmaxd0z0; | |
280 | if (n>3) cuts[3] = fVertexerTracksTPCminCls; | |
281 | if (n>4) cuts[4] = fVertexerTracksTPCmintrks; | |
282 | if (n>5) cuts[5] = fVertexerTracksTPCnsigma; | |
283 | if (n>6) cuts[6] = fVertexerTracksTPCnindetfitter; | |
284 | if (n>7) cuts[7] = fVertexerTracksTPCmaxtgl; | |
285 | if (n>8) cuts[8] = fVertexerTracksTPCfidR; | |
286 | if (n>9) cuts[9] = fVertexerTracksTPCfidZ; | |
287 | if (n>10) cuts[10]= fVertexerTracksTPCalgo; | |
288 | if (n>11) cuts[11]= fVertexerTracksTPCalgoIter0; | |
3f2db92f | 289 | // |
8eaa1a42 | 290 | if (n>12) cuts[12]= fVertexerTracksTPCMVTukey2; |
291 | if (n>13) cuts[13]= fVertexerTracksTPCMVSig2Ini; | |
292 | if (n>14) cuts[14]= fVertexerTracksTPCMVMaxSigma2; | |
293 | if (n>15) cuts[15]= fVertexerTracksTPCMVMinSig2Red; | |
294 | if (n>16) cuts[16]= fVertexerTracksTPCMVMinDst; | |
295 | if (n>17) cuts[17]= fVertexerTracksTPCMVScanStep; | |
296 | if (n>18) cuts[18]= fVertexerTracksTPCMVMaxWghNtr; | |
297 | if (n>19) cuts[19]= fVertexerTracksTPCMVFinalWBinary; | |
298 | if (n>20) cuts[20]= fVertexerTracksTPCMVBCSpacing; | |
7878b3ae | 299 | // |
300 | if (n>21) cuts[21]= fVertexerTracksTPCclusterize; | |
301 | if (n>22) cuts[22]= fVertexerTracksTPCclusterdz; | |
302 | if (n>23) cuts[23]= fVertexerTracksTPCclusternsigmaz; | |
a00021a7 | 303 | } else { |
8eaa1a42 | 304 | if (n>0 ) cuts[0] = fVertexerTracksITSdcacut; |
305 | if (n>1 ) cuts[1] = fVertexerTracksITSdcacutIter0; | |
306 | if (n>2 ) cuts[2] = fVertexerTracksITSmaxd0z0; | |
307 | if (n>3 ) cuts[3] = fVertexerTracksITSminCls; | |
308 | if (n>4 ) cuts[4] = fVertexerTracksITSmintrks; | |
309 | if (n>5 ) cuts[5] = fVertexerTracksITSnsigma; | |
310 | if (n>6 ) cuts[6] = fVertexerTracksITSnindetfitter; | |
311 | if (n>7 ) cuts[7] = fVertexerTracksITSmaxtgl; | |
312 | if (n>8 ) cuts[8] = fVertexerTracksITSfidR; | |
313 | if (n>9 ) cuts[9] = fVertexerTracksITSfidZ; | |
314 | if (n>10) cuts[10]= fVertexerTracksITSalgo; | |
315 | if (n>11) cuts[11]= fVertexerTracksITSalgoIter0; | |
3f2db92f | 316 | // |
8eaa1a42 | 317 | if (n>12) cuts[12]= fVertexerTracksITSMVTukey2; |
318 | if (n>13) cuts[13]= fVertexerTracksITSMVSig2Ini; | |
319 | if (n>14) cuts[14]= fVertexerTracksITSMVMaxSigma2; | |
320 | if (n>15) cuts[15]= fVertexerTracksITSMVMinSig2Red; | |
321 | if (n>16) cuts[16]= fVertexerTracksITSMVMinDst; | |
322 | if (n>17) cuts[17]= fVertexerTracksITSMVScanStep; | |
323 | if (n>18) cuts[18]= fVertexerTracksITSMVMaxWghNtr; | |
324 | if (n>19) cuts[19]= fVertexerTracksITSMVFinalWBinary; | |
325 | if (n>20) cuts[20]= fVertexerTracksITSMVBCSpacing; | |
7878b3ae | 326 | // |
327 | if (n>21) cuts[21]= fVertexerTracksITSclusterize; | |
328 | if (n>22) cuts[22]= fVertexerTracksITSclusterdz; | |
329 | if (n>23) cuts[23]= fVertexerTracksITSclusternsigmaz; | |
a00021a7 | 330 | } |
331 | ||
332 | return; | |
333 | } | |
334 | //_____________________________________________________________________________ | |
7878b3ae | 335 | void AliGRPRecoParam::SetVertexerTracksCuts(Int_t mode,Int_t ncuts,Double_t* cuts) { |
a00021a7 | 336 | // |
337 | // set cuts for ITS (0) or TPC (1) mode | |
338 | // | |
339 | if(ncuts!=fVertexerTracksNCuts) { | |
340 | printf("AliGRPRecoParam: Number of AliVertexerTracks cuts is %d\n",fVertexerTracksNCuts); | |
341 | return; | |
342 | } | |
343 | ||
344 | if(mode==1) { | |
8eaa1a42 | 345 | if (ncuts>0) fVertexerTracksTPCdcacut = cuts[0]; |
346 | if (ncuts>1) fVertexerTracksTPCdcacutIter0 = cuts[1]; | |
347 | if (ncuts>2) fVertexerTracksTPCmaxd0z0 = cuts[2]; | |
348 | if (ncuts>3) fVertexerTracksTPCminCls = cuts[3]; | |
349 | if (ncuts>4) fVertexerTracksTPCmintrks = cuts[4]; | |
350 | if (ncuts>5) fVertexerTracksTPCnsigma = cuts[5]; | |
351 | if (ncuts>6) fVertexerTracksTPCnindetfitter = cuts[6]; | |
352 | if (ncuts>7) fVertexerTracksTPCmaxtgl = cuts[7]; | |
353 | if (ncuts>8) fVertexerTracksTPCfidR = cuts[8]; | |
354 | if (ncuts>9) fVertexerTracksTPCfidZ = cuts[9]; | |
355 | if (ncuts>10) fVertexerTracksTPCalgo = cuts[10]; | |
356 | if (ncuts>11) fVertexerTracksTPCalgoIter0 = cuts[11]; | |
3f2db92f | 357 | // |
8eaa1a42 | 358 | if (ncuts>12) fVertexerTracksTPCMVTukey2 = cuts[12]; |
359 | if (ncuts>13) fVertexerTracksTPCMVSig2Ini = cuts[13]; | |
360 | if (ncuts>14) fVertexerTracksTPCMVMaxSigma2 = cuts[14]; | |
361 | if (ncuts>15) fVertexerTracksTPCMVMinSig2Red = cuts[15]; | |
362 | if (ncuts>16) fVertexerTracksTPCMVMinDst = cuts[16]; | |
363 | if (ncuts>17) fVertexerTracksTPCMVScanStep = cuts[17]; | |
364 | if (ncuts>18) fVertexerTracksTPCMVMaxWghNtr = cuts[18]; | |
365 | if (ncuts>19) fVertexerTracksTPCMVFinalWBinary = cuts[19]; | |
366 | if (ncuts>20) fVertexerTracksTPCMVBCSpacing = cuts[20]; | |
7878b3ae | 367 | // |
368 | if (ncuts>21) fVertexerTracksTPCclusterize = cuts[21]; | |
369 | if (ncuts>22) fVertexerTracksTPCclusterdz = cuts[22]; | |
370 | if (ncuts>23) fVertexerTracksTPCclusternsigmaz = cuts[23]; | |
a00021a7 | 371 | } else { |
8eaa1a42 | 372 | if (ncuts>0) fVertexerTracksITSdcacut = cuts[0]; |
373 | if (ncuts>1) fVertexerTracksITSdcacutIter0 = cuts[1]; | |
374 | if (ncuts>2) fVertexerTracksITSmaxd0z0 = cuts[2]; | |
375 | if (ncuts>3) fVertexerTracksITSminCls = cuts[3]; | |
376 | if (ncuts>4) fVertexerTracksITSmintrks = cuts[4]; | |
377 | if (ncuts>5) fVertexerTracksITSnsigma = cuts[5]; | |
378 | if (ncuts>6) fVertexerTracksITSnindetfitter = cuts[6]; | |
379 | if (ncuts>7) fVertexerTracksITSmaxtgl = cuts[7]; | |
380 | if (ncuts>8) fVertexerTracksITSfidR = cuts[8]; | |
381 | if (ncuts>9) fVertexerTracksITSfidZ = cuts[9]; | |
382 | if (ncuts>10) fVertexerTracksITSalgo = cuts[10]; | |
383 | if (ncuts>11) fVertexerTracksITSalgoIter0 = cuts[11]; | |
3f2db92f | 384 | // |
8eaa1a42 | 385 | if (ncuts>12) fVertexerTracksITSMVTukey2 = cuts[12]; |
386 | if (ncuts>13) fVertexerTracksITSMVSig2Ini = cuts[13]; | |
387 | if (ncuts>14) fVertexerTracksITSMVMaxSigma2 = cuts[14]; | |
388 | if (ncuts>15) fVertexerTracksITSMVMinSig2Red = cuts[15]; | |
389 | if (ncuts>16) fVertexerTracksITSMVMinDst = cuts[16]; | |
390 | if (ncuts>17) fVertexerTracksITSMVScanStep = cuts[17]; | |
391 | if (ncuts>18) fVertexerTracksITSMVMaxWghNtr = cuts[18]; | |
392 | if (ncuts>19) fVertexerTracksITSMVFinalWBinary = cuts[19]; | |
393 | if (ncuts>20) fVertexerTracksITSMVBCSpacing = cuts[20]; | |
7878b3ae | 394 | // |
395 | if (ncuts>21) fVertexerTracksITSclusterize = cuts[21]; | |
396 | if (ncuts>22) fVertexerTracksITSclusterdz = cuts[22]; | |
397 | if (ncuts>23) fVertexerTracksITSclusternsigmaz = cuts[23]; | |
a00021a7 | 398 | } |
8eaa1a42 | 399 | // |
a00021a7 | 400 | return; |
401 | } | |
61a14552 | 402 | //_____________________________________________________________________________ |
403 | void AliGRPRecoParam::GetVertexerV0Cuts(Double_t *cuts) const { | |
404 | // | |
405 | // get cuts for AliV0vertexer | |
406 | // | |
407 | cuts[0] = fVertexerV0Chi2max; | |
408 | cuts[1] = fVertexerV0DNmin; | |
409 | cuts[2] = fVertexerV0DPmin; | |
410 | cuts[3] = fVertexerV0DCAmax; | |
411 | cuts[4] = fVertexerV0CPAmin; | |
412 | cuts[5] = fVertexerV0Rmin; | |
413 | cuts[6] = fVertexerV0Rmax; | |
414 | return; | |
415 | } | |
416 | //_____________________________________________________________________________ | |
417 | void AliGRPRecoParam::SetVertexerV0Cuts(Int_t ncuts,Double_t cuts[7]) { | |
418 | // | |
419 | // set cuts for AliV0vertexer | |
420 | // | |
421 | if(ncuts!=fVertexerV0NCuts) { | |
422 | printf("AliGRPRecoParam: Number of AliV0vertexer cuts is %d\n",fVertexerV0NCuts); | |
423 | return; | |
424 | } | |
425 | fVertexerV0Chi2max = cuts[0]; | |
426 | fVertexerV0DNmin = cuts[1]; | |
427 | fVertexerV0DPmin = cuts[2]; | |
428 | fVertexerV0DCAmax = cuts[3]; | |
429 | fVertexerV0CPAmin = cuts[4]; | |
430 | fVertexerV0Rmin = cuts[5]; | |
431 | fVertexerV0Rmax = cuts[6]; | |
432 | return; | |
433 | } | |
434 | //_____________________________________________________________________________ | |
435 | void AliGRPRecoParam::GetVertexerCascadeCuts(Double_t *cuts) const { | |
436 | // | |
437 | // get cuts for AliCascadevertexer | |
438 | // | |
439 | cuts[0] = fVertexerCascadeChi2max; | |
440 | cuts[1] = fVertexerCascadeDV0min; | |
441 | cuts[2] = fVertexerCascadeMassWin; | |
442 | cuts[3] = fVertexerCascadeDBachMin; | |
443 | cuts[4] = fVertexerCascadeDCAmax; | |
444 | cuts[5] = fVertexerCascadeCPAmin; | |
445 | cuts[6] = fVertexerCascadeRmin; | |
446 | cuts[7] = fVertexerCascadeRmax; | |
447 | return; | |
448 | } | |
449 | //_____________________________________________________________________________ | |
450 | void AliGRPRecoParam::SetVertexerCascadeCuts(Int_t ncuts,Double_t cuts[8]) { | |
451 | // | |
452 | // set cuts for AliCascadeVertexer | |
453 | // | |
454 | if(ncuts!=fVertexerCascadeNCuts) { | |
455 | printf("AliGRPRecoParam: Number of AliCascadeVertexer cuts is %d\n",fVertexerCascadeNCuts); | |
456 | return; | |
457 | } | |
458 | fVertexerCascadeChi2max = cuts[0]; | |
459 | fVertexerCascadeDV0min = cuts[1]; | |
460 | fVertexerCascadeMassWin = cuts[2]; | |
461 | fVertexerCascadeDBachMin = cuts[3]; | |
462 | fVertexerCascadeDCAmax = cuts[4]; | |
463 | fVertexerCascadeCPAmin = cuts[5]; | |
464 | fVertexerCascadeRmin = cuts[6]; | |
465 | fVertexerCascadeRmax = cuts[7]; | |
466 | return; | |
467 | } |