]>
Commit | Line | Data |
---|---|---|
76ce4b5b | 1 | /////////////////////////////////////////////////////////////////////////// |
2 | // // | |
3 | // AliFemtoV0: special type of particle desling with the specifics // | |
4 | // of the V0 type of particle // | |
5 | // It stores the information both about the V0 itself and about it's // | |
6 | // daughters, so that the caut betwen the daughter characteristics is // | |
7 | // possible. | |
8 | // // | |
9 | /////////////////////////////////////////////////////////////////////////// | |
10 | #include "AliFemtoV0.h" | |
11 | #include "phys_constants.h" | |
12 | ||
13 | // ----------------------------------------------------------------------- | |
14 | AliFemtoV0::AliFemtoV0(): | |
15 | fDecayLengthV0(0), fDecayVertexV0(0), fPrimaryVertex(0), | |
16 | fDcaV0Daughters(0), fDcaV0ToPrimVertex(0), | |
17 | fDcaPosToPrimVertex(0), fDcaNegToPrimVertex(0), | |
18 | fMomPos(0), fMomNeg(0), | |
973a91f8 | 19 | fTpcHitsPos(0), fTpcHitsNeg(0), fOnFlyStatusV0(0), |
20 | fChi2V0(0), fClV0(0), fChi2Pos(0), fClPos(0), fChi2Neg(0), fClNeg(0), fCosPointingAngle(0), | |
76ce4b5b | 21 | fDedxPos(0), fErrDedxPos(0), fLenDedxPos(0), |
22 | fDedxNeg(0), fErrDedxNeg(0), fLenDedxNeg(0), | |
23 | fNufDedxPos(0), fNufDedxNeg(0), | |
24 | fHelixPos(), fHelixNeg(), | |
973a91f8 | 25 | fMomV0(0), fEtaV0(0), fPhiV0(0), fYV0(0), |
76ce4b5b | 26 | fAlphaV0(0), fPtArmV0(0), |
27 | fELambda(0), fEK0Short(0), | |
28 | fEPosProton(0), fEPosPion(0), | |
29 | fENegProton(0), fENegPion(0), | |
30 | fMassLambda(0), fMassAntiLambda(0), | |
31 | fMassK0Short(0), fRapLambda(0), | |
32 | fRapK0Short(0), fCTauLambda(0), | |
33 | fCTauK0Short(0), fPtV0(0), fPtotV0(0), | |
34 | fPtPos(0), fPtotPos(0), | |
35 | fPtNeg(0), fPtotNeg(0), | |
973a91f8 | 36 | fEtaPos(0), fEtaNeg(0), fTPCNclsPos(0), fTPCNclsNeg(0), fClustersPos(0), fClustersNeg(0), fSharingPos(0), fSharingNeg(0), fNdofPos(0), fNdofNeg(0), fStatusPos(0), fStatusNeg(0), |
37 | fPosNSigmaTPCK(0), fPosNSigmaTPCPi(0), fPosNSigmaTPCP(0), fNegNSigmaTPCK(0), fNegNSigmaTPCPi(0), fNegNSigmaTPCP(0), | |
38 | fPosNSigmaTOFK(0), fPosNSigmaTOFPi(0), fPosNSigmaTOFP(0), fNegNSigmaTOFK(0), fNegNSigmaTOFPi(0), fNegNSigmaTOFP(0), | |
76ce4b5b | 39 | fKeyNeg(0), fKeyPos(0), |
973a91f8 | 40 | fNominalTpcEntrancePointPos(0,0,0),fNominalTpcExitPointPos(0,0,0), |
41 | fNominalTpcEntrancePointNeg(0,0,0),fNominalTpcExitPointNeg(0,0,0), | |
76ce4b5b | 42 | fHiddenInfo(0) /***/ |
43 | { | |
44 | // Default empty constructor | |
45 | fTrackTopologyMapPos[0] = 0; | |
46 | fTrackTopologyMapPos[1] = 0; | |
47 | fTrackTopologyMapNeg[0] = 0; | |
48 | fTrackTopologyMapNeg[1] = 0; | |
76ce4b5b | 49 | } |
50 | // ----------------------------------------------------------------------- | |
51 | AliFemtoV0::AliFemtoV0(const AliFemtoV0& v) : | |
52 | fDecayLengthV0(0), fDecayVertexV0(0), fPrimaryVertex(0), | |
53 | fDcaV0Daughters(0), fDcaV0ToPrimVertex(0), | |
54 | fDcaPosToPrimVertex(0), fDcaNegToPrimVertex(0), | |
55 | fMomPos(0), fMomNeg(0), | |
973a91f8 | 56 | fTpcHitsPos(0), fTpcHitsNeg(0), fOnFlyStatusV0(0), |
57 | fChi2V0(0), fClV0(0), fChi2Pos(0), fClPos(0), fChi2Neg(0), fClNeg(0), fCosPointingAngle(0), | |
76ce4b5b | 58 | fDedxPos(0), fErrDedxPos(0), fLenDedxPos(0), |
59 | fDedxNeg(0), fErrDedxNeg(0), fLenDedxNeg(0), | |
60 | fNufDedxPos(0), fNufDedxNeg(0), | |
61 | fHelixPos(), fHelixNeg(), | |
973a91f8 | 62 | fMomV0(0), fEtaV0(0), fPhiV0(0), fYV0(0), |
76ce4b5b | 63 | fAlphaV0(0), fPtArmV0(0), |
64 | fELambda(0), fEK0Short(0), | |
65 | fEPosProton(0), fEPosPion(0), | |
66 | fENegProton(0), fENegPion(0), | |
67 | fMassLambda(0), fMassAntiLambda(0), | |
68 | fMassK0Short(0), fRapLambda(0), | |
69 | fRapK0Short(0), fCTauLambda(0), | |
70 | fCTauK0Short(0), fPtV0(0), fPtotV0(0), | |
71 | fPtPos(0), fPtotPos(0), | |
72 | fPtNeg(0), fPtotNeg(0), | |
973a91f8 | 73 | fEtaPos(0), fEtaNeg(0), fTPCNclsPos(0), fTPCNclsNeg(0), fClustersPos(0), fClustersNeg(0), fSharingPos(0), fSharingNeg(0), fNdofPos(0), fNdofNeg(0), fStatusPos(0), fStatusNeg(0), |
74 | fPosNSigmaTPCK(0), fPosNSigmaTPCPi(0), fPosNSigmaTPCP(0), fNegNSigmaTPCK(0), fNegNSigmaTPCPi(0), fNegNSigmaTPCP(0), | |
75 | fPosNSigmaTOFK(0), fPosNSigmaTOFPi(0), fPosNSigmaTOFP(0), fNegNSigmaTOFK(0), fNegNSigmaTOFPi(0), fNegNSigmaTOFP(0), | |
76ce4b5b | 76 | fKeyNeg(0), fKeyPos(0), |
973a91f8 | 77 | fNominalTpcEntrancePointPos(0,0,0),fNominalTpcExitPointPos(0,0,0), |
78 | fNominalTpcEntrancePointNeg(0,0,0),fNominalTpcExitPointNeg(0,0,0), | |
76ce4b5b | 79 | fHiddenInfo(0) /***/ |
80 | { | |
81 | // copy constructor | |
82 | fDecayLengthV0 = v.fDecayLengthV0; | |
83 | fDecayVertexV0 = v.fDecayVertexV0; | |
84 | fDcaV0Daughters = v.fDcaV0Daughters; | |
85 | fDcaV0ToPrimVertex = v.fDcaV0ToPrimVertex; | |
86 | fDcaPosToPrimVertex = v.fDcaPosToPrimVertex; | |
87 | fDcaNegToPrimVertex = v.fDcaNegToPrimVertex; | |
88 | fMomPos = v.fMomPos; | |
89 | fMomNeg = v.fMomNeg; | |
90 | ||
973a91f8 | 91 | fEtaV0 = v.fEtaV0; |
92 | fPhiV0 = v.fPhiV0; | |
93 | fYV0 = v.fYV0; | |
94 | fCosPointingAngle = v.fCosPointingAngle; | |
95 | ||
76ce4b5b | 96 | fTrackTopologyMapPos[0] = v.fTrackTopologyMapPos[0]; |
97 | fTrackTopologyMapPos[1] = v.fTrackTopologyMapPos[1]; | |
98 | fTrackTopologyMapNeg[0] = v.fTrackTopologyMapNeg[0]; | |
99 | fTrackTopologyMapNeg[1] = v.fTrackTopologyMapNeg[1]; | |
100 | ||
101 | fKeyPos = v.fKeyPos; | |
102 | fKeyNeg = v.fKeyNeg; | |
973a91f8 | 103 | fEtaPos = v.fEtaPos; |
104 | fEtaNeg = v.fEtaNeg; | |
105 | fTPCNclsPos = v.fTPCNclsPos; | |
106 | fTPCNclsNeg = v.fTPCNclsNeg; | |
107 | fClustersPos = v.fClustersPos; | |
108 | fClustersNeg = v.fClustersNeg; | |
109 | fSharingPos = v.fSharingPos; | |
110 | fSharingNeg = v.fSharingNeg; | |
111 | fNdofPos = v.fNdofPos; | |
112 | fNdofNeg = v.fNdofNeg; | |
113 | fStatusPos = v.fStatusPos; | |
114 | fStatusNeg = v.fStatusNeg; | |
115 | fOnFlyStatusV0 = v.fOnFlyStatusV0; | |
116 | ||
117 | fPosNSigmaTPCK = v.fPosNSigmaTPCK; | |
118 | fPosNSigmaTPCPi = v.fPosNSigmaTPCPi ; | |
119 | fPosNSigmaTPCP = v.fPosNSigmaTPCP ; | |
120 | fNegNSigmaTPCK = v.fNegNSigmaTPCK ; | |
121 | fNegNSigmaTPCPi = v.fNegNSigmaTPCPi ; | |
122 | fNegNSigmaTPCP = v.fNegNSigmaTPCP ; | |
123 | fPosNSigmaTOFK = v.fPosNSigmaTOFK ; | |
124 | fPosNSigmaTOFPi = v.fPosNSigmaTOFPi ; | |
125 | fPosNSigmaTOFP = v.fPosNSigmaTOFP ; | |
126 | fNegNSigmaTOFK = v.fNegNSigmaTOFK ; | |
127 | fNegNSigmaTOFPi = v.fNegNSigmaTOFPi ; | |
128 | fNegNSigmaTOFP = v.fNegNSigmaTOFP ; | |
129 | ||
130 | ||
76ce4b5b | 131 | fTpcHitsPos = v.fTpcHitsPos; |
132 | fTpcHitsNeg = v.fTpcHitsNeg; | |
133 | ||
134 | fChi2V0 = v.fChi2V0; | |
135 | fClV0 = v.fClV0; | |
136 | fChi2Pos = v.fChi2Pos; | |
137 | fClPos = v.fClPos; | |
138 | fChi2Neg = v.fChi2Neg; | |
139 | fClNeg = v.fClNeg; | |
140 | fDedxPos = v.fDedxPos; | |
141 | fErrDedxPos = v.fErrDedxPos;//Gael 04Fev2002 | |
142 | fLenDedxPos = v.fLenDedxPos;//Gael 04Fev2002 | |
143 | fDedxNeg = v.fDedxNeg; | |
144 | fErrDedxNeg = v.fErrDedxNeg;//Gael 04Fev2002 | |
145 | fLenDedxNeg = v.fLenDedxNeg;//Gael 04Fev2002 | |
146 | ||
147 | fNufDedxPos = v.fNufDedxPos; | |
148 | fNufDedxNeg = v.fNufDedxNeg; | |
149 | ||
150 | fHelixPos = v.fHelixPos;// Gael 12 Sept | |
151 | fHelixNeg = v.fHelixNeg;// Gael 12 Sept | |
973a91f8 | 152 | |
153 | fNominalTpcEntrancePointPos = v.fNominalTpcEntrancePointPos; | |
154 | fNominalTpcExitPointPos = v.fNominalTpcExitPointPos; | |
155 | fNominalTpcEntrancePointNeg = v.fNominalTpcEntrancePointNeg; | |
156 | fNominalTpcExitPointNeg = v.fNominalTpcExitPointNeg; | |
157 | ||
76ce4b5b | 158 | fHiddenInfo = v.fHiddenInfo? v.fHiddenInfo->Clone() : 0;// GR 11 DEC 02 |
159 | UpdateV0(); | |
160 | } | |
161 | AliFemtoV0& AliFemtoV0::operator=(const AliFemtoV0& aV0) | |
162 | { | |
163 | // assignment operator | |
164 | if (this == &aV0) | |
165 | return *this; | |
166 | fDecayLengthV0 = aV0.fDecayLengthV0; | |
167 | fDecayVertexV0 = aV0.fDecayVertexV0; | |
168 | fDcaV0Daughters = aV0.fDcaV0Daughters; | |
169 | fDcaV0ToPrimVertex = aV0.fDcaV0ToPrimVertex; | |
170 | fDcaPosToPrimVertex = aV0.fDcaPosToPrimVertex; | |
171 | fDcaNegToPrimVertex = aV0.fDcaNegToPrimVertex; | |
172 | fMomPos = aV0.fMomPos; | |
173 | fMomNeg = aV0.fMomNeg; | |
174 | ||
175 | fTrackTopologyMapPos[0] = aV0.fTrackTopologyMapPos[0]; | |
176 | fTrackTopologyMapPos[1] = aV0.fTrackTopologyMapPos[1]; | |
177 | fTrackTopologyMapNeg[0] = aV0.fTrackTopologyMapNeg[0]; | |
178 | fTrackTopologyMapNeg[1] = aV0.fTrackTopologyMapNeg[1]; | |
179 | ||
180 | fKeyPos = aV0.fKeyPos; | |
181 | fKeyNeg = aV0.fKeyNeg; | |
973a91f8 | 182 | |
183 | fEtaPos = aV0.fEtaPos; | |
184 | fEtaNeg = aV0.fEtaNeg; | |
185 | fTPCNclsPos = aV0.fTPCNclsPos; | |
186 | fTPCNclsNeg = aV0.fTPCNclsNeg; | |
187 | fClustersPos = aV0.fClustersPos; | |
188 | fClustersNeg = aV0.fClustersNeg; | |
189 | fSharingPos = aV0.fSharingPos; | |
190 | fSharingNeg = aV0.fSharingNeg; | |
191 | fNdofPos = aV0.fNdofPos; | |
192 | fNdofNeg = aV0.fNdofNeg; | |
193 | fStatusPos = aV0.fStatusPos; | |
194 | fStatusNeg = aV0.fStatusNeg; | |
195 | fOnFlyStatusV0 = aV0.fOnFlyStatusV0; | |
196 | ||
197 | fPosNSigmaTPCK = aV0.fPosNSigmaTPCK; | |
198 | fPosNSigmaTPCPi = aV0.fPosNSigmaTPCPi ; | |
199 | fPosNSigmaTPCP = aV0.fPosNSigmaTPCP ; | |
200 | fNegNSigmaTPCK = aV0.fNegNSigmaTPCK ; | |
201 | fNegNSigmaTPCPi = aV0.fNegNSigmaTPCPi ; | |
202 | fNegNSigmaTPCP = aV0.fNegNSigmaTPCP ; | |
203 | fPosNSigmaTOFK = aV0.fPosNSigmaTOFK ; | |
204 | fPosNSigmaTOFPi = aV0.fPosNSigmaTOFPi ; | |
205 | fPosNSigmaTOFP = aV0.fPosNSigmaTOFP ; | |
206 | fNegNSigmaTOFK = aV0.fNegNSigmaTOFK ; | |
207 | fNegNSigmaTOFPi = aV0.fNegNSigmaTOFPi ; | |
208 | fNegNSigmaTOFP = aV0.fNegNSigmaTOFP ; | |
209 | ||
210 | fEtaV0 = aV0.fEtaV0; | |
211 | fPhiV0 = aV0.fPhiV0; | |
212 | fYV0 = aV0.fYV0; | |
213 | fCosPointingAngle = aV0.fCosPointingAngle; | |
76ce4b5b | 214 | |
215 | fTpcHitsPos = aV0.fTpcHitsPos; | |
216 | fTpcHitsNeg = aV0.fTpcHitsNeg; | |
217 | ||
218 | fChi2V0 = aV0.fChi2V0; | |
219 | fClV0 = aV0.fClV0; | |
220 | fChi2Pos = aV0.fChi2Pos; | |
221 | fClPos = aV0.fClPos; | |
222 | fChi2Neg = aV0.fChi2Neg; | |
223 | fClNeg = aV0.fClNeg; | |
224 | fDedxPos = aV0.fDedxPos; | |
225 | fErrDedxPos = aV0.fErrDedxPos;//Gael 04Fev2002 | |
226 | fLenDedxPos = aV0.fLenDedxPos;//Gael 04Fev2002 | |
227 | fDedxNeg = aV0.fDedxNeg; | |
228 | fErrDedxNeg = aV0.fErrDedxNeg;//Gael 04Fev2002 | |
229 | fLenDedxNeg = aV0.fLenDedxNeg;//Gael 04Fev2002 | |
230 | ||
231 | fNufDedxPos = aV0.fNufDedxPos; | |
232 | fNufDedxNeg = aV0.fNufDedxNeg; | |
233 | ||
234 | fHelixPos = aV0.fHelixPos;// Gael 12 Sept | |
235 | fHelixNeg = aV0.fHelixNeg;// Gael 12 Sept | |
973a91f8 | 236 | |
237 | fNominalTpcEntrancePointPos = aV0.fNominalTpcEntrancePointPos; | |
238 | fNominalTpcExitPointPos = aV0.fNominalTpcExitPointPos; | |
239 | fNominalTpcEntrancePointPos = aV0.fNominalTpcEntrancePointPos; | |
240 | fNominalTpcExitPointPos = aV0.fNominalTpcExitPointPos; | |
241 | fNominalTpcEntrancePointNeg = aV0.fNominalTpcEntrancePointNeg; | |
242 | fNominalTpcExitPointNeg = aV0.fNominalTpcExitPointNeg; | |
243 | ||
76ce4b5b | 244 | if (fHiddenInfo) delete fHiddenInfo; |
245 | fHiddenInfo = aV0.fHiddenInfo? aV0.fHiddenInfo->Clone() : 0;// GR 11 DEC 02 | |
246 | UpdateV0(); | |
247 | ||
248 | return *this; | |
249 | } | |
250 | ||
251 | // ----------------------------------------------------------------------- | |
252 | void AliFemtoV0::UpdateV0(){ | |
253 | //Calc. derived memebers of the v0 class | |
254 | float tMomNegAlongV0, tMomPosAlongV0; | |
255 | ||
256 | fMomV0 = fMomPos + fMomNeg; | |
257 | fPtV0 = fMomV0.Perp(); | |
258 | fPtotV0 = fMomV0.Mag(); | |
259 | fPtPos = fMomPos.Perp(); | |
260 | fPtotPos= fMomPos.Mag(); | |
261 | fPtNeg = fMomNeg.Perp(); | |
262 | fPtotNeg= fMomNeg.Mag(); | |
263 | fELambda= ::sqrt(fPtotV0*fPtotV0+kMLAMBDA*kMLAMBDA); | |
264 | fEK0Short= ::sqrt(fPtotV0*fPtotV0+kMKAON0SHORT*kMKAON0SHORT); | |
265 | fEPosProton = ::sqrt(fPtotPos*fPtotPos+kMPROTON*kMPROTON); | |
266 | fENegProton = ::sqrt(fPtotNeg*fPtotNeg+kMPROTON*kMPROTON); | |
267 | fEPosPion = ::sqrt(fPtotPos*fPtotPos+kMPIONPLUS*kMPIONPLUS); | |
268 | fENegPion = ::sqrt(fPtotNeg*fPtotNeg+kMPIONMINUS*kMPIONMINUS); | |
269 | ||
270 | tMomNegAlongV0 = fMomNeg*fMomV0 / ::sqrt(::pow(fPtotV0,2)); | |
271 | tMomPosAlongV0 = fMomPos*fMomV0 / ::sqrt(::pow(fPtotV0,2)); | |
272 | ||
973a91f8 | 273 | if(tMomPosAlongV0+tMomNegAlongV0!=0) |
76ce4b5b | 274 | fAlphaV0 = (tMomPosAlongV0-tMomNegAlongV0)/(tMomPosAlongV0+tMomNegAlongV0); |
973a91f8 | 275 | |
276 | //printf("%1.15f\n",fPtotPos); | |
277 | //printf("%1.15f\n",tMomPosAlongV0); | |
278 | ||
279 | if(fPtotPos<tMomPosAlongV0) fPtArmV0=0; else | |
280 | { | |
281 | fPtArmV0 = ::sqrt(fPtotPos*fPtotPos - tMomPosAlongV0*tMomPosAlongV0); | |
282 | } | |
76ce4b5b | 283 | fMassLambda = ::sqrt(::pow(fEPosProton+fENegPion,2)-::pow(fPtotV0,2)); |
284 | fMassAntiLambda = ::sqrt(::pow(fENegProton+fEPosPion,2)-::pow(fPtotV0,2)); | |
285 | fMassK0Short = ::sqrt(::pow(fENegPion+fEPosPion,2)-::pow(fPtotV0,2)); | |
76ce4b5b | 286 | fRapLambda = 0.5*::log( (fELambda+fMomV0.z()) / (fELambda-fMomV0.z()) ); |
973a91f8 | 287 | |
76ce4b5b | 288 | fCTauLambda = kMLAMBDA*(fDecayLengthV0) / ::sqrt( ::pow((double)fMomV0.Mag(),2.) ); |
289 | ||
290 | fRapK0Short = 0.5*::log( (fEK0Short+fMomV0.z()) / (fEK0Short-fMomV0.z()) ); | |
291 | fCTauK0Short = kMKAON0SHORT*(fDecayLengthV0) / ::sqrt( ::pow((double)fMomV0.Mag(),2.) ); | |
292 | ||
293 | } | |
294 | // ----------------------------------------------------------------------- | |
295 | #ifndef __NO_STAR_DEPENDENCE_ALLOWED__ | |
296 | #ifdef __ROOT__ | |
297 | #include "StStrangeMuDstMaker/StV0MuDst.h" | |
298 | AliFemtoV0::AliFemtoV0( StV0MuDst& v){ // from strangess micro dst structure | |
299 | fDecayLengthV0 = v.decayLengthV0(); | |
300 | fDecayVertexV0 = AliFemtoThreeVector( v.decayVertexV0X(), v.decayVertexV0Y(), v.decayVertexV0Z() ); | |
301 | fDcaV0Daughters = v.dcaV0Daughters(); | |
302 | fDcaV0ToPrimVertex = v.dcaV0ToPrimVertex(); | |
303 | fDcaPosToPrimVertex = v.dcaPosToPrimVertex(); | |
304 | fDcaNegToPrimVertex = v.dcaNegToPrimVertex(); | |
305 | fMomPos = AliFemtoThreeVector( v.momPosX(), v.momPosY(), v.momPosZ() ); | |
306 | fMomNeg = AliFemtoThreeVector( v.momNegX(), v.momNegY(), v.momNegZ() ); | |
307 | #ifdef STHBTDEBUG | |
308 | cout << " hist pos "; | |
309 | cout << v.topologyMapPos().numberOfHits(kTpcId); | |
310 | cout << " hist neg "; | |
311 | cout << v.topologyMapNeg().numberOfHits(kTpcId) << endl; | |
312 | #endif | |
313 | fTpcHitsPos = ( v.topologyMapPos().numberOfHits(kTpcId) ); | |
314 | fTpcHitsNeg = ( v.topologyMapNeg().numberOfHits(kTpcId) ); | |
315 | fTrackTopologyMapPos[0] = ( v.topologyMapPos().data(0) ); | |
316 | fTrackTopologyMapPos[1] = ( v.topologyMapPos().data(1) ); | |
317 | fTrackTopologyMapNeg[0] = ( v.topologyMapNeg().data(0) ); | |
318 | fTrackTopologyMapNeg[1] = ( v.topologyMapNeg().data(1) ); | |
319 | fKeyPos = v.keyPos(); | |
320 | fKeyNeg = v.keyNeg(); | |
321 | fChi2V0 = v.chi2V0(); | |
322 | fClV0 = v.clV0(); | |
323 | fChi2Pos = v.chi2Pos(); | |
324 | fClPos = v.clPos(); | |
325 | fChi2Neg = v.chi2Neg(); | |
326 | fClNeg = v.clNeg(); | |
327 | fDedxPos = v.dedxPos(); | |
328 | fErrDedxPos = v.errDedxPos();//Gael 04Fev2002 | |
329 | fLenDedxPos = v.lenDedxPos();//Gael 04Fev2002 | |
330 | fDedxNeg = v.dedxNeg(); | |
331 | fErrDedxNeg = v.errDedxNeg();//Gael 04Fev2002 | |
332 | fLenDedxNeg = v.lenDedxNeg();//Gael 04Fev2002 | |
333 | fNufDedxPos = v.nufDedxPos(); | |
334 | fNufDedxNeg = v.nufDedxNeg(); | |
335 | fHiddenInfo = 0;//GR 11 DEC 02 | |
336 | ||
337 | #ifdef STHBTDEBUG | |
338 | cout << " keyPos " << v.keyPos() << endl; | |
339 | cout << " keyNeg " << v.keyNeg() << endl; | |
340 | #endif | |
341 | fMomV0 = AliFemtoThreeVector( v.momV0X(), v.momV0Y(), v.momV0Z() ); | |
342 | #ifdef STHBTDEBUG | |
343 | cout << " alpha "; | |
344 | cout << v.alphaV0(); | |
345 | cout << " ptArm "; | |
346 | cout << v.ptArmV0() << endl; | |
347 | #endif | |
348 | fAlphaV0 = v.alphaV0(); | |
349 | fPtArmV0 = v.ptArmV0(); | |
350 | fELambda = v.eLambda(); | |
351 | fEK0Short = v.eK0Short(); | |
352 | fEPosProton = v.ePosProton(); | |
353 | fEPosPion = v.ePosPion(); | |
354 | fENegPion = v.eNegPion(); | |
355 | fENegProton = v.eNegProton(); | |
356 | fMassLambda = v.massLambda(); | |
357 | fMassAntiLambda = v.massAntiLambda(); | |
358 | fMassK0Short = v.massK0Short(); | |
359 | fRapLambda = v.rapLambda(); | |
360 | fRapK0Short = v.rapK0Short(); | |
361 | fCTauLambda = v.cTauLambda(); | |
362 | fCTauK0Short = v.cTauK0Short(); | |
363 | fPtV0 = v.ptV0(); | |
364 | fPtotV0 = v.ptotV0(); | |
365 | fPtPos = v.ptPos(); | |
366 | fPtotPos = v.ptotPos(); | |
367 | fDedxPos = v.dedxPos(); | |
368 | fPtNeg = v.ptNeg(); | |
369 | fPtotNeg = v.ptotNeg(); | |
370 | fDedxNeg = v.dedxNeg(); | |
371 | } | |
372 | #endif // __ROOT__ | |
373 | #endif // __NO_STAR_DEPENDENCE_ALLOWED__ | |
374 | ||
375 | ||
376 | ||
377 | void AliFemtoV0::SetHelixPos(const AliFmPhysicalHelixD& h){fHelixPos = h;}// Gael 12 Sept 02 | |
378 | const AliFmPhysicalHelixD& AliFemtoV0::HelixPos() const {return fHelixPos;}// Gael 12 Sept 02 | |
379 | void AliFemtoV0::SetHelixNeg(const AliFmPhysicalHelixD& h){fHelixNeg = h;}// Gael 12 Sept 02 | |
380 | const AliFmPhysicalHelixD& AliFemtoV0::HelixNeg() const {return fHelixNeg;}// Gael 12 Sept 02 | |
381 | ||
382 | void AliFemtoV0::SetHiddenInfo(AliFemtoHiddenInfo* aHiddenInfo) {fHiddenInfo=aHiddenInfo;} | |
383 | bool AliFemtoV0::ValidHiddenInfo() const { if (fHiddenInfo) return true; else return false; } | |
384 | AliFemtoHiddenInfo* AliFemtoV0::GetHiddenInfo() const {return fHiddenInfo;} | |
385 |