Tuning Strangeness vs multiplicity main task for pass4 data
authorddobrigk <david.dobrigkeit.chinellato@cern.ch>
Sat, 15 Nov 2014 15:45:03 +0000 (13:45 -0200)
committerddobrigk <david.dobrigkeit.chinellato@cern.ch>
Sat, 15 Nov 2014 15:45:03 +0000 (13:45 -0200)
PWGLF/STRANGENESS/Cascades/AliAnalysisTaskStrangenessVsMultiplicity.cxx
PWGLF/STRANGENESS/Cascades/AliAnalysisTaskStrangenessVsMultiplicity.h
PWGLF/STRANGENESS/Cascades/AliAnalysisTaskStrangenessVsMultiplicityMC.cxx
PWGLF/STRANGENESS/Cascades/AliAnalysisTaskStrangenessVsMultiplicityMC.h

index 095c8e8..a99bf63 100644 (file)
@@ -101,6 +101,7 @@ fkSaveV0Tree      ( kFALSE ),
 fkSaveCascadeTree ( kTRUE  ),
 fkRunVertexers    ( kTRUE  ),
 fkSkipEventSelection( kFALSE ),
+fkApplyTrackletsVsClustersCut(kTRUE),
 //---> Variables for fTreeEvent
 fAmplitude_V0A   (0),
 fAmplitude_V0C   (0),
@@ -231,6 +232,7 @@ fkSaveV0Tree      ( kFALSE ),
 fkSaveCascadeTree ( kTRUE  ),
 fkRunVertexers    ( kTRUE  ),
 fkSkipEventSelection( kFALSE ),
+fkApplyTrackletsVsClustersCut(kTRUE),
 //---> Variables for fTreeEvent
 fAmplitude_V0A (0),
 fAmplitude_V0C (0),
@@ -697,6 +699,18 @@ void AliAnalysisTaskStrangenessVsMultiplicity::UserExec(Option_t *)
         return;
     }
     
+    //Tracklets vs Clusters cut via AliAnalysisUtils
+    if ( fkApplyTrackletsVsClustersCut && (! fkSkipEventSelection ) ) {
+        if( fUtils->IsSPDClusterVsTrackletBG( lESDevent ) ){
+            PostData(1, fListHist);
+            PostData(2, fTreeEvent);
+            PostData(3, fTreeV0);
+            PostData(4, fTreeCascade);
+            return;
+        }
+    }
+    
+    
     fHistEventCounter->Fill(1.5);
     
     //------------------------------------------------
index eea7a09..686abbf 100644 (file)
@@ -105,7 +105,8 @@ class AliAnalysisTaskStrangenessVsMultiplicity : public AliAnalysisTaskSE {
 
   //Objects Controlling Task Behaviour: has to be streamed! 
   Bool_t    fkRunVertexers;           // if true, re-run vertexer with loose cuts *** only for CASCADES! *** 
-  Bool_t    fkSkipEventSelection;     // if true, will only perform TRIGGER selection (currently kMB, to change) 
+  Bool_t    fkSkipEventSelection;     // if true, will only perform TRIGGER selection (currently kMB, to change)
+    Bool_t    fkApplyTrackletsVsClustersCut; //if true, applies Tracklet vs clusters cut together with PS
   Double_t  fV0VertexerSels[7];        // Array to store the 7 values for the different selections V0 related
   Double_t  fCascadeVertexerSels[8];   // Array to store the 8 values for the different selections Casc. related
 
index 757a78f..69fef39 100644 (file)
@@ -97,11 +97,12 @@ using std::endl;
 ClassImp(AliAnalysisTaskStrangenessVsMultiplicityMC)
 
 AliAnalysisTaskStrangenessVsMultiplicityMC::AliAnalysisTaskStrangenessVsMultiplicityMC()
-  : AliAnalysisTaskSE(), fListHist(0), fTreeEvent(0), fTreeV0(0), fTreeCascade(0), fPIDResponse(0), fESDtrackCuts(0), fPPVsMultUtils(0),
+  : AliAnalysisTaskSE(), fListHist(0), fTreeEvent(0), fTreeV0(0), fTreeCascade(0), fPIDResponse(0), fESDtrackCuts(0), fPPVsMultUtils(0), fUtils(0),
   fkSaveV0Tree      ( kFALSE ),
   fkSaveCascadeTree ( kTRUE  ),
   fkRunVertexers    ( kTRUE  ),
   fkSkipEventSelection( kFALSE ),
+  fkApplyTrackletsVsClustersCut( kTRUE ),
   //---> Variables for fTreeEvent
   fAmplitude_V0A   (0),   
   fAmplitude_V0C   (0),   
@@ -320,11 +321,12 @@ AliAnalysisTaskStrangenessVsMultiplicityMC::AliAnalysisTaskStrangenessVsMultipli
 }
 
 AliAnalysisTaskStrangenessVsMultiplicityMC::AliAnalysisTaskStrangenessVsMultiplicityMC(const char *name) 
