* 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"
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()
//
//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);
}
}
//
//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
}
}
-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)
{
//
//