]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - STEER/AliGRPRecoParam.cxx
fix
[u/mrichter/AliRoot.git] / STEER / AliGRPRecoParam.cxx
... / ...
CommitLineData
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
27ClassImp(AliGRPRecoParam)
28
29//_____________________________________________________________________________
30AliGRPRecoParam::AliGRPRecoParam() : AliDetectorRecoParam(),
31fMostProbablePt(0.350),
32fVertexerTracksConstraintITS(kTRUE),
33fVertexerTracksConstraintTPC(kTRUE),
34fVertexerTracksNCuts(12),
35fVertexerTracksITSdcacut(0.1),
36fVertexerTracksITSdcacutIter0(0.1),
37fVertexerTracksITSmaxd0z0(0.5),
38fVertexerTracksITSminCls(5),
39fVertexerTracksITSmintrks(1),
40fVertexerTracksITSnsigma(3.),
41fVertexerTracksITSnindetfitter(100.),
42fVertexerTracksITSmaxtgl(1000.),
43fVertexerTracksITSfidR(3.),
44fVertexerTracksITSfidZ(30.),
45fVertexerTracksITSalgo(1.),
46fVertexerTracksITSalgoIter0(4.),
47fVertexerTracksTPCdcacut(0.1),
48fVertexerTracksTPCdcacutIter0(1.0),
49fVertexerTracksTPCmaxd0z0(5.),
50fVertexerTracksTPCminCls(10),
51fVertexerTracksTPCmintrks(1),
52fVertexerTracksTPCnsigma(3.),
53fVertexerTracksTPCnindetfitter(0.1),
54fVertexerTracksTPCmaxtgl(1.5),
55fVertexerTracksTPCfidR(3.),
56fVertexerTracksTPCfidZ(30.),
57fVertexerTracksTPCalgo(1.),
58fVertexerTracksTPCalgoIter0(4.)
59{
60 //
61 // constructor
62 //
63 SetName("GRP");
64 SetTitle("GRP");
65}
66
67//_____________________________________________________________________________
68AliGRPRecoParam::~AliGRPRecoParam()
69{
70 //
71 // destructor
72 //
73}
74
75AliGRPRecoParam::AliGRPRecoParam(const AliGRPRecoParam& par) :
76 AliDetectorRecoParam(par),
77 fMostProbablePt(par.fMostProbablePt),
78 fVertexerTracksConstraintITS(par.fVertexerTracksConstraintITS),
79 fVertexerTracksConstraintTPC(par.fVertexerTracksConstraintTPC),
80 fVertexerTracksNCuts(par.fVertexerTracksNCuts),
81 fVertexerTracksITSdcacut(par.fVertexerTracksITSdcacut),
82 fVertexerTracksITSdcacutIter0(par.fVertexerTracksITSdcacutIter0),
83 fVertexerTracksITSmaxd0z0(par.fVertexerTracksITSmaxd0z0),
84 fVertexerTracksITSminCls(par.fVertexerTracksITSminCls),
85 fVertexerTracksITSmintrks(par.fVertexerTracksITSmintrks),
86 fVertexerTracksITSnsigma(par.fVertexerTracksITSnsigma),
87 fVertexerTracksITSnindetfitter(par.fVertexerTracksITSnindetfitter),
88 fVertexerTracksITSmaxtgl(par.fVertexerTracksITSmaxtgl),
89 fVertexerTracksITSfidR(par.fVertexerTracksITSfidR),
90 fVertexerTracksITSfidZ(par.fVertexerTracksITSfidZ),
91 fVertexerTracksITSalgo(par.fVertexerTracksITSalgo),
92 fVertexerTracksITSalgoIter0(par.fVertexerTracksITSalgoIter0),
93 fVertexerTracksTPCdcacut(par.fVertexerTracksTPCdcacut),
94 fVertexerTracksTPCdcacutIter0(par.fVertexerTracksTPCdcacutIter0),
95 fVertexerTracksTPCmaxd0z0(par.fVertexerTracksTPCmaxd0z0),
96 fVertexerTracksTPCminCls(par.fVertexerTracksTPCminCls),
97 fVertexerTracksTPCmintrks(par.fVertexerTracksTPCmintrks),
98 fVertexerTracksTPCnsigma(par.fVertexerTracksTPCnsigma),
99 fVertexerTracksTPCnindetfitter(par.fVertexerTracksTPCnindetfitter),
100 fVertexerTracksTPCmaxtgl(par.fVertexerTracksTPCmaxtgl),
101 fVertexerTracksTPCfidR(par.fVertexerTracksTPCfidR),
102 fVertexerTracksTPCfidZ(par.fVertexerTracksTPCfidZ),
103 fVertexerTracksTPCalgo(par.fVertexerTracksTPCalgo),
104 fVertexerTracksTPCalgoIter0(par.fVertexerTracksTPCalgoIter0)
105{
106 // copy constructor
107}
108
109//_____________________________________________________________________________
110AliGRPRecoParam& AliGRPRecoParam::operator = (const AliGRPRecoParam& par)
111{
112 // assignment operator
113
114 if(&par == this) return *this;
115
116 this->~AliGRPRecoParam();
117 new(this) AliGRPRecoParam(par);
118 return *this;
119}
120
121//_____________________________________________________________________________
122AliGRPRecoParam *AliGRPRecoParam::GetHighFluxParam()
123{
124 //
125 // make default reconstruction parameters for hig flux env.
126 //
127 AliGRPRecoParam *param = new AliGRPRecoParam();
128
129 // to speed up the vertexing in PbPb
130 param->fVertexerTracksITSalgoIter0 = 1.;
131 param->fVertexerTracksTPCalgoIter0 = 1.;
132
133 return param;
134}
135//_____________________________________________________________________________
136AliGRPRecoParam *AliGRPRecoParam::GetLowFluxParam()
137{
138 //
139 // make default reconstruction parameters for low flux env.
140 //
141 AliGRPRecoParam *param = new AliGRPRecoParam();
142
143 return param;
144}
145//_____________________________________________________________________________
146AliGRPRecoParam *AliGRPRecoParam::GetCosmicTestParam()
147{
148 //
149 // make default reconstruction parameters for cosmics env.
150 //
151 AliGRPRecoParam *param = new AliGRPRecoParam();
152
153 return param;
154}
155//_____________________________________________________________________________
156void AliGRPRecoParam::GetVertexerTracksCuts(Int_t mode,Double_t *cuts) const {
157 //
158 // get cuts for ITS (0) or TPC (1) mode
159 //
160 if(mode==1) {
161 cuts[0] = fVertexerTracksTPCdcacut;
162 cuts[1] = fVertexerTracksTPCdcacutIter0;
163 cuts[2] = fVertexerTracksTPCmaxd0z0;
164 cuts[3] = fVertexerTracksTPCminCls;
165 cuts[4] = fVertexerTracksTPCmintrks;
166 cuts[5] = fVertexerTracksTPCnsigma;
167 cuts[6] = fVertexerTracksTPCnindetfitter;
168 cuts[7] = fVertexerTracksTPCmaxtgl;
169 cuts[8] = fVertexerTracksTPCfidR;
170 cuts[9] = fVertexerTracksTPCfidZ;
171 cuts[10]= fVertexerTracksTPCalgo;
172 cuts[11]= fVertexerTracksTPCalgoIter0;
173 } else {
174 cuts[0] = fVertexerTracksITSdcacut;
175 cuts[1] = fVertexerTracksITSdcacutIter0;
176 cuts[2] = fVertexerTracksITSmaxd0z0;
177 cuts[3] = fVertexerTracksITSminCls;
178 cuts[4] = fVertexerTracksITSmintrks;
179 cuts[5] = fVertexerTracksITSnsigma;
180 cuts[6] = fVertexerTracksITSnindetfitter;
181 cuts[7] = fVertexerTracksITSmaxtgl;
182 cuts[8] = fVertexerTracksITSfidR;
183 cuts[9] = fVertexerTracksITSfidZ;
184 cuts[10]= fVertexerTracksITSalgo;
185 cuts[11]= fVertexerTracksITSalgoIter0;
186 }
187
188 return;
189}
190//_____________________________________________________________________________
191void AliGRPRecoParam::SetVertexerTracksCuts(Int_t mode,Int_t ncuts,Double_t cuts[12]) {
192 //
193 // set cuts for ITS (0) or TPC (1) mode
194 //
195 if(ncuts!=fVertexerTracksNCuts) {
196 printf("AliGRPRecoParam: Number of AliVertexerTracks cuts is %d\n",fVertexerTracksNCuts);
197 return;
198 }
199
200 if(mode==1) {
201 fVertexerTracksTPCdcacut = cuts[0];
202 fVertexerTracksTPCdcacutIter0 = cuts[1];
203 fVertexerTracksTPCmaxd0z0 = cuts[2];
204 fVertexerTracksTPCminCls = cuts[3];
205 fVertexerTracksTPCmintrks = cuts[4];
206 fVertexerTracksTPCnsigma = cuts[5];
207 fVertexerTracksTPCnindetfitter = cuts[6];
208 fVertexerTracksTPCmaxtgl = cuts[7];
209 fVertexerTracksTPCfidR = cuts[8];
210 fVertexerTracksTPCfidZ = cuts[9];
211 fVertexerTracksTPCalgo = cuts[10];
212 fVertexerTracksTPCalgoIter0 = cuts[11];
213 } else {
214 fVertexerTracksITSdcacut = cuts[0];
215 fVertexerTracksITSdcacutIter0 = cuts[1];
216 fVertexerTracksITSmaxd0z0 = cuts[2];
217 fVertexerTracksITSminCls = cuts[3];
218 fVertexerTracksITSmintrks = cuts[4];
219 fVertexerTracksITSnsigma = cuts[5];
220 fVertexerTracksITSnindetfitter = cuts[6];
221 fVertexerTracksITSmaxtgl = cuts[7];
222 fVertexerTracksITSfidR = cuts[8];
223 fVertexerTracksITSfidZ = cuts[9];
224 fVertexerTracksITSalgo = cuts[10];
225 fVertexerTracksITSalgoIter0 = cuts[11];
226 }
227
228 return;
229}