X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TPC%2FAliTPCkalmanFit.h;h=59176ce70409a807e4b988d68fdfc9988448f063;hb=7af539c66dfa3a4a5cc2360faed22d787e2335ae;hp=986426d1a65cc28fbea5a3b1713d1dfcb1eb1380;hpb=0e9efcbe588a524bd6674b225697db60cac8e892;p=u%2Fmrichter%2FAliRoot.git diff --git a/TPC/AliTPCkalmanFit.h b/TPC/AliTPCkalmanFit.h index 986426d1a65..59176ce7040 100644 --- a/TPC/AliTPCkalmanFit.h +++ b/TPC/AliTPCkalmanFit.h @@ -24,26 +24,36 @@ public: void AddCalibration(AliTPCTransformation * calib); AliTPCTransformation * GetTransformation(Int_t i){return (fCalibration)? (AliTPCTransformation *)fCalibration->At(i):0;} + Int_t GetTransformationIndex(const char * trName); // void SetStatus(const char * name, Bool_t setOn, Bool_t isOr=kTRUE); // - void FitTrackLinear(AliTrackPointArray& points, Int_t step=1, TTreeSRedirector *debug=0); + void FitTrackLinear(AliTrackPointArray& points, TTreeSRedirector *debug=0, Float_t scalingRMSY=1., Float_t scalingRMSZ=1.); void DumpTrackLinear(AliTrackPointArray& points, TTreeSRedirector *debug); void UpdateLinear(AliTrackPoint &point, TTreeSRedirector *debug=0); void Propagate(TTreeSRedirector *debug=0); void PropagateTime(Int_t time); + void AddCovariance(const char * varName, Double_t sigma); void Update(const AliTPCkalmanFit * kalman); + static AliTrackPointArray * SortPoints(AliTrackPointArray &points); static AliTrackPointArray * MakePointArrayLinear(Double_t alpha, Double_t y0, Double_t z0, Double_t ky, Double_t kz, Double_t err=0.02); void ApplyCalibration(AliTrackPointArray *array, Double_t csign); Bool_t CheckCovariance(TMatrixD &covar, Float_t maxEl); - Bool_t DumpCorelation(Double_t threshold, const char *mask=0); - Bool_t DumpCalib(const char *mask=0); + Bool_t DumpCorelation(Double_t threshold, const char *mask0=0, const char *mask1=0); + Bool_t DumpCalib(const char *mask=0, Float_t correlationCut=-1); // - Double_t GetTPCDeltaXYZ(Int_t coord, Int_t volID, Double_t x, Double_t y, Double_t z); - static Double_t SGetTPCDeltaXYZ(Int_t coord, Int_t volID, Double_t x, Double_t y, Double_t z); + //Double_t GetTPCDeltaXYZ(Int_t coord, Int_t volID, Double_t x, Double_t y, Double_t z); + //static Double_t SGetTPCDeltaXYZ(Int_t coord, Int_t volID, Double_t x, Double_t y, Double_t z); + + Double_t GetTPCDeltaXYZ(Int_t coord, Int_t volID, Int_t icoordsys, Double_t x, Double_t y, Double_t z); + static Double_t SGetTPCDeltaXYZ(Int_t coord, Int_t volID, Int_t icoordsys, Double_t x, Double_t y, Double_t z); + Double_t GetTPCtransXYZ(Int_t coord, Int_t volID, Int_t calibID, Int_t icoordsys, Double_t x, Double_t y, Double_t z); + static Double_t SGetTPCtransXYZ(Int_t coord, Int_t volID, Int_t calibID, Int_t icoordsys, Double_t x, Double_t y, Double_t z); + void MakeTreeTrans(TTreeSRedirector *debug, const char *treeName="all"); + AliTPCkalmanFit *Test(Int_t ntracks); public: // @@ -57,8 +67,8 @@ public: // TMatrixD *fLinearParam; // linear parameters TMatrixD *fLinearCovar; // linear covariance - THnSparse *fLinearTrackDelta[8]; // linear tracks matching residuals - delta - THnSparse *fLinearTrackPull[8]; // linear tracks matching residuals - pull + THnSparse *fLinearTrackDelta[12]; // linear tracks matching residuals - delta + THnSparse *fLinearTrackPull[12]; // linear tracks matching residuals - pull // // // @@ -70,9 +80,20 @@ public: Double_t fCurrentAlpha; //! current rotation frame Double_t fCA; //! cosine of current angle Double_t fSA; //! sinus of current angle -// AliTPCkalmanFit& operator=(const AliTPCkalmanFit&){;}// not implemented -// AliTPCkalmanFit(const AliTPCkalmanFit&){;} //not implemented - ClassDef(AliTPCkalmanFit,1); + AliTPCkalmanFit& operator=(const AliTPCkalmanFit&);// not implemented + AliTPCkalmanFit(const AliTPCkalmanFit&):TNamed(), + fCalibration(0), + fCalibParam(0), + fCalibCovar(0), + fLinearParam(0), + fLinearCovar(0), + fLastTimeStamp(-1), + fCurrentAlpha(0), //! current rotation frame + fCA(0), //! cosine of current angle + fSA(0) //! sinus of current angle + +{;} //not implemented + ClassDef(AliTPCkalmanFit,3); };