return pt*TMath::Sqrt(1.+ fRp[3]*fRp[3]);
}
+//_______________________________________________________________________
+Double_t AliESDtrack::GetD(Double_t x, Double_t y) const {
+ //------------------------------------------------------------------
+ // This function calculates the transverse impact parameter
+ // with respect to a point with global coordinates (x,y)
+ //------------------------------------------------------------------
+ Double_t rp4=fRp[4]/AliKalmanTrack::GetConvConst();
+
+ Double_t xt=fRx, yt=fRp[0];
+
+ Double_t sn=TMath::Sin(fRalpha), cs=TMath::Cos(fRalpha);
+ Double_t a = x*cs + y*sn;
+ y = -x*sn + y*cs; x=a;
+ xt-=x; yt-=y;
+
+ sn=rp4*xt - fRp[2]; cs=rp4*yt + TMath::Sqrt(1.- fRp[2]*fRp[2]);
+ a=2*(xt*fRp[2] - yt*TMath::Sqrt(1.- fRp[2]*fRp[2]))-rp4*(xt*xt + yt*yt);
+ if (rp4<0) a=-a;
+ return a/(1 + TMath::Sqrt(sn*sn + cs*cs));
+}
+
Bool_t Local2GlobalMomentum(Double_t p[3],Double_t alpha) {
//----------------------------------------------------------------
// This function performs local->global transformation of the
printf("\n signal = %f\n", GetTOFsignal()) ;
}
if( IsOn(kRICHpid) ){
- printf("From TOF: ") ;
+ printf("From RICH: ") ;
GetRICHpid(p) ;
for(index = 0 ; index < AliPID::kSPECIES; index++)
printf("%f, ", p[index]) ;
Bool_t GetXYZAt(Double_t x, Double_t r[3]) const;
void GetImpactParameters(Float_t &xy,Float_t &z) const {xy=fD; z=fZ;}
+ Double_t GetD(Double_t x=0, Double_t y=0) const; //calculate the transverse impact parameter w.r.t. (x,y)
Double_t GetIntegratedLength() const {return fTrackLength;}
void GetIntegratedTimes(Double_t *times) const;
Double_t GetMass() const;