]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
An additional short-cut function which should help with the Savannah item #53055
authorbelikov <belikov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 24 Dec 2009 16:56:18 +0000 (16:56 +0000)
committerbelikov <belikov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 24 Dec 2009 16:56:18 +0000 (16:56 +0000)
STEER/AliTracker.cxx
STEER/AliTracker.h

index 5110f5bdcd644c7efb3470a50e120ad248a8be0d..82fbf093b0f9861d77a13aa289d37773f396437a 100644 (file)
@@ -539,3 +539,25 @@ void AliTracker::FillResiduals(const AliExternalTrackParam *t,
   if (h) h->Fill(residuals[1]);
 
 }
+
+Double_t AliTracker::GetTrackPredictedChi2(AliExternalTrackParam *track,
+                                           Double_t mass, Double_t step,
+                                    const AliExternalTrackParam *backup) {
+  //
+  // This function brings the "track" with particle "mass" [GeV] 
+  // to the same local coord. system and the same reference plane as 
+  // of the "backup", doing it in "steps" [cm].
+  // Then, it calculates the 5D predicted Chi2 for these two tracks
+  //
+  Double_t chi2=kVeryBig;
+  Double_t alpha=backup->GetAlpha();
+  if (!track->Rotate(alpha)) return chi2;
+
+  Double_t xb=backup->GetX();
+  Double_t sign=(xb < track->GetX()) ? 1. : -1.;
+  if (!PropagateTrackTo(track,xb,mass,step,kFALSE,kAlmost1,sign)) return chi2;
+
+  chi2=track->GetPredictedChi2(backup);
+
+  return chi2;
+}
index 693f676aabde57b955fa20775d442819bbe4bba0..65496892ca35ff6831c893f1d34429e3bd60477a 100644 (file)
@@ -57,6 +57,9 @@ public:
   Double_t GetSigmaY() const {return fSigmaY;}
   Double_t GetSigmaZ() const {return fSigmaZ;}
 
+  static Double_t GetTrackPredictedChi2(AliExternalTrackParam *track,
+                                        Double_t mass, Double_t step, 
+                                 const AliExternalTrackParam *backup);
   static 
   Double_t MeanMaterialBudget(const Double_t *start, const Double_t *end, Double_t *mparam);
   static