]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
AliITSVertexerZ: disable pileup search with PbPb (F.Prino)
authormasera <masera@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 16 Oct 2011 21:36:43 +0000 (21:36 +0000)
committermasera <masera@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 16 Oct 2011 21:36:43 +0000 (21:36 +0000)
ITS/AliITSReconstructor.cxx
ITS/AliITSVertexerZ.cxx
ITS/AliITSVertexerZ.h

index ea383dab6cbd9e0dcf73c73835da3ea827f1796b..60704a54104d554e40b0e699eec41bd23c46f739 100644 (file)
@@ -201,7 +201,10 @@ AliVertexer* AliITSReconstructor::CreateVertexer() const
   }
   else if(vtxOpt==1){
     AliDebug(1,"AliITSVertexerZ has been selected");
-    vptr =  new AliITSVertexerZ();
+    AliITSVertexerZ* vtxrz =  new AliITSVertexerZ();
+    Int_t pileupAlgo=GetRecoParam()->GetSPDVertexerPileupAlgo();
+    if(pileupAlgo==3) vtxrz->SetSearchForPileup(kFALSE);
+    vptr = vtxrz;
   }
   else if(vtxOpt==2){
     AliDebug(1,"AliITSVertexerCosmics has been selected");
index c65d28365f0e36f6c26779a053b6497e2c158f2f..7d0f73d9a8c875843da86fedbeb7295138a9cca0 100644 (file)
@@ -51,7 +51,9 @@ fHighLim(0.),
 fStepCoarse(0),
 fTolerance(0.),
 fMaxIter(0),
-fWindowWidth(0) {
+fWindowWidth(0),
+fSearchForPileup(kTRUE)
+{
   // Default constructor
   SetDiffPhiMax();
   SetFirstLayerModules();
@@ -80,7 +82,9 @@ fHighLim(0.),
 fStepCoarse(0),
 fTolerance(0.),
 fMaxIter(0),
-fWindowWidth(0) {
+fWindowWidth(0),
+fSearchForPileup(kTRUE)
+{
   // Standard Constructor
   SetDiffPhiMax();
   SetFirstLayerModules();
@@ -370,7 +374,7 @@ void AliITSVertexerZ::VertexZFinder(TTree *itsClusterTree){
   fCurrentVertex->SetDispersion(fDiffPhiMax);
   fNoVertices=1;
   points.Clear();
-  if(ncontr>fMinTrackletsForPilup){ 
+  if(fSearchForPileup && ncontr>fMinTrackletsForPilup){ 
     Float_t secPeakPos;
     Int_t ncontr2=FindSecondPeak(fZCombc,binmin,binmax,secPeakPos);
     if(ncontr2>=fMinTrackletsForPilup){ 
index cf492fed32dd673b6d34032aa83f083d49c16120..b2ab7b6b999f4da8eb7c7f18e47086905e4eed23 100644 (file)
@@ -46,6 +46,10 @@ class AliITSVertexerZ : public AliITSVertexer {
   void SetWindowWidth(Float_t ww=0.2){fWindowWidth=ww;}
   Float_t GetTolerance() const {return fTolerance;}
   //  virtual void MakeTracklet(Double_t * /* pA */, Double_t * /*pB */, Int_t & /* nolines */) {} // implemented in a derived class
+
+  void SetSearchForPileup(Bool_t opt){fSearchForPileup=opt;}
+  Bool_t IsSearchForPileupActive() const { return fSearchForPileup;}
+
  protected:
   void ResetHistograms();
   void VertexZFinder(TTree *itsClusterTree);
@@ -68,11 +72,13 @@ class AliITSVertexerZ : public AliITSVertexer {
   Int_t fMaxIter;            // Maximum number of iterations (<=5)
   Float_t fPhiDiffIter[5];   // Delta phi used in iterations
   Float_t fWindowWidth;      // Z window width for symmetrization
+  Bool_t  fSearchForPileup;  // flag to switch pileup off/on
+
  private:
   AliITSVertexerZ(const AliITSVertexerZ& vtxr);
   AliITSVertexerZ& operator=(const AliITSVertexerZ& vtxr );
 
-  ClassDef(AliITSVertexerZ,10);
+  ClassDef(AliITSVertexerZ,11);
 };
 
 #endif