]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG4/UserTasks/EmcalTasks/AliAnalysisTaskEMCALTriggerQA.h
Add cluster disitribution histograms as a function of eta/phi and depending on V0...
[u/mrichter/AliRoot.git] / PWG4 / UserTasks / EmcalTasks / AliAnalysisTaskEMCALTriggerQA.h
index 26f945f7ce660795e99f6a11a16b9fee39081502..1cfab609fcfdc87700e72ff7e30d5521f23328ee 100644 (file)
@@ -13,8 +13,9 @@
 
 //--- Root ---
 class TList;
+class TH1F;
+class TH2I;
 class TH2F;
-class TH2D;
 class AliEMCALGeometry;
 class TProfile2D;
 
@@ -49,16 +50,15 @@ public:
   void   SetSTUFEERatioHistogramsRange   (Int_t nbins,  Float_t max) { fNBinsSTUFEERatio = nbins; fMaxSTUFEERatio = max ; }
   void   SetSTUTRURatioHistogramsRange   (Int_t nbins,  Float_t max) { fNBinsSTUTRURatio = nbins; fMaxSTUFEERatio = max ; }
   void   SetClusterEHistogramsRange      (Int_t nbins,  Float_t max) { fNBinsClusterE    = nbins; fMaxClusterE    = max ; }
-
   
 private:
   TList            *fOutputList;      //! Output list
   
+  AliEMCALRecoUtils *fRecoUtils;      //  RecoUtils
+
   AliEMCALGeometry *fGeometry;        //  Access to EMCAL geometry utils
   TString           fGeoName;         //  Name of geometry used
   
-  AliEMCALRecoUtils *fRecoUtils;      //  RecoUtils
-  
   TH1F             *fhNEvents;        //! Number of selected events
   TH2F             *fhFORAmp;         //! FEE cells deposited energy, grouped like FastOR 2x2 per Row and Column
   TH2F             *fhFORAmpL1G;      //! FEE cells deposited energy, grouped like FastOR 2x2 per Row and Column, with L1 Gamma trigger event
@@ -75,6 +75,20 @@ private:
   TH2F             *fhFEESTU;         //! Correlation FEE vs STU
   TH2F             *fhTRUSTU;         //! Correlation TRU vs STU
   TH2I             *fhV0STU;          //! Total signal STU vs V0C+V0S
+  
+  TH2F             *fhGPMaxVV0TT;     //! V0 signal vs maximum gamma L1 patch
+  TH2F             *fhJPMaxVV0TT;     //! V0 signal vs maximum jet L1 patch
+  TProfile2D       *fhFORMeanAmp;     //! Mean FastOR(FEE) signal per Row and Column
+  TProfile2D       *fhL0MeanAmp;      //! Mean FastOR(TRU) signal per Row and Column
+  TProfile2D       *fhL1MeanAmp;      //! Mean FastOR(STU) signal per Row and Column
+  TH1F             *fhV0MB;           //! V0 distribution for MB triggered event
+  TH1F             *fhV0L1G;          //! V0 distribution for L1G triggered event
+  TH1F             *fhV0L1J;          //! V0 distribution for L1J triggered event
+  TH2F             *fhL1GPatchMax;    //! FOR of max. amplitude patch with L1 Gamma patch associated
+  TH2F             *fhL1JPatchMax;    //! FOR of max. amplitude patch with L1 Jet patch associated  
+  
+  // Cluster vs trigger histograms
+  
   TH1F             *fhClusMB;         //! Clusters distribution for MB trigger
   TH1F             *fhClusMBPure;     //! Clusters distribution for MB trigger
   TH1F             *fhClusL0;         //! Clusters distribution for L0 trigger 
@@ -89,31 +103,128 @@ private:
   TH1F             *fhClusMaxL1J;     //! Maximum E Cluster per event distribution for L1J trigger
   TH1F             *fhClusMaxL1GOnly; //! Maximum E Cluster per event distribution for L1G trigger and not L1J
   TH1F             *fhClusMaxL1JOnly; //! Maximum E Cluster per event distribution for L1J trigger and not L1G
