return Local2GlobalMomentum(p,fAlpha);
}
+Bool_t
+AliExternalTrackParam::GetYAt(Double_t x, Double_t b, Double_t &y) const {
+ //---------------------------------------------------------------------
+ // This function returns the local Y-coordinate of the intersection
+ // point between this track and the reference plane "x" (cm).
+ // Magnetic field "b" (kG)
+ //---------------------------------------------------------------------
+ Double_t dx=x-fX;
+ if(TMath::Abs(dx)<=kAlmost0) {y=fP[0]; return kTRUE;}
+
+ Double_t f1=fP[2], f2=f1 + dx*fP[4]*b*kB2C;
+
+ if (TMath::Abs(f1) >= kAlmost1) return kFALSE;
+ if (TMath::Abs(f2) >= kAlmost1) return kFALSE;
+
+ Double_t r1=TMath::Sqrt(1.- f1*f1), r2=TMath::Sqrt(1.- f2*f2);
+ y = fP[0] + dx*(f1+f2)/(r1+r2);
+ return kTRUE;
+}
+
Bool_t
AliExternalTrackParam::GetXYZAt(Double_t x, Double_t b, Double_t *r) const {
//---------------------------------------------------------------------
Bool_t GetCovarianceXYZPxPyPz(Double_t cv[21]) const;
Bool_t GetPxPyPzAt(Double_t x, Double_t b, Double_t p[3]) const;
Bool_t GetXYZAt(Double_t x, Double_t b, Double_t r[3]) const;
+ Bool_t GetYAt(Double_t x, Double_t b, Double_t &y) const;
void Print(Option_t* option = "") const;
// MI
virtual Bool_t PropagateTo(Double_t x, Double_t b, Double_t mass, Double_t maxStep, Bool_t rotateTo=kTRUE, Double_t maxSnp=0.8);