]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCpolyTrack.cxx
Fixes for building of DA (Anshul)
[u/mrichter/AliRoot.git] / TPC / AliTPCpolyTrack.cxx
index f62ce64eaceac05fc197fbe88db503bcd0d8e0ff..d446fa55d9e046bd8a7d4f1ef0722812ea7ff906 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
+//------------------------------------------------------------------
+// this class is used for a simple
+// track fitting using the polynom
+// bending in both directions are allowed
+//-----------------------------------------------------------------
 
 
 #include "AliTPCpolyTrack.h"
@@ -21,8 +26,37 @@ ClassImp(AliTPCpolyTrack)
 
 
 AliTPCpolyTrack::AliTPCpolyTrack()
+  :TObject(),
+   fA(0), 
+   fB(0), 
+   fC(0), 
+   fD(0), 
+   fE(0), 
+   fF(0), 
+   fMaxX(0), 
+   fMinX(0), 
+   fSumW(0),    
+   fSumX(0),    
+   fSumX2(0),   
+   fSumX3(0),    
+   fSumX4(0),   
+   fSumY(0),    
+   fSumYX(0),   
+   fSumYX2(0),  
+   fSumZ(0),     
+   fSumZX(0),   
+   fSumZX2(0), 
+   fNPoints(0)
 {
   Reset();
+  //
+  for(Int_t i=0;i<200;i++){
+    fX[i]=0.;
+    fY[i]=0.;
+    fSY[i]=0.;
+    fZ[i]=0.;
+    fSZ[i]=0.;
+  }
 }
 
 void   AliTPCpolyTrack::Reset()
@@ -78,14 +112,14 @@ void  AliTPCpolyTrack::UpdateParameters()
   //
   //Update fit parameters
   if (fNPoints>4){
-    Fit2(fSumY,fSumYX,fSumYX2,fSumX,fSumX2,fSumX3,fSumX4,fSumW,fA,fB,fC);
+    Fit2(fA,fB,fC);
     //    Fit2(fSumZ,fSumZX,fSumZX2,fSumX,fSumX2,fSumX3,fSumX4,fNPoints,fD,fE,fF);
-    Fit1(fSumZ,fSumZX,fSumX,fSumX2,fSumW,fD,fE,fF);
+    Fit1(fD,fE,fF);
   }
   else
     {
-      Fit1(fSumY,fSumYX,fSumX,fSumX2,fSumW,fA,fB,fC);
-      Fit1(fSumZ,fSumZX,fSumX,fSumX2,fSumW,fD,fE,fF);
+      Fit1(fA,fB,fC);
+      Fit1(fD,fE,fF);
     }
 }
 
@@ -95,24 +129,22 @@ void  AliTPCpolyTrack::UpdateParameters(Int_t ny, Int_t nz)
   //
   //Update fit parameters
   if (ny>1){
-    Fit2(fSumY,fSumYX,fSumYX2,fSumX,fSumX2,fSumX3,fSumX4,fSumW,fA,fB,fC);
+    Fit2(fA,fB,fC);
   }
   else{ 
-    Fit1(fSumY,fSumYX,fSumX,fSumX2,fSumW,fA,fB,fC);
+    Fit1(fA,fB,fC);
   }
   if (nz>1){
-    Fit2(fSumZ,fSumZX,fSumZX2,fSumX,fSumX2,fSumX3,fSumX4,fNPoints,fD,fE,fF);
+    Fit2(fD,fE,fF);
   }
   else{
-    Fit1(fSumZ,fSumZX,fSumX,fSumX2,fSumW,fD,fE,fF);
+    Fit1(fD,fE,fF);
   }
 }
 
 
 
-void  AliTPCpolyTrack::Fit2(Double_t fSumY, Double_t fSumYX, Double_t fSumYX2,
-           Double_t fSumX,  Double_t fSumX2, Double_t fSumX3, 
-           Double_t fSumX4, Double_t fSumW,
+void  AliTPCpolyTrack::Fit2(
            Double_t &a, Double_t &b, Double_t &c)
 {
   //fit of second order
@@ -137,9 +169,7 @@ void  AliTPCpolyTrack::Fit2(Double_t fSumY, Double_t fSumYX, Double_t fSumYX2,
   }
 }
 
-void  AliTPCpolyTrack::Fit1(Double_t fSumY, Double_t fSumYX, 
-             Double_t fSumX,  Double_t fSumX2, 
-             Double_t fSumW, Double_t &a, Double_t &b, Double_t &c)
+void  AliTPCpolyTrack::Fit1( Double_t &a, Double_t &b, Double_t &c)
 {
   //
   //