-  TH2F             *fhGPMaxVV0TT;     //! V0 signal vs maximum gamma L1 patch
-  TH2F             *fhJPMaxVV0TT;     //! V0 signal vs maximum jet L1 patch
-  TProfile2D       *fhFORMeanAmp;     //! Mean FastOR(FEE) signal per Row and Column
-  TProfile2D       *fhL0MeanAmp;      //! Mean FastOR(TRU) signal per Row and Column
-  TProfile2D       *fhL1MeanAmp;      //! Mean FastOR(STU) signal per Row and Column
-  TH1F             *fhV0MB;           //! V0 distribution for MB triggered event
-  TH1F             *fhV0L1G;          //! V0 distribution for L1G triggered event
-  TH1F             *fhV0L1J;          //! V0 distribution for L1J triggered event
-  TH2F             *fhL1GPatchMax;    //! FOR of max. amplitude patch with L1 Gamma patch associated
-  TH2F             *fhL1JPatchMax;    //! FOR of max. amplitude patch with L1 Jet patch associated
-  // Histograms bins
+
+  TH2F             *fhClusCenMB;            //! Clusters Centrality vs E distribution for MB trigger
+  TH2F             *fhClusCenL0;            //! Clusters Centrality vs E distribution for L0 trigger   
+  TH2F             *fhClusCenL1G;           //! Clusters Centrality vs E distribution for L1G trigger
+  TH2F             *fhClusCenL1J;           //! Clusters Centrality vs E distribution for L1J trigger
+  TH2F             *fhClusCenL1GOnly;       //! Clusters Centrality vs E distribution for L1G trigger and not L1J
+  TH2F             *fhClusCenL1JOnly;       //! Clusters Centrality vs E distribution for L1J trigger and not L1G
+  TH2F             *fhClusCenMaxMB;         //! Maximum E Cluster  vs Centrality per event distribution for MB trigger
+  TH2F             *fhClusCenMaxL0;         //! Maximum E Cluster  vs Centrality  per event distribution for L0 trigger        
+  TH2F             *fhClusCenMaxL1G;        //! Maximum E Cluster  vs Centrality  per event distribution for L1G trigger
+  TH2F             *fhClusCenMaxL1J;        //! Maximum E Cluster  vs Centrality  per event distribution for L1J trigger
+  TH2F             *fhClusCenMaxL1GOnly;    //! Maximum E Cluster  vs Centrality  per event distribution for L1G trigger and not L1J
+  TH2F             *fhClusCenMaxL1JOnly;    //! Maximum E Cluster  vs Centrality  per event distribution for L1J trigger and not L1G  
+  
+  TH2F             *fhClusV0MB;            //! Clusters Centrality vs E distribution for MB trigger
+  TH2F             *fhClusV0L0;            //! Clusters Centrality vs E distribution for L0 trigger    
+  TH2F             *fhClusV0L1G;           //! Clusters Centrality vs E distribution for L1G trigger
+  TH2F             *fhClusV0L1J;           //! Clusters Centrality vs E distribution for L1J trigger
+  TH2F             *fhClusV0L1GOnly;       //! Clusters Centrality vs E distribution for L1G trigger and not L1J
+  TH2F             *fhClusV0L1JOnly;       //! Clusters Centrality vs E distribution for L1J trigger and not L1G
+  TH2F             *fhClusV0MaxMB;         //! Maximum E Cluster  vs Centrality per event distribution for MB trigger
+  TH2F             *fhClusV0MaxL0;         //! Maximum E Cluster  vs Centrality  per event distribution for L0 trigger 
+  TH2F             *fhClusV0MaxL1G;        //! Maximum E Cluster  vs Centrality  per event distribution for L1G trigger
+  TH2F             *fhClusV0MaxL1J;        //! Maximum E Cluster  vs Centrality  per event distribution for L1J trigger
+  TH2F             *fhClusV0MaxL1GOnly;    //! Maximum E Cluster  vs Centrality  per event distribution for L1G trigger and not L1J
+  TH2F             *fhClusV0MaxL1JOnly;    //! Maximum E Cluster  vs Centrality  per event distribution for L1J trigger and not L1G 
+  
+  TH2F             *fhClusEtaMB;            //! Clusters eta vs E distribution for MB trigger
+  TH2F             *fhClusEtaL0;            //! Clusters eta vs E distribution for L0 trigger  
+  TH2F             *fhClusEtaL1G;           //! Clusters eta vs E distribution for L1G trigger
+  TH2F             *fhClusEtaL1J;           //! Clusters eta vs E distribution for L1J trigger
+  TH2F             *fhClusEtaL1GOnly;       //! Clusters eta vs E distribution for L1G trigger and not L1J
+  TH2F             *fhClusEtaL1JOnly;       //! Clusters eta vs E distribution for L1J trigger and not L1G
+  TH2F             *fhClusEtaMaxMB;         //! Maximum E Cluster  vs Eta per event distribution for MB trigger
+  TH2F             *fhClusEtaMaxL0;         //! Maximum E Cluster  vs Eta  per event distribution for L0 trigger       
+  TH2F             *fhClusEtaMaxL1G;        //! Maximum E Cluster  vs Eta  per event distribution for L1G trigger
+  TH2F             *fhClusEtaMaxL1J;        //! Maximum E Cluster  vs Eta  per event distribution for L1J trigger
+  TH2F             *fhClusEtaMaxL1GOnly;    //! Maximum E Cluster  vs Eta  per event distribution for L1G trigger and not L1J
+  TH2F             *fhClusEtaMaxL1JOnly;    //! Maximum E Cluster  vs Eta  per event distribution for L1J trigger and not L1G
+
+  TH2F             *fhClusPhiMB;            //! Clusters Phi vs E distribution for MB trigger
+  TH2F             *fhClusPhiL0;            //! Clusters Phi vs E distribution for L0 trigger  
+  TH2F             *fhClusPhiL1G;           //! Clusters Phi vs E distribution for L1G trigger
+  TH2F             *fhClusPhiL1J;           //! Clusters Phi vs E distribution for L1J trigger
+  TH2F             *fhClusPhiL1GOnly;       //! Clusters Phi vs E distribution for L1G trigger and not L1J
+  TH2F             *fhClusPhiL1JOnly;       //! Clusters Phi vs E distribution for L1J trigger and not L1G
+  TH2F             *fhClusPhiMaxMB;         //! Maximum E Cluster  vs Phi per event distribution for MB trigger
+  TH2F             *fhClusPhiMaxL0;         //! Maximum E Cluster  vs Phi  per event distribution for L0 trigger       
+  TH2F             *fhClusPhiMaxL1G;        //! Maximum E Cluster  vs Phi  per event distribution for L1G trigger
+  TH2F             *fhClusPhiMaxL1J;        //! Maximum E Cluster  vs Phi  per event distribution for L1J trigger
+  TH2F             *fhClusPhiMaxL1GOnly;    //! Maximum E Cluster  vs Phi  per event distribution for L1G trigger and not L1J
+  TH2F             *fhClusPhiMaxL1JOnly;    //! Maximum E Cluster  vs Phi  per event distribution for L1J trigger and not L1G
+
+  TH2F             *fhClusEtaPhiHighMB;            //! Clusters eta vs phi distribution for MB trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighL0;            //! Clusters eta vs phi distribution for L0 trigger, energy above 10 GeV    
+  TH2F             *fhClusEtaPhiHighL1G;           //! Clusters eta vs phi distribution for L1G trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighL1J;           //! Clusters eta vs phi distribution for L1J trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighL1GOnly;       //! Clusters eta vs phi distribution for L1G trigger and not L1J, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighL1JOnly;       //! Clusters eta vs phi distribution for L1J trigger and not L1G, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCluMaxMB;      //! Maximum E Cluster, Phi vs Eta per event distribution for MB trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCluMaxL0;      //! Maximum E Cluster, Phi vs Eta per event distribution for L0 trigger, energy above 10 GeV        
+  TH2F             *fhClusEtaPhiHighCluMaxL1G;     //! Maximum E Cluster, Phi vs Eta per event distribution for L1G trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCluMaxL1J;     //! Maximum E Cluster, Phi vs Eta per event distribution for L1J trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCluMaxL1GOnly; //! Maximum E Cluster, Phi vs Eta per event distribution for L1G trigger and not L1J, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCluMaxL1JOnly; //! Maximum E Cluster, Phi vs Eta per event distribution for L1J trigger and not L1G, energy above 10 GeV
+  
+  TH2F             *fhClusEtaPhiHighCellMaxMB;            //! Clusters maximum energy cell index eta vs phi distribution for MB trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCellMaxL0;            //! Clusters maximum energy cell index eta vs phi distribution for L0 trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCellMaxL1G;           //! Clusters maximum energy cell index eta vs phi distribution for L1G trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCellMaxL1J;           //! Clusters maximum energy cell index eta vs phi distribution for L1J trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCellMaxL1GOnly;       //! Clusters maximum energy cell index eta vs phi distribution for L1G trigger and not L1J, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCellMaxL1JOnly;       //! Clusters maximum energy cell index eta vs phi distribution for L1J trigger and not L1G, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCellMaxCluMaxMB;      //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for MB trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCellMaxCluMaxL0;      //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for L0 trigger, energy above 10 GeV       
+  TH2F             *fhClusEtaPhiHighCellMaxCluMaxL1G;     //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for L1G trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCellMaxCluMaxL1J;     //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for L1J trigger, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCellMaxCluMaxL1GOnly; //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for L1G trigger and not L1J, energy above 10 GeV
+  TH2F             *fhClusEtaPhiHighCellMaxCluMaxL1JOnly; //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for L1J trigger and not L1G, energy above 10 GeV
+  
+  TH2F             *fhClusEtaPhiLowMB;            //! Clusters eta vs phi distribution for MB trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowL0;            //! Clusters eta vs phi distribution for L0 trigger, energy below 10 GeV     
+  TH2F             *fhClusEtaPhiLowL1G;           //! Clusters eta vs phi distribution for L1G trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowL1J;           //! Clusters eta vs phi distribution for L1J trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowL1GOnly;       //! Clusters eta vs phi distribution for L1G trigger and not L1J, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowL1JOnly;       //! Clusters eta vs phi distribution for L1J trigger and not L1G, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCluMaxMB;      //! Maximum E Cluster, Phi vs Eta per event distribution for MB trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCluMaxL0;      //! Maximum E Cluster, Phi vs Eta per event distribution for L0 trigger, energy below 10 GeV 
+  TH2F             *fhClusEtaPhiLowCluMaxL1G;     //! Maximum E Cluster, Phi vs Eta per event distribution for L1G trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCluMaxL1J;     //! Maximum E Cluster, Phi vs Eta per event distribution for L1J trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCluMaxL1GOnly; //! Maximum E Cluster, Phi vs Eta per event distribution for L1G trigger and not L1J, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCluMaxL1JOnly; //! Maximum E Cluster, Phi vs Eta per event distribution for L1J trigger and not L1G, energy below 10 GeV
+  
+  TH2F             *fhClusEtaPhiLowCellMaxMB;            //! Clusters maximum energy cell index eta vs phi distribution for MB trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCellMaxL0;            //! Clusters maximum energy cell index eta vs phi distribution for L0 trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCellMaxL1G;           //! Clusters maximum energy cell index eta vs phi distribution for L1G trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCellMaxL1J;           //! Clusters maximum energy cell index eta vs phi distribution for L1J trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCellMaxL1GOnly;       //! Clusters maximum energy cell index eta vs phi distribution for L1G trigger and not L1J, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCellMaxL1JOnly;       //! Clusters maximum energy cell index eta vs phi distribution for L1J trigger and not L1G, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCellMaxCluMaxMB;      //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for MB trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCellMaxCluMaxL0;      //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for L0 trigger, energy below 10 GeV        
+  TH2F             *fhClusEtaPhiLowCellMaxCluMaxL1G;     //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for L1G trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCellMaxCluMaxL1J;     //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for L1J trigger, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCellMaxCluMaxL1GOnly; //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for L1G trigger and not L1J, energy below 10 GeV
+  TH2F             *fhClusEtaPhiLowCellMaxCluMaxL1JOnly; //! Maximum E Cluster, maximum energy cell index Phi vs Eta per event distribution for L1J trigger and not L1G, energy below 10 GeV
   
