]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliRieman.h
Adding AliRieman fitter (M.Ivanov)
[u/mrichter/AliRoot.git] / STEER / AliRieman.h
CommitLineData
cabb917f 1#ifndef ALIRIEMANN_H
2#define ALIRIEMANN_H
3
4#include "TMatrixDSym.h"
5
6class AliRieman : public TObject{
7 public:
8 AliRieman();
9 AliRieman(Int_t capacity);
10 AliRieman(const AliRieman &rieman);
11 ~AliRieman();
12 void Reset();
13 void AddPoint(Float_t x, Float_t y, Float_t z, Float_t sy, Float_t sz);
14 Int_t GetN() const {return fN;}
15 Int_t GetCapacity() const {return fCapacity;}
16 Float_t * GetX(){return fX;}
17 Float_t * GetY(){return fY;}
18 Float_t * GetZ(){return fZ;}
19 Float_t * GetSy(){return fSy;}
20 Float_t * GetSz(){return fSz;}
21 void Update();
22 void UpdatePol();
23 Double_t* GetParam(){return fParams;}
24 const TMatrixDSym & GetCovariance(){return *fCovar;}
25 Double_t GetC();
26 Double_t GetYat(Double_t x);
27 Double_t GetZat(Double_t x);
28 Double_t GetDYat(Double_t x);
29 Double_t GetDZat(Double_t x);
30 protected:
31 // public:
32 Int_t fCapacity; // capacity
33 Int_t fN; // numebr of points
34 Float_t *fX; //[fN] x coordinate
35 Float_t *fY; //[fN] y coordinate
36 Float_t *fZ; //[fN] z coordinate
37 Float_t *fSy; //[fN] sigma y coordinate
38 Float_t *fSz; //[fN] sigma z coordinate
39 Double_t fParams[6]; //Parameters
40 TMatrixDSym *fCovar; //Covariance
41 Double_t fSumXY[9]; //sums for XY part
42 Double_t fSumXZ[9]; //sums for XZ part
43 Bool_t fConv; // indicates convergation
44 protected:
45
46 private:
47 ClassDef(AliRieman,1) // Fast fit of helices on ITS RecPoints
48};
49
50
51
52#endif