AliTrackFitterKalman::
AliTrackFitterKalman(AliTrackPointArray *array, Bool_t owner):
AliTrackFitter(array,owner),
- fMaxChi2(fgkMaxChi2),
- fSeed(kFALSE)
+ fMaxChi2(fgkMaxChi2)
{
//
// Constructor
// Make a seed out of the track points with the indices "first" and "last".
// This is the "default" seed.
//
- if (fSeed) return kTRUE;
+ fPoints->Sort();
AliTrackPoint fp,lp;
fPoints->GetPoint(fp,first); fPoints->GetPoint(lp,last);
return MakeSeed(&fp,&lp);
v(0,0)=cov[0]+c(0,0); v(0,1)=cov[1]+c(0,1); v(0,2)=cov[2]+c(0,2);
v(1,0)=cov[1]+c(1,0); v(1,1)=cov[3]+c(1,1); v(1,2)=cov[4]+c(1,2);
v(2,0)=cov[2]+c(2,0); v(2,1)=cov[4]+c(2,1); v(2,2)=cov[5]+c(2,2);
+ if (TMath::Abs(v.Determinant()) < 1.e-33) return kFALSE;
v.Invert();
TMatrixD ch(5,3);
TMatrixDSym tmW(tC);
tmW+=mC;
+ if (TMath::Abs(tmW.Determinant()) < 1.e-33) return kFALSE;
tmW.Invert();
TMatrixD mW(tC,TMatrixD::kMult,tmW);
cv(0,3)=cv(3,0); cv(1,3)=cv(3,1); cv(2,3)=cv(3,2);
cv(0,4)=cv(4,0); cv(1,4)=cv(4,1); cv(2,4)=cv(4,2); cv(3,4)=cv(4,3);
- fSeed=kTRUE;
}