]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
A few little fixes (A. De Caro)
authorbelikov <belikov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 24 Nov 2010 15:29:06 +0000 (15:29 +0000)
committerbelikov <belikov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 24 Nov 2010 15:29:06 +0000 (15:29 +0000)
STEER/AliESDpid.cxx
STEER/AliESDpid.h
STEER/AliTOFPIDResponse.cxx
STEER/AliTOFPIDResponse.h

index a2aa64d993accc2500320f357fac36bc539be6e0..2a065e9a3a38fb450e23b98651c43b17d09b8521 100644 (file)
@@ -237,7 +237,7 @@ void AliESDpid::MakeTOFPID(AliESDtrack *track, Float_t /*timeZeroTOF*/) const
   track->SetTOFpid(p);
 
   if (heavy) track->ResetStatus(AliESDtrack::kTOFpid);    
-  if (!CheckTOFMatching(track)) track->SetStatus(AliESDtrack::kTOFmismatch);    
+  if (!CheckTOFMatching(track)) track->SetStatus(AliESDtrack::kTOFmismatch);
   
 }
 //_________________________________________________________________________
@@ -307,11 +307,11 @@ Bool_t AliESDpid::CheckTOFMatching(AliESDtrack *track) const{
     Double_t exptimes[5];
     track->GetIntegratedTimes(exptimes);
     
-    Float_t dedx = track->GetTPCsignal();
-    Float_t time = track->GetTOFsignal();
-    
     Float_t p = track->P();
     
+    Float_t dedx = track->GetTPCsignal();
+    Float_t time = track->GetTOFsignal() - fTOFResponse.GetStartTime(p);
+    
     Double_t ptpc[3];
     track->GetInnerPxPyPz(ptpc);
     Float_t momtpc=TMath::Sqrt(ptpc[0]*ptpc[0] + ptpc[1]*ptpc[1] + ptpc[2]*ptpc[2]);
@@ -324,7 +324,7 @@ Bool_t AliESDpid::CheckTOFMatching(AliESDtrack *track) const{
            Float_t dedxExp = fTPCResponse.GetExpectedSignal(momtpc,type);
            Float_t resolutionTPC = fTPCResponse.GetExpectedSigma(momtpc,track->GetTPCsignalN(),type);
            
-           if(TMath::Abs(dedx - dedxExp) < fRange * resolutionTPC){
+           if(TMath::Abs(dedx - dedxExp) < fRangeTOFMismatch * resolutionTPC){
                status = kTRUE;
            }
        }
index a38743ddbead73268bbe41c27605a14ae3a88dc7..4ca67b9fc3ac728d995eea7447f53a8f43c9d05b 100644 (file)
@@ -23,7 +23,7 @@ class AliESDEvent;
 
 class AliESDpid {
 public:
-  AliESDpid(): fRange(5.), fITSPIDmethod(kITSTruncMean), fTPCResponse(), fITSResponse(), fTOFResponse(), fTRDResponse(){;}
+  AliESDpid(): fRange(5.), fRangeTOFMismatch(5.), fITSPIDmethod(kITSTruncMean), fTPCResponse(), fITSResponse(), fTOFResponse(), fTRDResponse(){;}
   virtual ~AliESDpid() {}
   Int_t MakePID(AliESDEvent *event, Bool_t TPCOnly = kFALSE, Float_t timeZeroTOF=9999) const;
   void MakeTPCPID(AliESDtrack *track) const;
@@ -49,8 +49,12 @@ public:
   enum EStartTimeType_t {kFILL_T0,kTOF_T0, kT0_T0, kBest_T0};
   void SetTOFResponse(AliESDEvent *event,EStartTimeType_t option);
 
+  void SetNMaxSigmaTOFTPCMismatch(Float_t range) {fRangeTOFMismatch=range;}
+  Float_t GetNMaxSigmaTOFTPCMismatch() const {return fRangeTOFMismatch;}
+
 private:
   Float_t           fRange;          // nSigma max in likelihood
+  Float_t           fRangeTOFMismatch; // nSigma max for TOF matching with TPC
   ITSPIDmethod      fITSPIDmethod;   // 0 = trunc mean; 1 = likelihood 
   AliTPCPIDResponse fTPCResponse;
   AliITSPIDResponse fITSResponse;
@@ -58,7 +62,7 @@ private:
   // AliHMPIDPIDResponse fHMPIDResponse;
   AliTRDPIDResponse fTRDResponse;
 
-  ClassDef(AliESDpid,4)  // PID calculation class
+  ClassDef(AliESDpid,5)  // PID calculation class
 };
 
 inline Float_t AliESDpid::NumberOfSigmasTPC(const AliESDtrack *track, AliPID::EParticleType type) const {
index f32cc2ba0912e5c570885dbfc366f34e6488de31..c9ba6b5168eafa170b214039a3a2f40674e5b79c 100644 (file)
@@ -119,7 +119,7 @@ void AliTOFPIDResponse::SetMomBoundary(){
   fPCutMin[10] = 3;  
 }
 //_________________________________________________________________________
-Float_t AliTOFPIDResponse::GetStartTime(Float_t mom) {
+Float_t AliTOFPIDResponse::GetStartTime(Float_t mom) const {
   //
   // Returns event_time value as estimated by TOF combinatorial algorithm
   //
@@ -129,7 +129,7 @@ Float_t AliTOFPIDResponse::GetStartTime(Float_t mom) {
 
 }
 //_________________________________________________________________________
-Float_t AliTOFPIDResponse::GetStartTimeRes(Float_t mom) {
+Float_t AliTOFPIDResponse::GetStartTimeRes(Float_t mom) const {
   //
   // Returns event_time resolution as estimated by TOF combinatorial algorithm
   //
index ba8df19d3ba4fe8809dc2bfa0108813aa7790700..4c7c78502b6c822eb03582edbb8b87342926e3ce 100644 (file)
@@ -45,8 +45,8 @@ public:
   Float_t  GetT0binRes(Int_t ibin) const {if(ibin >=0 && ibin <= fNmomBins) return fT0resolution[ibin]; else return 0.0;};
 
   // Get Start Time for a track
-  Float_t  GetStartTime(Float_t mom);
-  Float_t  GetStartTimeRes(Float_t mom);
+  Float_t  GetStartTime(Float_t mom) const;
+  Float_t  GetStartTimeRes(Float_t mom) const;
 
  private:
   Double_t fSigma;        // intrinsic TOF resolution