]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliGRPRecoParam.cxx
Fixes for bug #49914: Compilation breaks in trunk, and bug #48629: Trunk cannot read...
[u/mrichter/AliRoot.git] / STEER / AliGRPRecoParam.cxx
CommitLineData
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
27ClassImp(AliGRPRecoParam)
28
29//_____________________________________________________________________________
30AliGRPRecoParam::AliGRPRecoParam() : AliDetectorRecoParam(),
71f6cda4 31fMostProbablePt(0.350),
f2a195c1 32fVertexerTracksConstraintITS(kTRUE),
33fVertexerTracksConstraintTPC(kTRUE),
d4bb174f 34fVertexerTracksNCuts(12),
a00021a7 35fVertexerTracksITSdcacut(0.1),
36fVertexerTracksITSdcacutIter0(0.1),
37fVertexerTracksITSmaxd0z0(0.5),
38fVertexerTracksITSminCls(5),
39fVertexerTracksITSmintrks(1),
40fVertexerTracksITSnsigma(3.),
41fVertexerTracksITSnindetfitter(100.),
42fVertexerTracksITSmaxtgl(1000.),
43fVertexerTracksITSfidR(3.),
44fVertexerTracksITSfidZ(30.),
8c75f668 45fVertexerTracksITSalgo(1.),
46fVertexerTracksITSalgoIter0(4.),
a00021a7 47fVertexerTracksTPCdcacut(0.1),
48fVertexerTracksTPCdcacutIter0(1.0),
49fVertexerTracksTPCmaxd0z0(5.),
50fVertexerTracksTPCminCls(10),
51fVertexerTracksTPCmintrks(1),
52fVertexerTracksTPCnsigma(3.),
53fVertexerTracksTPCnindetfitter(0.1),
54fVertexerTracksTPCmaxtgl(1.5),
55fVertexerTracksTPCfidR(3.),
8c75f668 56fVertexerTracksTPCfidZ(30.),
57fVertexerTracksTPCalgo(1.),
58fVertexerTracksTPCalgoIter0(4.)
a00021a7 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),
71f6cda4 77 fMostProbablePt(par.fMostProbablePt),
f2a195c1 78 fVertexerTracksConstraintITS(par.fVertexerTracksConstraintITS),
79 fVertexerTracksConstraintTPC(par.fVertexerTracksConstraintTPC),
a00021a7 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),
8c75f668 91 fVertexerTracksITSalgo(par.fVertexerTracksITSalgo),
92 fVertexerTracksITSalgoIter0(par.fVertexerTracksITSalgoIter0),
a00021a7 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),
8c75f668 102 fVertexerTracksTPCfidZ(par.fVertexerTracksTPCfidZ),
103 fVertexerTracksTPCalgo(par.fVertexerTracksTPCalgo),
104 fVertexerTracksTPCalgoIter0(par.fVertexerTracksTPCalgoIter0)
a00021a7 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
8c75f668 129 // to speed up the vertexing in PbPb
130 param->fVertexerTracksITSalgoIter0 = 1.;
131 param->fVertexerTracksTPCalgoIter0 = 1.;
132
a00021a7 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//_____________________________________________________________________________
f2a195c1 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//_____________________________________________________________________________
a00021a7 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;
8c75f668 171 cuts[10]= fVertexerTracksTPCalgo;
172 cuts[11]= fVertexerTracksTPCalgoIter0;
a00021a7 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;
8c75f668 184 cuts[10]= fVertexerTracksITSalgo;
185 cuts[11]= fVertexerTracksITSalgoIter0;
a00021a7 186 }
187
188 return;
189}
190//_____________________________________________________________________________
8c75f668 191void AliGRPRecoParam::SetVertexerTracksCuts(Int_t mode,Int_t ncuts,Double_t cuts[12]) {
a00021a7 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];
8c75f668 211 fVertexerTracksTPCalgo = cuts[10];
212 fVertexerTracksTPCalgoIter0 = cuts[11];
a00021a7 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];
8c75f668 224 fVertexerTracksITSalgo = cuts[10];
225 fVertexerTracksITSalgoIter0 = cuts[11];
a00021a7 226 }
227
228 return;
229}