]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSTrackV1.h
New default values for baselines (F.Prino)
[u/mrichter/AliRoot.git] / ITS / AliITSTrackV1.h
index 05060db73b39a0bc586fb2b936eed7cb2d450d79..ae86daa510c08fbd3d02958e910b26ef8b069498 100644 (file)
@@ -17,7 +17,10 @@ class AliITSTrackV1 : public TObject {
 public:
 
   AliITSTrackV1();  // default constructor
-  AliITSTrackV1(AliTPCtrack &obj);  // copy constructor
+  //AliITSTrackV1(const char *opt);  // Standard constructor
+  AliITSTrackV1(Double_t fieldfactor);  // Standard constructor
+  //AliITSTrackV1(AliTPCtrack &obj);  // Standard constructor
+  AliITSTrackV1(AliTPCtrack &obj, Double_t fieldfactor);  // Standard constructor
   AliITSTrackV1(const AliITSTrackV1 &cobj);  // copy constructor
   AliITSTrackV1 &operator=(AliITSTrackV1 obj);  // operator =
   ~AliITSTrackV1(); // default destructor
@@ -32,8 +35,10 @@ public:
   Double_t Getphi()  const{return fX0;}          // gets the phi value for the track
   Double_t GetC() const {return fX4;}            // gets the curvature value for the track
   Double_t GetD() const{return fX2;}             // gets the radial impact parameter for the track
-  Double_t GetPt() const {return 0.299792458*0.2/(fX4*100.);} // gets the transvers momentum value for the
-                                                              //track           
+  Double_t GetPt() const {return 0.299792458*0.2*fFieldFactor/(fX4*100.);} // gets the transvers momentum 
+  Float_t GetdEdx() const {return fdEdx;}        //gets fdEdx    // oggi
+
+                                                                           // value for the track           
   void SetVertex(TVector &vert) { for(Int_t i=0;i<3;i++) fVertex(i) = vert(i);} // sets the vertex
                                                                                 // cohordinates
   void SetErrorVertex(TVector &evert) {for(Int_t i=0;i<3;i++) fErrorVertex(i) = evert(i);} // sets the errors
@@ -58,7 +63,10 @@ public:
   void GetXElements(Double_t &X0, Double_t &X1, Double_t &X2, Double_t &X3, Double_t &X4) const; // get elements
                                                                                            // of state vector
   void PutXElements(Double_t X0, Double_t X1, Double_t X2, Double_t X3, Double_t X4);  // put elements
-                                                                                       // of state vector
+  void PutMass(Double_t mass) {fMass=mass;} // put the particle mass
+  Double_t GetMass() const {return fMass;}  // get the particle mass   // oggi                                                                                      // of state vector
+
     
   void SetLayer(Int_t layer) { fLayer = layer;}      // set current layer
   AliTPCtrack *GetTPCtrack() const { return fTPCtrack;}    // get hte TPC track
@@ -86,8 +94,8 @@ public:
 
   Double_t GetSigmaphi() const{return fC00;}    // gets the phi variance
   Double_t GetSigmaZ() const{return  fC11;}     // gets the Z variance
-  void AddEL(AliITSRad *rl,Double_t signdE,  Bool_t flagtot, Double_t mass=0.1396);  // adds the energy loss
-  void AddMS(AliITSRad *rl);  // modify the covariance matrix to take into account the multiple scattering
+  void AddEL(Double_t signdE,  Bool_t flagtot, Double_t mass=0.1396);  // adds the energy loss
+  void AddMS(Double_t mass=0.1396);  // modify the covariance matrix to take into account the multiple scattering
   void Correct(Double_t rk);  // correct the track to take into account the real detector geometry
   void SetDv(Double_t x) {fDv=x;}  // sets the radial impact parameter for vertex constraint 
   void SetZv(Double_t x) {fZv=x;}  // sets longitudinal impact parameter for vertex constraint
@@ -95,20 +103,26 @@ public:
   Double_t GetZv() const {return fZv;}   // gets longitudinal impact parameter for vertex constraint
   void SetsigmaDv( Double_t x) {fsigmaDv=x;} // sets sigma for Dv extraction
   void SetsigmaZv( Double_t x) {fsigmaZv=x;} // sets sigma for Zv extraction
+  void Setfnoclust() {fnoclust++;}          //modify fnoclust 
   Double_t GetsigmaDv() const {return fsigmaDv;}   // gets sigma for Dv extraction
   Double_t GetsigmaZv() const {return fsigmaZv;}   // gets sigma for Zv extraction
-  void PrimaryTrack(AliITSRad *rl);   // calculation of part of covariance matrix for vertex constraint
+  void PrimaryTrack();   // calculation of part of covariance matrix for vertex constraint
   void Setd2(TVector &x) {for(Int_t i=0; i<6; i++){fd2(i)=x(i);}} // sets the vector fd2
   void Settgl2(TVector &x) {for(Int_t i=0; i<6; i++){ftgl2(i)=x(i);}}  // sets the vector ftgl2
   void Setdtgl(TVector &x) {for(Int_t i=0; i<6; i++){fdtgl(i)=x(i);}}  // sets the vector fdtgl
   TVector Getd2() const { return fd2;}  // gets the vector fd2
   TVector Gettgl2() const { return ftgl2;}  // gets the vector ftgl2
-  TVector Getdtgl() const { return fdtgl;}  // gets the vectoe dtgl
+  TVector Getdtgl() const { return fdtgl;}  // gets the vector dtgl
   Double_t Getd2(Int_t i){return (Double_t)fd2(i);}     // gets the i element of the vector fd2
   Double_t Gettgl2(Int_t i){return (Double_t)ftgl2(i);} // gets the i element of the vector tgl2
   Double_t Getdtgl(Int_t i){return (Double_t)fdtgl(i);} // gets the i element of the vector fdtgl
-  Double_t GetxoTPC() const {return fxoTPC;}  // gets fxoTPC
+  //Double_t GetxoTPC() const {return fxoTPC;}  // gets fxoTPC
+  Int_t  Getfnoclust() const {return fnoclust;}  //gets fnoclust 
+  Double_t GetPredChi2(Double_t m[2], Double_t sigma[2]) const; //get predicted chi2
+  void Setfcor()                  //set correction for layer                // oggi
+   {if(fLayer>=3) fcor[fLayer-3] = 1./TMath::Sqrt(1.+ fX3*fX3);}            // oggi
+  Float_t Getfcor(Int_t i) {return fcor[i];}  //return correction for layer // oggi
+
                        
 //////////////////////////////////////////////////////////////////////////////////////// 
 
@@ -135,19 +149,25 @@ public:
   TMatrix        *fClusterInTrack;      // matrix of clusters belonging to the  track
                                         // row index = layer-1; 
                                         // cols index = master coordinates of the clusters
+
+  Double_t        fFieldFactor;         // magnetic field factor
+  Double_t          fDv;                // radial impact parameter for vertex  constraint
+  Double_t          fZv;                // longitudinal impact parameter for vertex constraint
+  Double_t          fsigmaDv;           // sigma for Dv extraction
+  Double_t          fsigmaZv;           // sigma for Zv extraction
+  TVector           fd2;                // C(2,2)  for primary track
+  TVector           ftgl2;              // C(3,3)  for primary track
+  TVector           fdtgl;              // C(2,3)  for primary track
+
+  Double_t          fMass;         //  tracking particle mass
   
+  Float_t           fdEdx ;         // energy loss                  // oggi
+  Float_t           fcor[4];          // corrections for dE/dx      // oggi
   
-  Double_t          fDv;                 // radial impact parameter for vertex  constraint
-  Double_t          fZv;                 // longitudinal impact parameter for vertex constraint
-  Double_t          fsigmaDv;            // sigma for Dv extraction
-  Double_t          fsigmaZv;            // sigma for Zv extraction
-  TVector           fd2;                 // C(2,2)  for primary track
-  TVector           ftgl2;               // C(3,3)  for primary track
-  TVector           fdtgl;               // C(2,3)  for primary track
-
-  Double_t          fxoTPC;              // cohordinate xo of the helix center, got from the TPC track 
+  Int_t   fnoclust;  //nm of layers in which tracking doesn't add a cluster to the track
                   
- // Int_t freq; //provvisorio     
+  
 
  
   ClassDef(AliITSTrackV1, 1)