add cut to reject tracks close to TPC sector edge
authormverweij <marta.verweij@cern.ch>
Tue, 18 Nov 2014 10:56:49 +0000 (11:56 +0100)
committermverweij <marta.verweij@cern.ch>
Tue, 18 Nov 2014 11:57:01 +0000 (12:57 +0100)
PWG/EMCAL/AliEmcalContainer.h
PWG/EMCAL/AliParticleContainer.cxx
PWG/EMCAL/AliParticleContainer.h

index 53f7d27..9eafec4 100644 (file)
@@ -26,7 +26,8 @@ class AliEmcalContainer : public TNamed {
     kMCFlag = 1<<8,
     kMCGeneratorCut = 1<<9,
     kChargeCut = 1<<10,
-    // leave bits 11-12 free for future implementations
+    kMinDistanceTPCSectorEdgeCut = 1<<11,
+    // leave bit 12 free for future implementations
 
     // AliClusterContainer
     kIsEMCalCut = 1<<13,
@@ -81,6 +82,6 @@ class AliEmcalContainer : public TNamed {
   AliEmcalContainer(const AliEmcalContainer& obj); // copy constructor
   AliEmcalContainer& operator=(const AliEmcalContainer& other); // assignment
 
-  ClassDef(AliEmcalContainer,3);
+  ClassDef(AliEmcalContainer,4);
 };
 #endif
index 6244820..042cc57 100644 (file)
@@ -21,6 +21,7 @@ AliParticleContainer::AliParticleContainer():
   fParticleMaxEta(0.9),
   fParticleMinPhi(-10),
   fParticleMaxPhi(10),
+  fMinDistanceTPCSectorEdge(-1),
   fTrackBitMap(0),
   fMCTrackBitMap(0),
   fMinMCLabel(0),
@@ -41,6 +42,7 @@ AliParticleContainer::AliParticleContainer(const char *name):
   fParticleMaxEta(0.9),
   fParticleMinPhi(-10),
   fParticleMaxPhi(10),
+  fMinDistanceTPCSectorEdge(-1),
   fTrackBitMap(0),
   fMCTrackBitMap(0),
   fMinMCLabel(0),
@@ -193,6 +195,16 @@ Bool_t AliParticleContainer::AcceptParticle(AliVParticle *vp)
     return kFALSE;
   }
 
+  if(fMinDistanceTPCSectorEdge>0.) {
+    const Double_t pi = TMath::Pi();
+    const Double_t kSector = pi/9;
+    Double_t phiDist = TMath::Abs(vp->Phi() - TMath::FloorNint(vp->Phi()/kSector)*kSector);
+    if(phiDist<fMinDistanceTPCSectorEdge) {
+      fRejectionReason |= kMinDistanceTPCSectorEdgeCut;
+      return kFALSE;
+    }
+  }
+
   if (TMath::Abs(vp->GetLabel()) > fMinMCLabel) {
     if(vp->TestBits(fMCTrackBitMap) != (Int_t)fMCTrackBitMap) {
       AliDebug(2,"MC particle not accepted because of MC bit map.");
index b3f904c..683e47d 100644 (file)
@@ -38,6 +38,7 @@ class AliParticleContainer : public AliEmcalContainer {
   void                        SetParticlePtCut(Double_t cut)                    { fParticlePtCut = cut ; }
   void                        SetParticleEtaLimits(Double_t min, Double_t max)  { fParticleMaxEta = max ; fParticleMinEta = min ; }
   void                        SetParticlePhiLimits(Double_t min, Double_t max)  { fParticleMaxPhi = max ; fParticleMinPhi = min ; }
+  void                        SetMinDistanceTPCSectorEdge(Double_t min)         { fMinDistanceTPCSectorEdge = min; }
   void                        SetTrackBitMap(UInt_t m)                          { fTrackBitMap     = m ; }
   void                        SetMCFlag(UInt_t m)                               { fMCFlag          = m ; }
   void                        SelectHIJING(Bool_t s)                            { if (s) fGeneratorIndex = 0; else fGeneratorIndex = -1; }
@@ -52,6 +53,7 @@ class AliParticleContainer : public AliEmcalContainer {
   Double_t                    fParticleMaxEta;                // cut on particle eta
   Double_t                    fParticleMinPhi;                // cut on particle phi
   Double_t                    fParticleMaxPhi;                // cut on particle phi
+  Double_t                    fMinDistanceTPCSectorEdge;      // require minimum distance to edge of TPC sector edge
   UInt_t                      fTrackBitMap;                   // bit map of accepted tracks (non MC)
   UInt_t                      fMCTrackBitMap;                 // bit map of accepted MC tracks
   Int_t                       fMinMCLabel;                    // minimum MC label value for the tracks/clusters being considered MC particles
@@ -63,7 +65,7 @@ class AliParticleContainer : public AliEmcalContainer {
   AliParticleContainer(const AliParticleContainer& obj); // copy constructor
   AliParticleContainer& operator=(const AliParticleContainer& other); // assignment
 
-  ClassDef(AliParticleContainer,3);
+  ClassDef(AliParticleContainer,4);
 
 };