5d26b41e7e2b992d547be3b36698251becaf14fe
[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 class AliAODCaloCluster;
23
24 #include "AliAnaCaloTrackCorrBaseClass.h"
25
26 class AliAnaInsideClusterInvariantMass : public AliAnaCaloTrackCorrBaseClass {
27
28  public: 
29   
30   AliAnaInsideClusterInvariantMass() ; // default ctor
31   virtual ~AliAnaInsideClusterInvariantMass() { ; } //virtual dtor
32   
33   TObjString * GetAnalysisCuts();
34   
35   TList      * GetCreateOutputObjects();
36     
37   void         Init();
38   
39   void         InitParameters();
40      
41   void         MakeAnalysisFillHistograms() ; 
42       
43   void         Print(const Option_t * opt) const;
44
45   void         SetCalorimeter(TString & det)             { fCalorimeter = det ; }
46     
47   void         SetM02Cut(Float_t min=0, Float_t max=10)  { fM02MinCut   = min ; fM02MaxCut  = max ; }
48
49   void         SetMinNCells(Int_t cut)                   { fMinNCells   = cut ; }
50
51   void         SetMinBadChannelDistance(Float_t cut)     { fMinBadDist  = cut ; }
52
53   void         SwitchOnFillAngleHistograms()             { fFillAngleHisto      = kTRUE  ; }
54   void         SwitchOffFillAngleHistograms()            { fFillAngleHisto      = kFALSE ; }
55   
56   void         SwitchOnFillExtraSSHistograms()           { fFillSSExtraHisto    = kTRUE  ; }
57   void         SwitchOffFillExtraSSHistograms()          { fFillSSExtraHisto    = kFALSE ; }
58
59   void         SwitchOnFillTMResidualHistograms()        { fFillTMResidualHisto = kTRUE  ; }
60   void         SwitchOffFillTMResidualHistograms()       { fFillTMResidualHisto = kFALSE ; }
61   
62   void         SwitchOnMCFractionHistograms()            { fFillMCFractionHisto = kTRUE  ; }
63   void         SwitchOffMCFractionHistograms()           { fFillMCFractionHisto = kFALSE ; }
64
65   
66   //For histograms
67   enum mcTypes { kmcPhoton = 1, kmcConversion = 2, kmcPi0    = 3,  
68                  kmcEta    = 4, kmcElectron   = 5, kmcHadron = 6 };
69
70  private:
71   
72   TString      fCalorimeter ;          // Calorimeter where the gamma is searched
73   Float_t      fM02MaxCut   ;          // Study clusters with l0 smaller than cut
74   Float_t      fM02MinCut   ;          // Study clusters with l0 larger than cut
75   Int_t        fMinNCells   ;          // Study clusters with ncells larger than cut
76   Float_t      fMinBadDist  ;          // Minimal distance to bad channel to accept cluster
77   
78   Bool_t       fFillAngleHisto;        // Fill splitted clusters angle histograms
79   Bool_t       fFillTMResidualHisto ;  // Fill track matching histos, residuals
80   Bool_t       fFillSSExtraHisto ;     // Fill shower shape extra histos
81   Bool_t       fFillMCFractionHisto ;  // Fill MC energy fraction histos
82
83   //Histograms
84   
85   TH2F       * fhMassNLocMax1[7][2]  ;                  //! Mass of 2 highest energy cells when 1 local max vs E, 1-6 for different MC particle types 
86   TH2F       * fhMassNLocMax2[7][2]  ;                  //! Mass of 2 cells local maxima vs E,  1-6 for different MC particle types
87   TH2F       * fhMassNLocMaxN[7][2]  ;                  //! Mass of >2 cells local maxima vs E, 1-6 for different MC particle types
88
89   TH2F       * fhAsymNLocMax1[7][2]  ;                  //! Asymmetry of 2 highest energy cells when 1 local max vs E, 1-6 for different MC particle types 
90   TH2F       * fhAsymNLocMax2[7][2]  ;                  //! Asymmetry of 2 cells local maxima vs E,  1-6 for different MC particle types
91   TH2F       * fhAsymNLocMaxN[7][2]  ;                  //! Asymmetry of >2 cells local maxima vs E, 1-6 for different MC particle types
92   
93   TH2F       * fhSplitEFractionvsAsyNLocMax1[2] ;       //! sum of splitted cluster energy / cluster energy for N Local Maxima = 1 vs |A|
94   TH2F       * fhSplitEFractionvsAsyNLocMax2[2] ;       //! sum of splitted cluster energy / cluster energy for N Local Maxima = 2 vs |A|
95   TH2F       * fhSplitEFractionvsAsyNLocMaxN[2] ;       //! sum of splitted cluster energy / cluster energy for N Local Maxima > 2 vs |A|  
96   
97   TH2F       * fhMassM02CutNLocMax1  ;                  //! M02(E) selection, not matched, Mass of split clusters, NLM = 1
98   TH2F       * fhMassM02CutNLocMax2  ;                  //! M02(E) selection, not matched, Mass of split clusters, NLM = 1
99   TH2F       * fhMassM02CutNLocMaxN  ;                  //! M02(E) selection, not matched, Mass of split clusters, NLM > 2
100
101   TH2F       * fhAsymM02CutNLocMax1  ;                  //! M02(E) selection, not matched, energy asymmetry of split clusters, NLM = 1
102   TH2F       * fhAsymM02CutNLocMax2  ;                  //! M02(E) selection, not matched, energy asymmetry of split clusters, NLM = 2
103   TH2F       * fhAsymM02CutNLocMaxN  ;                  //! M02(E) selection, not matched, energy asymmetry of split clusters, NLM > 2
104   
105   TH2F       * fhMassSplitECutNLocMax1 ;                //! 85% of split energy, not matched, Mass of split clusters, NLM = 1
106   TH2F       * fhMassSplitECutNLocMax2 ;                //! 85% of split energy, not matched, Mass of split clusters, NLM = 1
107   TH2F       * fhMassSplitECutNLocMaxN ;                //! 85% of split energy, not matched, Mass of split clusters, NLM > 2    
108     
109   TH2F       * fhMassM02NLocMax1[7][2]  ;               //! Mass of splitted clusters when 1  local max vs M02, for E > 7 GeV, 1-6 for different MC particle types
110   TH2F       * fhMassM02NLocMax2[7][2]  ;               //! Mass of splitted clusters when 2  local max vs M02, for E > 7 GeV, 1-6 for different MC particle types
111   TH2F       * fhMassM02NLocMaxN[7][2]  ;               //! Mass of splitted clusters when >2 local max vs M02, for E > 7 GeV, 1-6 for different MC particle types
112   
113   TH2F       * fhMassM02NLocMax1Ebin[4] ;               //! Mass of splitted clusters when 1  local max vs M02, 4 E bins, neutral clusters
114   TH2F       * fhMassM02NLocMax2Ebin[4] ;               //! Mass of splitted clusters when 2  local max vs M02, 4 E bins, neutral clusters
115   TH2F       * fhMassM02NLocMaxNEbin[4] ;               //! Mass of splitted clusters when >2 local max vs M02, 4 E bins, neutral clusters
116
117   TH2F       * fhMassAsyNLocMax1Ebin[4] ;               //! Mass of Mass of splitted clusters when 1  local max vs asymmetry, 4 E bins, neutral clusters
118   TH2F       * fhMassAsyNLocMax2Ebin[4] ;               //! Mass of Mass of splitted clusters when 2  local max vs asymmetry, 4 E bins, neutral clusters
119   TH2F       * fhMassAsyNLocMaxNEbin[4] ;               //! Mass of Mass of splitted clusters when >2 local max vs asymmetry, 4 E bins, neutral clusters
120
121   TH2F       * fhAsyMCGenRecoNLocMax1EbinPi0[4] ;       //! Generated vs reconstructed asymmetry of splitted clusters from pi0 when 1  local max, 4 E bins, neutral clusters
122   TH2F       * fhAsyMCGenRecoNLocMax2EbinPi0[4] ;       //! Generated vs reconstructed asymmetry of splitted clusters from pi0 when 2  local max, 4 E bins, neutral clusters
123   TH2F       * fhAsyMCGenRecoNLocMaxNEbinPi0[4] ;       //! Generated vs reconstructed asymmetry of splitted clusters from pi0 when >2 local max, 4 E bins, neutral clusters
124   
125   TH2F       * fhMassDispEtaNLocMax1[7][2]  ;           //! Mass of 2 highest energy cells when 1 local max, vs M02, for E > 7 GeV, 1-6 for different MC particle types 
126   TH2F       * fhMassDispEtaNLocMax2[7][2]  ;           //! Mass of 2 cells local maxima, vs M02, for E > 7 GeV,  1-6 for different MC particle types
127   TH2F       * fhMassDispEtaNLocMaxN[7][2]  ;           //! Mass of >2 cells local maxima, vs M02, for E > 7 GeV, 1-6 for different MC particle types  
128   
129   TH2F       * fhMassDispEtaNLocMax1Ebin[4] ;           //! Mass of 2 highest energy cells when 1 local max, vs M02, 4 E bins, neutral clusters 
130   TH2F       * fhMassDispEtaNLocMax2Ebin[4] ;           //! Mass of 2 cells local maxima, vs M02, 4 E bins, neutral clusters
131   TH2F       * fhMassDispEtaNLocMaxNEbin[4] ;           //! Mass of >2 cells local maxima, vs M02, 4 E bins, neutral clusters  
132   
133   TH2F       * fhMassDispPhiNLocMax1[7][2]  ;           //! Mass of 2 highest energy cells when 1 local max, vs M02, for E > 7 GeV, 1-6 for different MC particle types 
134   TH2F       * fhMassDispPhiNLocMax2[7][2]  ;           //! Mass of 2 cells local maxima, vs M02, for E > 7 GeV,  1-6 for different MC particle types
135   TH2F       * fhMassDispPhiNLocMaxN[7][2]  ;           //! Mass of >2 cells local maxima, vs M02, for E > 7 GeV, 1-6 for different MC particle types  
136   
137   TH2F       * fhMassDispPhiNLocMax1Ebin[4] ;           //! Mass of 2 highest energy cells when 1 local max, vs M02, 4 E bins, neutral clusters 
138   TH2F       * fhMassDispPhiNLocMax2Ebin[4] ;           //! Mass of 2 cells local maxima, vs M02, 4 E bins, neutral clusters
139   TH2F       * fhMassDispPhiNLocMaxNEbin[4] ;           //! Mass of >2 cells local maxima, vs M02, 4 E bins, neutral clusters  
140   
141   TH2F       * fhMassDispAsyNLocMax1[7][2]  ;           //! Mass of 2 highest energy cells when 1 local max, vs M02, for E > 7 GeV, 1-6 for different MC particle types 
142   TH2F       * fhMassDispAsyNLocMax2[7][2]  ;           //! Mass of 2 cells local maxima, vs M02, for E > 7 GeV,  1-6 for different MC particle types
143   TH2F       * fhMassDispAsyNLocMaxN[7][2]  ;           //! Mass of >2 cells local maxima, vs M02, for E > 7 GeV, 1-6 for different MC particle types  
144   
145   TH2F       * fhMassDispAsyNLocMax1Ebin[4] ;           //! Mass of 2 highest energy cells when 1 local max, vs M02, 4 E bins, neutral clusters 
146   TH2F       * fhMassDispAsyNLocMax2Ebin[4] ;           //! Mass of 2 cells local maxima, vs M02, 4 E bins, neutral clusters
147   TH2F       * fhMassDispAsyNLocMaxNEbin[4] ;           //! Mass of >2 cells local maxima, vs M02, 4 E bins, neutral clusters  
148   
149   TH2F       * fhNLocMax      [7][2] ;                  //! Number of maxima in cluster vs E, 1-6 for different MC particle types
150   TH2F       * fhNLocMaxM02Cut[7][2] ;                  //! Number of maxima in cluster vs E, 1-6 for different MC particle types, after SS cut
151
152   TH2F       * fhM02NLocMax1  [7][2] ;                  //! M02 vs E for N max in cluster = 1, 1-6 for different MC particle types
153   TH2F       * fhM02NLocMax2  [7][2] ;                  //! M02 vs E for N max in cluster = 2, 1-6 for different MC particle types
154   TH2F       * fhM02NLocMaxN  [7][2] ;                  //! M02 vs E for N max in cluster > 2, 1-6 for different MC particle types
155   
156   TH2F       * fhMCAsymM02NLocMax1MCPi0Ebin[4] ;        //! M02 vs decay asymmetry for N max in cluster = 1, for 4 energy bins
157   TH2F       * fhMCAsymM02NLocMax2MCPi0Ebin[4] ;        //! M02 vs decay asymmetry for N max in cluster = 2, for 4 energy bins
158   TH2F       * fhMCAsymM02NLocMaxNMCPi0Ebin[4] ;        //! M02 vs decay asymmetry for N max in cluster > 2, for 4 energy bins
159   
160   TH2F       * fhMCGenFracNLocMax1[7][2] ;              //! E generated particle / E reconstructed vs E reconstructed for N max in cluster = 1, 1-6 for different MC particle types
161   TH2F       * fhMCGenFracNLocMax2[7][2] ;              //! E generated particle / E reconstructed vs E reconstructed for N max in cluster = 2, 1-6 for different MC particle types
162   TH2F       * fhMCGenFracNLocMaxN[7][2] ;              //! E generated particle / E reconstructed vs E reconstructed for N max in cluster > 2, 1-6 for different MC particle types  
163  
164   TH2F       * fhMCGenFracAfterCutsNLocMax1MCPi0 ;      //! E generated particle / E reconstructed vs E reconstructed for N max in cluster = 1, MCPi0 after M02 and asymmetry cut
165   TH2F       * fhMCGenFracAfterCutsNLocMax2MCPi0 ;      //! E generated particle / E reconstructed vs E reconstructed for N max in cluster = 2, MCPi0, after M02 and asymmetry cut
166   TH2F       * fhMCGenFracAfterCutsNLocMaxNMCPi0 ;      //! E generated particle / E reconstructed vs E reconstructed for N max in cluster > 2, MCPi0, after M02 and asymmetry cut
167
168   TH2F       * fhMCGenSplitEFracNLocMax1[7][2] ;        //! E generated particle / E1+E2 reconstructed vs E reconstructed for N max in cluster = 1, 1-6 for different MC particle types
169   TH2F       * fhMCGenSplitEFracNLocMax2[7][2] ;        //! E generated particle / E1+E2 reconstructed vs E reconstructed for N max in cluster = 2, 1-6 for different MC particle types
170   TH2F       * fhMCGenSplitEFracNLocMaxN[7][2] ;        //! E generated particle / E1+E2 reconstructed vs E reconstructed for N max in cluster > 2, 1-6 for different MC particle types  
171
172   TH2F       * fhMCGenSplitEFracAfterCutsNLocMax1MCPi0; //! E generated particle / E1+E2 reconstructed vs E reconstructed for N max in cluster = 1, 1-6 for different MC particle types
173   TH2F       * fhMCGenSplitEFracAfterCutsNLocMax2MCPi0; //! E generated particle / E1+E2 reconstructed vs E reconstructed for N max in cluster = 2, 1-6 for different MC particle types
174   TH2F       * fhMCGenSplitEFracAfterCutsNLocMaxNMCPi0; //! E generated particle / E1+E2 reconstructed vs E reconstructed for N max in cluster > 2, 1-6 for different MC particle types
175   
176   TH2F       * fhMCGenEFracvsSplitEFracNLocMax1[7][2] ; //! E generated particle / E reconstructed vs E1+E2 reconstructed / E reconstructed for N max in cluster = 1, MC pi0
177   TH2F       * fhMCGenEFracvsSplitEFracNLocMax2[7][2] ; //! E generated particle / E reconstructed vs E1+E2 reconstructed / E reconstructed for N max in cluster = 2, MC pi0
178   TH2F       * fhMCGenEFracvsSplitEFracNLocMaxN[7][2] ; //! E generated particle / E reconstructed vs E1+E2 reconstructed / E reconstructed for N max in cluster > 2, MC pi0
179   
180   TH2F       * fhMCGenEvsSplitENLocMax1[7][2] ;         //! E generated particle vs E1+E2 for N max in cluster = 1, 1-6 for different MC particle types
181   TH2F       * fhMCGenEvsSplitENLocMax2[7][2] ;         //! E generated particle vs E1+E2 for N max in cluster = 2, 1-6 for different MC particle types
182   TH2F       * fhMCGenEvsSplitENLocMaxN[7][2] ;         //! E generated particle vs E1+E2 for N max in cluster > 2, 1-6 for different MC particle types  
183   
184   TH2F       * fhMCGenFracNLocMaxEbin[7][4] ;           //! NLM vs E generated particle / E reconstructed vs E reconstructed 1-6 for different MC particle types, not matched to track
185   TH2F       * fhMCGenFracNLocMaxEbinMatched[7][4] ;    //! NLM vs E generated particle / E reconstructed vs E reconstructed 1-6 for different MC particle types, matched to track
186   
187   TH2F       * fhM02MCGenFracNLocMax1Ebin[7][4] ;       //! M02 vs E generated particle / E reconstructed vs E reconstructed for N max in cluster = 1, 1-6 for different MC particle types, not track matched
188   TH2F       * fhM02MCGenFracNLocMax2Ebin[7][4] ;       //! M02 vs E generated particle / E reconstructed vs E reconstructed for N max in cluster = 2, 1-6 for different MC particle types, not track matched
189   TH2F       * fhM02MCGenFracNLocMaxNEbin[7][4] ;       //! M02 vs E generated particle / E reconstructed vs E reconstructed for N max in cluster > 2, 1-6 for different MC particle types, not track matched  
190   
191   TH2F       * fhMassMCGenFracNLocMax1Ebin[7][4] ;      //! Mass vs E generated particle / E reconstructed vs E reconstructed for N max in cluster = 1, 1-6 for different MC particle types, not track matched
192   TH2F       * fhMassMCGenFracNLocMax2Ebin[7][4] ;      //! Mass vs E generated particle / E reconstructed vs E reconstructed for N max in cluster = 2, 1-6 for different MC particle types, not track matched
193   TH2F       * fhMassMCGenFracNLocMaxNEbin[7][4] ;      //! Mass vs E generated particle / E reconstructed vs E reconstructed for N max in cluster > 2, 1-6 for different MC particle types, not track matched  
194   
195   TH2F       * fhNCellNLocMax1[7][2] ;                  //! n cells in cluster vs E for N max in cluster = 1, 1-6 for different MC particle types
196   TH2F       * fhNCellNLocMax2[7][2] ;                  //! n cells in cluster vs E for N max in cluster = 2, 1-6 for different MC particle types
197   TH2F       * fhNCellNLocMaxN[7][2] ;                  //! n cells in cluster vs E for N max in cluster > 2, 1-6 for different MC particle types
198   
199   TH2F       * fhM02Pi0LocMax1[7][2] ;                  //! M02 for Mass around pi0, N Local Maxima = 1
200   TH2F       * fhM02EtaLocMax1[7][2] ;                  //! M02 for Mass around eta, N Local Maxima = 1
201   TH2F       * fhM02ConLocMax1[7][2] ;                  //! M02 for Mass around close to 0, N Local Maxima = 1
202
203   TH2F       * fhM02Pi0LocMax2[7][2] ;                  //! M02 for Mass around pi0, N Local Maxima = 2
204   TH2F       * fhM02EtaLocMax2[7][2] ;                  //! M02 for Mass around eta, N Local Maxima = 2
205   TH2F       * fhM02ConLocMax2[7][2] ;                  //! M02 for Mass around close to 0, N Local Maxima = 2
206   
207   TH2F       * fhM02Pi0LocMaxN[7][2] ;                  //! M02 for Mass around pi0, N Local Maxima > 2
208   TH2F       * fhM02EtaLocMaxN[7][2] ;                  //! M02 for Mass around eta, N Local Maxima > 2
209   TH2F       * fhM02ConLocMaxN[7][2] ;                  //! M02 for Mass around close to 0, N Local Maxima > 2
210
211   TH2F       * fhMassPi0LocMax1[7][2] ;                 //! Mass for selected pi0, N Local Maxima = 1
212   TH2F       * fhMassEtaLocMax1[7][2] ;                 //! Mass for selected around eta, N Local Maxima = 1
213   TH2F       * fhMassConLocMax1[7][2] ;                 //! Mass for selected around close to 0, N Local Maxima = 1
214   
215   TH2F       * fhMassPi0LocMax2[7][2] ;                 //! Mass for selected around pi0, N Local Maxima = 2
216   TH2F       * fhMassEtaLocMax2[7][2] ;                 //! Mass for selected around eta, N Local Maxima = 2
217   TH2F       * fhMassConLocMax2[7][2] ;                 //! Mass for selected around close to 0, N Local Maxima = 2
218   
219   TH2F       * fhMassPi0LocMaxN[7][2] ;                 //! Mass for selected around pi0, N Local Maxima > 2
220   TH2F       * fhMassEtaLocMaxN[7][2] ;                 //! Mass for selected around eta, N Local Maxima > 2
221   TH2F       * fhMassConLocMaxN[7][2] ;                 //! Mass for selected around close to 0, N Local Maxima > 2
222   
223   TH2F       * fhMassAfterCutsNLocMax1[7] ;              //! Mass after M02, asymmetry cuts for pi0, N Local Maxima = 1, not matched
224   TH2F       * fhMassAfterCutsNLocMax2[7] ;              //! Mass after M02, asymmetry cuts for pi0, N Local Maxima = 2, not matched
225   TH2F       * fhMassAfterCutsNLocMaxN[7] ;              //! Mass after M02, asymmetry cuts for pi0, N Local Maxima > 2, not matched
226   
227   TH2F       * fhAsyPi0LocMax1[7][2] ;                  //! Asy for Mass around pi0, N Local Maxima = 1
228   TH2F       * fhAsyEtaLocMax1[7][2] ;                  //! Asy for Mass around eta, N Local Maxima = 1
229   TH2F       * fhAsyConLocMax1[7][2] ;                  //! Asy for Mass around close to 0, N Local Maxima = 1
230   
231   TH2F       * fhAsyPi0LocMax2[7][2] ;                  //! Asy for Mass around pi0, N Local Maxima = 2
232   TH2F       * fhAsyEtaLocMax2[7][2] ;                  //! Asy for Mass around eta, N Local Maxima = 2
233   TH2F       * fhAsyConLocMax2[7][2] ;                  //! Asy for Mass around close to 0, N Local Maxima = 2
234   
235   TH2F       * fhAsyPi0LocMaxN[7][2] ;                  //! Asy for Mass around pi0, N Local Maxima > 2
236   TH2F       * fhAsyEtaLocMaxN[7][2] ;                  //! Asy for Mass around eta, N Local Maxima > 2
237   TH2F       * fhAsyConLocMaxN[7][2] ;                  //! Asy for Mass around close to 0, N Local Maxima > 2  
238   
239   TH2F       * fhSplitEFractionNLocMax1[7][2] ;         //! sum of splitted cluster energy / cluster energy for N Local Maxima = 1
240   TH2F       * fhSplitEFractionNLocMax2[7][2] ;         //! sum of splitted cluster energy / cluster energy for N Local Maxima = 2
241   TH2F       * fhSplitEFractionNLocMaxN[7][2] ;         //! sum of splitted cluster energy / cluster energy for N Local Maxima > 2
242
243   TH2F       * fhSplitEFractionAfterCutsNLocMax1 ;      //! sum of splitted cluster energy / cluster energy for N Local Maxima = 1, after M02 and asymmetry cut
244   TH2F       * fhSplitEFractionAfterCutsNLocMax2 ;      //! sum of splitted cluster energy / cluster energy for N Local Maxima = 2, after M02 and asymmetry cut
245   TH2F       * fhSplitEFractionAfterCutsNLocMaxN ;      //! sum of splitted cluster energy / cluster energy for N Local Maxima > 2, after M02 and asymmetry cut
246   
247   TH2F       * fhMassSplitEFractionNLocMax1Ebin[7][4] ; //! Mass vs sum of splitted cluster energy / cluster energy for N max in cluster = 1, 1-6 for different MC particle types, not track matched
248   TH2F       * fhMassSplitEFractionNLocMax2Ebin[7][4] ; //! Mass vs sum of splitted cluster energy / cluster energy for N max in cluster = 2, 1-6 for different MC particle types, not track matched
249   TH2F       * fhMassSplitEFractionNLocMaxNEbin[7][4] ; //! Mass vs sum of splitted cluster energy / cluster energy for N max in cluster > 2, 1-6 for different MC particle types, not track matched  
250     
251   TH2F       * fhAnglePairLocMax1[2] ;                  //! pair opening angle vs E
252   TH2F       * fhAnglePairLocMax2[2] ;                  //! pair opening angle vs E
253   TH2F       * fhAnglePairLocMaxN[2] ;                  //! pair opening angle vs E
254   
255   TH2F       * fhAnglePairMassLocMax1[2] ;              //! pair opening angle vs Mass for E > 7 GeV
256   TH2F       * fhAnglePairMassLocMax2[2] ;              //! pair opening angle vs Mass for E > 7 GeV
257   TH2F       * fhAnglePairMassLocMaxN[2] ;              //! pair opening angle vs Mass for E > 7 GeV
258   
259   TH2F       * fhTrackMatchedDEtaLocMax1[7] ;           //! Eta distance between track and cluster vs cluster E, 1 local maximum
260   TH2F       * fhTrackMatchedDPhiLocMax1[7] ;           //! Phi distance between track and cluster vs cluster E, 1 local maximum
261   TH2F       * fhTrackMatchedDEtaLocMax2[7] ;           //! Eta distance between track and cluster vs cluster E, 2 local maximum
262   TH2F       * fhTrackMatchedDPhiLocMax2[7] ;           //! Phi distance between track and cluster vs cluster E, 2 local maximum
263   TH2F       * fhTrackMatchedDEtaLocMaxN[7] ;           //! Eta distance between track and cluster vs cluster E, more than 2 local maximum
264   TH2F       * fhTrackMatchedDPhiLocMaxN[7] ;           //! Phi distance between track and cluster vs cluster E, more than 2 local maximum
265   
266   AliAnaInsideClusterInvariantMass(              const AliAnaInsideClusterInvariantMass & split) ; // cpy ctor
267   AliAnaInsideClusterInvariantMass & operator = (const AliAnaInsideClusterInvariantMass & split) ; // cpy assignment
268   
269   ClassDef(AliAnaInsideClusterInvariantMass,18)
270   
271 } ;
272
273 #endif //ALIANAINSIDECLUSTERINVARIANTMASS_H
274
275
276