-  Int_t             fNBinsSTUSignal   ; // Number of bins for STU total signal histograms
-  Float_t           fMaxSTUSignal     ; // Maximum value for TRU total signal histograms
-  Int_t             fNBinsTRUSignal   ; // Number of bins for TRU total signal histograms
-  Float_t           fMaxTRUSignal     ; // Maximum value for TRU total signal histograms
-  Int_t             fNBinsV0Signal    ; // Number of bins for V0 total signal histograms
-  Float_t           fMaxV0Signal      ; // Maximum value for V0 total signal histograms
-  Int_t             fNBinsSTUFEERatio ; // Number of bins for STU/FEE ratios histograms
-  Float_t           fMaxSTUFEERatio   ; // Maximum value for STU/FEE ratios histograms
-  Int_t             fNBinsSTUTRURatio ; // Number of bins for STU/TRU ratios histograms
-  Float_t           fMaxSTUTRURatio   ; // Maximum value for STU/TRU ratios histograms
-  Int_t             fNBinsClusterE    ; // Number of bins for E cluster histograms
-  Float_t           fMaxClusterE      ; // Maximum value for E cluster histograms
   
+  
+  // Histograms bins
+  
+  Int_t             fNBinsSTUSignal   ;     // Number of bins for STU total signal histograms
+  Float_t           fMaxSTUSignal     ;     // Maximum value for TRU total signal histograms
+  Int_t             fNBinsTRUSignal   ;     // Number of bins for TRU total signal histograms
+  Float_t           fMaxTRUSignal     ;     // Maximum value for TRU total signal histograms
+  Int_t             fNBinsV0Signal    ;     // Number of bins for V0 total signal histograms
+  Float_t           fMaxV0Signal      ;     // Maximum value for V0 total signal histograms
+  Int_t             fNBinsSTUFEERatio ;     // Number of bins for STU/FEE ratios histograms
+  Float_t           fMaxSTUFEERatio   ;     // Maximum value for STU/FEE ratios histograms
+  Int_t             fNBinsSTUTRURatio ;     // Number of bins for STU/TRU ratios histograms
+  Float_t           fMaxSTUTRURatio   ;     // Maximum value for STU/TRU ratios histograms
+  Int_t             fNBinsClusterE    ;     // Number of bins for E cluster histograms
+  Float_t           fMaxClusterE      ;     // Maximum value for E cluster histograms
+
   //Constants needed by the class: EMCAL 
   static const int  fgkFALTRORows = AliEMCALGeoParams::fgkEMCALRows*(AliEMCALGeoParams::fgkEMCALModules-7)/2;   // total number 
   // of fake altro rows    in EMCAL
@@ -127,7 +238,7 @@ private:
   
   AliAnalysisTaskEMCALTriggerQA& operator=(const AliAnalysisTaskEMCALTriggerQA&); //not implemented
   
-  ClassDef(AliAnalysisTaskEMCALTriggerQA, 8);   
+  ClassDef(AliAnalysisTaskEMCALTriggerQA, 9);   
 };
 
 #endif