]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGGA/CaloTrackCorrelations/AliAnaInsideClusterInvariantMass.h
moved methods to AliCalorimeterUtils which were duplicated or that can be used in...
[u/mrichter/AliRoot.git] / PWGGA / CaloTrackCorrelations / AliAnaInsideClusterInvariantMass.h
1 #ifndef ALIANAINSIDECLUSTERINVARIANTMASS_H
2 #define ALIANAINSIDECLUSTERINVARIANTMASS_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice     */
5
6 //_________________________________________________________________________
7 //
8 // Split clusters with some criteria and calculate invariant mass
9 // to identify them as pi0 or conversion
10 //
11 //
12 //-- Author: Gustavo Conesa (LPSC-Grenoble)  
13 //_________________________________________________________________________
14
15
16 // --- ROOT system ---
17 class TList ;
18 class TObjString;
19 class TLorentzVector;
20
21 // --- ANALYSIS system ---
22 #include "AliAnaCaloTrackCorrBaseClass.h"
23
24 class AliAnaInsideClusterInvariantMass : public AliAnaCaloTrackCorrBaseClass {
25
26  public: 
27   AliAnaInsideClusterInvariantMass() ; // default ctor
28   virtual ~AliAnaInsideClusterInvariantMass() { ; } //virtual dtor
29
30   
31   TObjString * GetAnalysisCuts();
32   
33   TList      * GetCreateOutputObjects();
34   
35   TLorentzVector GetCellMomentum(const Int_t absId, Float_t energy, AliVCaloCells* cells) ;
36   
37   void         Init();
38   
39   void         InitParameters();
40      
41   void         MakeAnalysisFillHistograms() ; 
42       
43   void         SetCalorimeter(TString & det)     { fCalorimeter   = det  ; }
44     
45   void         SetM02Cut(Float_t cut)            { fM02Cut         = cut ; }
46
47   void         SetMinNCells(Int_t cut)           { fMinNCells      = cut ; }
48
49   void         SetPi0MassRange(Float_t min, Float_t max) { fMassPi0Min = min ; fMassPi0Max = max ; }
50   void         SetEtaMassRange(Float_t min, Float_t max) { fMassEtaMin = min ; fMassEtaMax = max ; }
51   void         SetConMassRange(Float_t min, Float_t max) { fMassConMin = min ; fMassConMax = max ; }
52   
53   void         SplitEnergy(const Int_t absId1, const Int_t absId2, 
54                            AliVCluster *cluster, 
55                            AliVCaloCells* cells,
56                            Float_t & e1, Float_t & e2,
57                            const Int_t nMax//, Int_t *absIdList, Float_t *maxEList,
58 );
59   
60   void         Print(const Option_t * opt) const;
61
62   //For histograms
63   enum mcTypes { kmcPhoton = 1, kmcConversion = 2, kmcPi0    = 3,  
64                  kmcEta    = 4, kmcElectron   = 5, kmcHadron = 6 };
65
66  private:
67   
68   TString      fCalorimeter ;       // Calorimeter where the gamma is searched
69   Float_t      fM02Cut    ;         // Study clusters with l0 larger than cut
70   Int_t        fMinNCells ;         // Study clusters with ncells larger than cut
71   Float_t      fMassEtaMin;         // Min Eta mass
72   Float_t      fMassEtaMax;         // Max Eta mass  
73   Float_t      fMassPi0Min;         // Min Pi0 mass
74   Float_t      fMassPi0Max;         // Min Pi0 mass
75   Float_t      fMassConMin;         // Min Conversions mass
76   Float_t      fMassConMax;         // Min Conversions mass
77   
78   //Histograms
79   
80   TH2F       * fhMassNLocMax1[7] ;  //! Mass of 2 highest energy cells when 1 local max, 1-6 for different MC particle types 
81   TH2F       * fhMassNLocMax2[7] ;  //! Mass of 2 cells local maxima vs E,  1-6 for different MC particle types
82   TH2F       * fhMassNLocMaxN[7] ;  //! Mass of >2 cells local maxima vs E, 1-6 for different MC particle types
83
84   TH2F       * fhNLocMax[7] ;       //! Number of maxima in cluster vs E, 1-6 for different MC particle types
85   TH2F       * fhNLocMaxEMax[7] ;   //! Number of maxima in cluster vs E of each maxima, 1-6 for different MC particle types
86   TH2F       * fhNLocMaxEFrac[7] ;  //! Number of maxima in cluster vs fraction of cluster E of each maxima, 1-6 for different MC particle types
87   TH2F       * fhNLocMaxM02Cut[7];  //! Number of maxima in cluster vs E, 1-6 for different MC particle types, after SS cut
88
89   TH2F       * fhM02NLocMax1[7] ;   //! M02 vs E for N max in cluster = 1, 1-6 for different MC particle types
90   TH2F       * fhM02NLocMax2[7] ;   //! M02 vs E for N max in cluster = 2, 1-6 for different MC particle types
91   TH2F       * fhM02NLocMaxN[7] ;   //! M02 vs E for N max in cluster > 2, 1-6 for different MC particle types
92
93   TH2F       * fhNCellNLocMax1[7] ; //! n cells in cluster vs E for N max in cluster = 1, 1-6 for different MC particle types
94   TH2F       * fhNCellNLocMax2[7] ; //! n cells in cluster vs E for N max in cluster = 2, 1-6 for different MC particle types
95   TH2F       * fhNCellNLocMaxN[7] ; //! n cells in cluster vs E for N max in cluster > 2, 1-6 for different MC particle types
96   
97   TH2F       * fhM02Pi0LocMax1[7] ; //! M02 for Mass around pi0, N Local Maxima = 1
98   TH2F       * fhM02EtaLocMax1[7] ; //! M02 for Mass around eta, N Local Maxima = 1
99   TH2F       * fhM02ConLocMax1[7] ; //! M02 for Mass around close to 0, N Local Maxima = 1
100
101   TH2F       * fhM02Pi0LocMax2[7] ; //! M02 for Mass around pi0, N Local Maxima = 2
102   TH2F       * fhM02EtaLocMax2[7] ; //! M02 for Mass around eta, N Local Maxima = 2
103   TH2F       * fhM02ConLocMax2[7] ; //! M02 for Mass around close to 0, N Local Maxima = 2
104   
105   TH2F       * fhM02Pi0LocMaxN[7] ; //! M02 for Mass around pi0, N Local Maxima > 2
106   TH2F       * fhM02EtaLocMaxN[7] ; //! M02 for Mass around eta, N Local Maxima > 2
107   TH2F       * fhM02ConLocMaxN[7] ; //! M02 for Mass around close to 0, N Local Maxima > 2
108   
109   AliAnaInsideClusterInvariantMass(              const AliAnaInsideClusterInvariantMass & g) ; // cpy ctor
110   AliAnaInsideClusterInvariantMass & operator = (const AliAnaInsideClusterInvariantMass & g) ; // cpy assignment
111   
112   ClassDef(AliAnaInsideClusterInvariantMass,5)
113   
114 } ;
115
116 #endif //ALIANAINSIDECLUSTERINVARIANTMASS_H
117
118
119