-  : AliAnalysisTaskSE(name), fListHist(0), fTreeEvent(0), fTreeV0(0), fTreeCascade(0), fPIDResponse(0), fESDtrackCuts(0), fPPVsMultUtils(0),  
+  : AliAnalysisTaskSE(name), fListHist(0), fTreeEvent(0), fTreeV0(0), fTreeCascade(0), fPIDResponse(0), fESDtrackCuts(0), fPPVsMultUtils(0), fUtils(0),
   fkSaveV0Tree      ( kFALSE ),
   fkSaveCascadeTree ( kTRUE  ), 
   fkRunVertexers    ( kTRUE  ),
   fkSkipEventSelection( kFALSE ),
+  fkApplyTrackletsVsClustersCut( kTRUE ),
   //---> Variables for fTreeEvent
   fAmplitude_V0A (0),   
   fAmplitude_V0C (0), 
@@ -590,6 +592,10 @@ AliAnalysisTaskStrangenessVsMultiplicityMC::~AliAnalysisTaskStrangenessVsMultipl
         delete fPPVsMultUtils;
         fPPVsMultUtils = 0x0;
     }
+    if (fUtils){
+        delete fUtils;
+        fUtils = 0x0;
+    }
 }
 
 //________________________________________________________________________
@@ -785,9 +791,14 @@ void AliAnalysisTaskStrangenessVsMultiplicityMC::UserCreateOutputObjects()
   if(! fESDtrackCuts ){
     fESDtrackCuts = new AliESDtrackCuts();
   }
+    //Helper
   if(! fPPVsMultUtils ){
     fPPVsMultUtils = new AliPPVsMultUtils();
   }
+    //Analysis Utils
+    if(! fUtils ){
+        fUtils = new AliAnalysisUtils();
+    }
 
 //------------------------------------------------
 // V0 Multiplicity Histograms
@@ -1166,6 +1177,17 @@ void AliAnalysisTaskStrangenessVsMultiplicityMC::UserExec(Option_t *)
     PostData(4, fTreeCascade);
     return;
   }
+    
+    //Tracklets vs Clusters cut via AliAnalysisUtils
+    if ( fkApplyTrackletsVsClustersCut && (! fkSkipEventSelection ) ) {
+        if( fUtils->IsSPDClusterVsTrackletBG( lESDevent ) ){
+            PostData(1, fListHist);
+            PostData(2, fTreeEvent);
+            PostData(3, fTreeV0);
+            PostData(4, fTreeCascade);
+            return;
+        }
+    }
 
   fHistEventCounter->Fill(1.5);
  
index 21d58b7..66fc1db 100644 (file)
@@ -98,7 +98,8 @@ class AliAnalysisTaskStrangenessVsMultiplicityMC : public AliAnalysisTaskSE {
   AliPIDResponse *fPIDResponse;     // PID response object
   AliESDtrackCuts *fESDtrackCuts;   // ESD track cuts used for primary track definition
   AliPPVsMultUtils *fPPVsMultUtils; //
-
+  AliAnalysisUtils *fUtils; //
+    
   //Objects Controlling Task Behaviour 
   Bool_t fkSaveV0Tree;              //if true, save TTree
   Bool_t fkSaveCascadeTree;         //if true, save TTree
@@ -106,6 +107,8 @@ class AliAnalysisTaskStrangenessVsMultiplicityMC : public AliAnalysisTaskSE {
   //Objects Controlling Task Behaviour: has to be streamed! 
   Bool_t    fkRunVertexers;           // if true, re-run vertexer with loose cuts *** only for CASCADES! ***
   Bool_t    fkSkipEventSelection;     // if true, will only perform TRIGGER selection (currently kMB, to change)
+    Bool_t    fkApplyTrackletsVsClustersCut; //if true, applies Tracklet vs clusters cut together with PS
+    
   Double_t  fV0VertexerSels[7];        // Array to store the 7 values for the different selections V0 related
   Double_t  fCascadeVertexerSels[8];   // Array to store the 8 values for the different selections Casc. related