AliPhysics  b11e70a (b11e70a)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnaPhoton.h
Go to the documentation of this file.
1 #ifndef ALIANAPHOTON_H
2 #define ALIANAPHOTON_H
3 
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice */
6 
7 //_________________________________________________________________________
22 
23 // --- ROOT system ---
24 class TH2F ;
25 class TH1F;
26 class TObjString;
27 class TList ;
28 
29 // --- ANALYSIS system ---
31 
33 
34  public:
35 
36  AliAnaPhoton() ;
37 
39  virtual ~AliAnaPhoton() { ; }
40 
41  //---------------------------------------
42  // General analysis frame methods
43  //---------------------------------------
44 
45  TObjString * GetAnalysisCuts();
46 
47  TList * GetCreateOutputObjects();
48 
49  void Init();
50 
51  void InitParameters();
52 
53  void MakeAnalysisFillAOD() ;
54 
56 
57  void Print(const Option_t * opt)const;
58 
59 
60  // Analysis methods
61 
62  Bool_t ClusterSelected(AliVCluster* cl, Int_t nlm) ;
63 
65 
66  void FillShowerShapeHistograms( AliVCluster* cluster, Int_t mcTag,
67  Float_t maxCellEFraction, Int_t & largeTimeInside) ;
68 
71 
74 
77 
78  void FillTrackMatchingResidualHistograms(AliVCluster* calo, Int_t cut);
79 
80  void SwitchOnTMHistoFill() { fFillTMHisto = kTRUE ; }
81  void SwitchOffTMHistoFill() { fFillTMHisto = kFALSE ; }
82 
83  void FillPileUpHistograms(AliVCluster* cluster, AliVCaloCells *cells, Int_t absIdMax) ;
84 
85  void SetConstantTimeShift(Float_t shift) { fConstantTimeShift = shift ; }
86 
87  // Analysis parameters setters getters
88 
89  // ** Cluster selection methods **
90 
91  void SetMinDistanceToBadChannel(Float_t m1, Float_t m2, Float_t m3) {
92  fMinDist = m1; fMinDist2 = m2; fMinDist3 = m3; }
93 
94  void SetTimeCut(Double_t min, Double_t max) { fTimeCutMin = min;
95  fTimeCutMax = max ; }
96  Double_t GetTimeCutMin() const { return fTimeCutMin ; }
97  Double_t GetTimeCutMax() const { return fTimeCutMax ; }
98 
99  void SetNCellCut(Int_t n) { fNCellsCut = n ; }
100  Double_t GetNCellCut() const { return fNCellsCut ; }
101 
102  void SetNLMCut(Int_t min, Int_t max) { fNLMCutMin = min;
103  fNLMCutMax = max ; }
104  Int_t GetNLMCutMin() const { return fNLMCutMin ; }
105  Int_t GetNLMCutMax() const { return fNLMCutMax ; }
106 
107  Bool_t IsTrackMatchRejectionOn() const { return fRejectTrackMatch ; }
110 
115 
118  kmcPi0 = 4, kmcEta = 5, kmcElectron = 6,
121  kmcISR = 13, kmcString = 14 };
122 
124  static const Int_t fgkNmcTypes = 15;
125 
129 
131  static const Int_t fgkNmcPrimTypes = 7;
132 
134  enum mcssTypes { kmcssPhoton = 0, kmcssOther = 1, kmcssPi0 = 2,
136 
138  static const Int_t fgkNssTypes = 6 ;
139 
140  private:
141 
142  Float_t fMinDist ;
143  Float_t fMinDist2;
144  Float_t fMinDist3;
145 
147 
148  Bool_t fFillTMHisto;
149 
150  Double_t fTimeCutMin ;
151  Double_t fTimeCutMax ;
152 
153  Int_t fNCellsCut ;
154 
155  Int_t fNLMCutMin ;
156  Int_t fNLMCutMax ;
157 
159 
161 
163 
166 
167  TLorentzVector fMomentum;
168  TLorentzVector fPrimaryMom;
169  TVector3 fProdVertex;
170 
172 
173  //
174  // Histograms
175  //
176 
177  TH1F * fhClusterCutsE [10];
178  TH1F * fhClusterCutsPt[10];
179  TH2F * fhNCellsE;
180  TH2F * fhCellsE;
182  TH2F * fhTimePt;
183  TH2F * fhEtaPhi ;
184 
185  TH1F * fhEPhoton ;
186  TH1F * fhPtPhoton ;
187  TH2F * fhPhiPhoton ;
188  TH2F * fhEtaPhoton ;
189  TH2F * fhEtaPhiPhoton ;
191 
194 
195  // Shower shape
196  TH2F * fhNLocMax;
197 
198  TH2F * fhDispE;
199  TH2F * fhLam0E;
200  TH2F * fhLam0Pt;
201  TH2F * fhLam1E;
202 
203  TH2F * fhDispETRD;
204  TH2F * fhLam0ETRD;
205  TH2F * fhLam0PtTRD;
206  TH2F * fhLam1ETRD;
207 
208  TH2F * fhDispETM;
209  TH2F * fhLam0ETM;
210  TH2F * fhLam0PtTM;
211  TH2F * fhLam1ETM;
212 
213  TH2F * fhDispETMTRD;
214  TH2F * fhLam0ETMTRD;
215  TH2F * fhLam0PtTMTRD;
216  TH2F * fhLam1ETMTRD;
217 
224 
225  TH2F * fhEtaLam0LowE;
226  TH2F * fhPhiLam0LowE;
227  TH2F * fhEtaLam0HighE;
228  TH2F * fhPhiLam0HighE;
229  TH2F * fhLam0DispLowE;
231  TH2F * fhLam1Lam0LowE;
233  TH2F * fhDispLam1LowE;
235 
236  TH2F * fhDispEtaE ;
237  TH2F * fhDispPhiE ;
238  TH2F * fhSumEtaE ;
239  TH2F * fhSumPhiE ;
240  TH2F * fhSumEtaPhiE ;
242  TH2F * fhSphericityE ;
245  TH2F * fhDispEtaDispPhi[7] ;
246  TH2F * fhLambda0DispEta[7] ;
247  TH2F * fhLambda0DispPhi[7] ;
248 
249  // Fill MC dependent histograms, Origin of this cluster is ...
250 
253  TH2F * fhMC2E [fgkNmcTypes];
254  TH2F * fhMC2Pt [fgkNmcTypes];
255 
256  TH1F * fhMCE [fgkNmcTypes];
257  TH1F * fhMCPt [fgkNmcTypes];
260 
266 
272 
273  // Shower Shape MC
274 
279 
283 
292 
301 
302  //Embedding
304 
309 
314 
315  // Track Matching
316 
317  TH2F * fhTrackMatchedDEta[2] ;
318  TH2F * fhTrackMatchedDPhi[2] ;
320 
324 
328 
331 
338 
340  TH2F * fhdEdx[2];
341  TH2F * fhEOverP[2];
342  TH2F * fhEOverPTRD[2];
343 
344  // Pile-up
345 
346  TH1F * fhPtPhotonPileUp[7];
352 
359 
360  TH2F * fhEClusterSM ;
361  TH2F * fhEPhotonSM ;
362  TH2F * fhPtClusterSM;
363  TH2F * fhPtPhotonSM ;
364 
371 
372 //TH2F * fhLam0EMCALRegion [4][3]; //!<! Cluster lambda0 vs E, in different EMCal regions
373 //TH2F * fhLam0EMCALRegionTRD[4][3]; //!<! Cluster lambda0 vs E, in different EMCal regions, SM covered by TRD
374 //TH2F * fhLam0EMCALRegionMCConvRcut [4][3][6]; //!<! Cluster lambda0 vs E, in different EMCal regions, MC photon conversions, depending on conversion vertex
375 //TH2F * fhLam0EMCALRegionTRDMCConvRcut[4][3][6]; //!<! Cluster lambda0 vs E, in different EMCal regions, SM covered by TRD, MC photon conversions, depending on conversion vertex
376 
377  TH2F * fhLam0EMCALRegionPerSM[4][3][20];
378  TH2F * fhLam1EMCALRegionPerSM[4][3][20];
379 
380  //
381  // Clusters within a shower shape bin, 2 bins [0.23,0.26] (photon) and [0.3,0.4] (tail), if cell weight > 0
382  //
383  TH2F * fhLam1Lam0BinPerSM [2][20];
384  TH2F * fhTimeLam0BinPerSM [2][20];
385  TH2F * fhTimeLam0BinPerSMWeighted [2][20];
386  TH2F * fhDTimeLam0BinPerSM [2][20];
389 //TH2F * fhCellClusterEFracLam0BinPerSMWeighted[2][20]; //!<! Cell E / Cluster E vs cluster pT, not maximum cluster cell, in a l0 bin per SM, log weight
390  TH2F * fhCellClusterELam0BinPerSM [2][20];
392 
393  // plus different Pt bins 2-3,3-4,4-5,5-6,6-8,8-10,10-12
394  TH2F * fhEtaPhiLam0BinPtBin [2][7] ;
395  TH2F * fhColRowLam0BinPtBin [2][7] ;
397  TH2F * fhCellClusterIndexEAndTime [2][7] ;
398  TH2F * fhCellClusterEAndTime [2][7] ;
399  TH2F * fhCellClusterEFracAndTime [2][7] ;
400 
401 // // Shared clusters
402 // TH2F * fhLam0PerSMShared [12] ; //!<! Cluster lambda0 vs Pt, for shared clusters, EMCal
403 // TH2F * fhLam1PerSMShared [12] ; //!<! Cluster lambda1 vs Pt, for shared clusters, EMCal
404 // TH2F * fhTimeLam0BinPerSMShared [2][12] ; //!<! Cell time, not maximum cluster cell, in a l0 bin per SM, shared SM
405 //
406 // TH2F * fhEtaPhiLam0BinPtBinSMShared [2][7] ; //!<! Cluster eta/phi in a l0 bin, different Pt bins, SM shared clusters
407 // TH2F * fhColRowLam0BinPtBinSMShared [2][7] ; //!<! Cell hits, not maximum cluster cell, in a l0 bin, different Pt bins
408 
409  // Cells with large time
417 
418  TH2F * fhLam0PerSM [20] ;
419  TH2F * fhLam1PerSM [20] ;
424 //TH2F * fhLam0PerSMSPDPileUp [20] ; //!<! Cluster lambda0 vs Pt, when event tagged as pile-up by SPD, in different SM
425 //TH2F * fhLam1PerSMSPDPileUp [20] ; //!<! Cluster lambda0 vs Pt, when event tagged as pile-up by SPD, in different SM
426 
428  AliAnaPhoton( const AliAnaPhoton & g) ;
429 
431  AliAnaPhoton & operator = (const AliAnaPhoton & g) ;
432 
434  ClassDef(AliAnaPhoton,43) ;
436 
437 } ;
438 
439 #endif//ALIANAPHOTON_H
440 
441 
442 
Bool_t fFillOnlySimpleSSHisto
Fill selected cluster histograms, selected SS histograms.
Definition: AliAnaPhoton.h:162
TH2F * fhLam1ETMTRD
! Cluster lambda1 vs E, SM covered by TRD, cut on Track Matching residual
Definition: AliAnaPhoton.h:216
TH1F * fhClusterCutsE[10]
! control histogram on the different photon selection cuts, E
Definition: AliAnaPhoton.h:177
TH2F * fhPhiLam0LowE
! Cluster phi vs lambda0, E<2
Definition: AliAnaPhoton.h:226
TH2F * fhNCellsLam1HighE
! number of cells in cluster vs lambda1, E>2
Definition: AliAnaPhoton.h:222
TH2F * fhLam1Lam0HighE
! Cluster lambda1 vs lambda0, E>2
Definition: AliAnaPhoton.h:232
TH2F * fhTrackMatchedDEtaTRD[2]
! Eta distance between track and cluster vs cluster E, after and before photon cuts, behind TRD
Definition: AliAnaPhoton.h:329
Double_t GetTimeCutMax() const
Definition: AliAnaPhoton.h:97
TH1F * fhMCPt[fgkNmcTypes]
! Number of identified photon vs cluster pT coming from MC particle
Definition: AliAnaPhoton.h:257
TH2F * fhTrackMatchedDEtaDPhiNeg[2]
! Eta vs Phi distance between track and cluster, E cluster > 0.5 GeV, after and before photon cuts ...
Definition: AliAnaPhoton.h:327
Int_t fNCellsCut
Accept for the analysis clusters with more than fNCellsCut cells.
Definition: AliAnaPhoton.h:153
TH2F * fhEmbedPi0ELambda0FullBkg
! Lambda0 vs E for embedded photons with less than 10% of the cluster energy
Definition: AliAnaPhoton.h:313
TH2F * fhDispE
! Cluster dispersion vs E
Definition: AliAnaPhoton.h:198
TH2F * fhMCEta[fgkNmcTypes]
! eta of identified photon coming from MC particle
Definition: AliAnaPhoton.h:259
Int_t fNLMCutMax
Remove clusters/cells with number of local maxima larger than this value.
Definition: AliAnaPhoton.h:156
TH2F * fhMCNCellsE[fgkNssTypes]
! NCells per cluster vs energy
Definition: AliAnaPhoton.h:290
TH2F * fhDTimeLam0BinPerSMWeighted[2][20]
! t_max-t_cell, not maximum cluster cell, in a l0 bin per SM, log weight Cell E / Cluster E ...
Definition: AliAnaPhoton.h:387
TH2F * fhDispEtaDispPhi[7]
! shower dispersion in eta direction vs phi direction for 5 E bins [0-2],[2-4],[4-6],[6-10],[> 10]
Definition: AliAnaPhoton.h:245
TH2F * fhCellClusterEFracAndTime[2][7]
! Cell in Cluster E cell/ E cluster vs cell Time, in a l0 bin, different Pt bins
Definition: AliAnaPhoton.h:399
Int_t fNLMCutMin
Remove clusters/cells with number of local maxima smaller than this value.
Definition: AliAnaPhoton.h:155
TH2F * fhLam1ETRD
! Cluster lambda1 vs E, SM covered by TRD
Definition: AliAnaPhoton.h:206
TH2F * fhEClusterSM
! Cluster E distribution per SM, before any selection, after reader
Definition: AliAnaPhoton.h:360
TH2F * fhMaxCellDiffClusterE
! Fraction of energy carried by cell with maximum energy
Definition: AliAnaPhoton.h:181
TH2F * fhPtClusterSM
! Cluster E distribution per SM, before any selection, after reader
Definition: AliAnaPhoton.h:362
TH2F * fhDispETRD
! Cluster dispersion vs E, SM covered by TRD
Definition: AliAnaPhoton.h:203
mcTypes
For MC histograms in arrays, index in the array corresponds to a MC originating particle type...
Definition: AliAnaPhoton.h:117
TH2F * fhLam1PerNLargeTimeInClusterCell[5]
! Cluster lambda1 vs Pt, when any secondary cell has t > 50 ns, per number of large time secondary ce...
Definition: AliAnaPhoton.h:423
TH2F * fhTrackMatchedDEtaDPhiPos[2]
! Eta vs Phi distance between track and cluster, E cluster > 0.5 GeV, after and before ...
Definition: AliAnaPhoton.h:323
TH2F * fhLam0PerNLargeTimeInClusterCell[5]
! Cluster lambda0 vs Pt, when any secondary cell has t > 50 ns, per number of large time secondary ce...
Definition: AliAnaPhoton.h:422
TH2F * fhMCPtLambda0[fgkNssTypes]
! pT vs Lambda0 from MC particle
Definition: AliAnaPhoton.h:276
TH2F * fhNCellsLam1LowE
! number of cells in cluster vs lambda1
Definition: AliAnaPhoton.h:219
Bool_t fFillTMHisto
Fill track matching plots.
Definition: AliAnaPhoton.h:148
TH2F * fhPtPhotonNPileUpSPDVtx
! photon pt vs number of spd pile-up vertices
Definition: AliAnaPhoton.h:353
void SwitchOnTrackMatchRejection()
Definition: AliAnaPhoton.h:108
TH2F * fhPtPhotonNPileUpTrkVtx
! photon pt vs number of track pile-up vertices
Definition: AliAnaPhoton.h:354
void SwitchOnTMHistoFill()
Definition: AliAnaPhoton.h:80
TH2F * fhNCellsDispLowE
! number of cells in cluster vs dispersion
Definition: AliAnaPhoton.h:220
TH2F * fhTrackMatchedDEtaPos[2]
! Eta distance between track and cluster vs cluster E, after and before photon cuts ...
Definition: AliAnaPhoton.h:321
TH2F * fhSphericityE
! shower sphericity in eta vs phi
Definition: AliAnaPhoton.h:242
TH2F * fhDispEtaE
! shower dispersion in eta direction
Definition: AliAnaPhoton.h:236
TH2F * fhPtPhotonNPileUpTrkVtxTimeCut
! photon pt vs number of track pile-up vertices, time cut +- 25 ns
Definition: AliAnaPhoton.h:356
TH2F * fhEtaPrimMC[fgkNmcPrimTypes]
! Eta of generated photon
Definition: AliAnaPhoton.h:265
Int_t GetNLMCutMin() const
Definition: AliAnaPhoton.h:104
TH2F * fhPtPhotonSM
! photon-like cluster E distribution per SM
Definition: AliAnaPhoton.h:363
virtual ~AliAnaPhoton()
Virtual destructor, not implemented.
Definition: AliAnaPhoton.h:39
Bool_t fFillEMCALRegionSSHistograms
Fill shower shape histograms in EMCal slices.
Definition: AliAnaPhoton.h:160
TH2F * fhTrackMatchedDPhiTRD[2]
! Phi distance between track and cluster vs cluster E, after and before photon cuts, behind TRD
Definition: AliAnaPhoton.h:330
Float_t fMinDist2
Cuts on Minimal distance to study acceptance evaluation.
Definition: AliAnaPhoton.h:143
TH1F * fhPtPhotonPileUp[7]
! pT distribution of selected photons
Definition: AliAnaPhoton.h:346
TH1F * fhPtPhoton
! Number of identified photon vs transerse momentum
Definition: AliAnaPhoton.h:186
void FillNPrimaryHistograms(Int_t n)
Definition: AliAnaPhoton.h:113
Bool_t fRejectTrackMatch
If PID on, reject clusters which have an associated TPC track.
Definition: AliAnaPhoton.h:146
void MakeAnalysisFillAOD()
TH2F * fhTrackMatchedDPhiMCNoOverlap[2]
! Phi distance between track and cluster vs cluster E, not other particle overlap, after and before photon cuts
Definition: AliAnaPhoton.h:335
TH2F * fhPtEventPlanePhoton
! event plane vs photon pT
Definition: AliAnaPhoton.h:193
TH2F * fhLam0PtTRD
! Cluster lambda0 vs pT, SM covered by TRD
Definition: AliAnaPhoton.h:205
TH2F * fhMCConversionVertex
! Conversion distance for photon clusters that have at least a contributor from the conversion...
Definition: AliAnaPhoton.h:365
TH2F * fhEmbedPi0ELambda0FullSignal
! Lambda0 vs E for embedded photons with more than 90% of the cluster energy
Definition: AliAnaPhoton.h:310
TH2F * fhEmbedPi0ELambda0MostlyBkg
! Lambda0 vs E for embedded photons with 50%<fraction<10%
Definition: AliAnaPhoton.h:312
TH2F * fhMCESphericity[fgkNssTypes]
! shower sphericity, eta vs phi
Definition: AliAnaPhoton.h:297
TH2F * fhEtaPhiLargeTimeInClusterCell[2][7]
! Cluster eta/phi, with at least one significant cell with large time
Definition: AliAnaPhoton.h:410
TH2F * fhMC2Pt[fgkNmcTypes]
! pT distribution, Reco vs MC coming from MC particle
Definition: AliAnaPhoton.h:254
TH2F * fhEtaPhiPhoton
! Pseudorapidity vs Phi of identified photon for E > 0.5
Definition: AliAnaPhoton.h:189
void SetMinDistanceToBadChannel(Float_t m1, Float_t m2, Float_t m3)
Definition: AliAnaPhoton.h:91
TH2F * fhPhiPhoton
! Azimuthal angle of identified photon vs transerse momentum
Definition: AliAnaPhoton.h:187
TH2F * fhYPrimMC[fgkNmcPrimTypes]
! Rapidity of generated photon
Definition: AliAnaPhoton.h:264
TH2F * fhTrackMatchedDEtaDPhi[2]
! Eta vs Phi distance between track and cluster, E cluster > 0.5 GeV, after and before ...
Definition: AliAnaPhoton.h:319
void FillAcceptanceHistograms()
void SwitchOffTMHistoFill()
Definition: AliAnaPhoton.h:81
TH2F * fhSumEtaE
! shower dispersion in eta direction
Definition: AliAnaPhoton.h:238
TH2F * fhMCEDispEtaPhiDiff[fgkNssTypes]
! shower dispersion in eta -phi direction
Definition: AliAnaPhoton.h:296
void SwitchOffFillShowerShapeHistograms()
Definition: AliAnaPhoton.h:70
TH2F * fhColRowLam0BinPtBin[2][7]
! Cell hits, not maximum cluster cell, in a l0 bin, different Pt bins
Definition: AliAnaPhoton.h:395
void Print(const Option_t *opt) const
Print some relevant parameters set for the analysis.
TH2F * fhCellClusterELam0BinPerSM[2][20]
! Cell E vs cluster pT, not maximum cluster cell, in a l0 bin per SM
Definition: AliAnaPhoton.h:390
TH2F * fhEtaLam0LowE
! Cluster eta vs lambda0, E<2
Definition: AliAnaPhoton.h:225
TH2F * fhPtPhotonNPileUpSPDVtxTimeCut
! photon pt vs number of spd pile-up vertices, time cut +-25 ns
Definition: AliAnaPhoton.h:355
TH2F * fhMCConversionVertexTRD
! Conversion distance for photon clusters that have at least a contributor from the conversion...
Definition: AliAnaPhoton.h:366
Bool_t fFillSSHistograms
Fill shower shape histograms.
Definition: AliAnaPhoton.h:158
TH2F * fhdEdx[2]
! Matched track dEdx vs cluster E, after and before photon cuts
Definition: AliAnaPhoton.h:340
TH2F * fhLam0ETRD
! Cluster lambda0 vs E, SM covered by TRD
Definition: AliAnaPhoton.h:204
void SetNCellCut(Int_t n)
Definition: AliAnaPhoton.h:99
TH2F * fhDispETM
! Cluster dispersion vs E, cut on Track Matching residual
Definition: AliAnaPhoton.h:208
TH2F * fhEmbedPhotonELambda0FullSignal
! Lambda0 vs E for embedded photons with more than 90% of the cluster energy
Definition: AliAnaPhoton.h:305
TH2F * fhEtaPhoton
! Pseudorapidity of identified photon vs transerse momentum
Definition: AliAnaPhoton.h:188
TH2F * fhDispSumEtaDiffE
! difference of 2 eta dispersions
Definition: AliAnaPhoton.h:243
TH2F * fhTimePtPhotonSPD
! Time of photon cluster vs Pt, IsSPDPileUp
Definition: AliAnaPhoton.h:349
TH2F * fhMCDispEtaDispPhi[7][fgkNssTypes]
! shower dispersion in eta direction vs phi direction for 5 E bins [0-2],[2-4],[4-6],[6-10],[> 10]
Definition: AliAnaPhoton.h:298
TH2F * fhLam0EMCALRegionPerSM[4][3][20]
! Cluster lambda0 vs Pt, in different EMCal regions
Definition: AliAnaPhoton.h:377
void InitParameters()
Initialize the parameters of the analysis.
TH1F * fhPtPrimMC[fgkNmcPrimTypes]
! Number of generated photon vs pT
Definition: AliAnaPhoton.h:262
TH2F * fhNCellsE
! number of cells in cluster vs E
Definition: AliAnaPhoton.h:179
void SwitchOffOnlySimpleHistoFill()
Definition: AliAnaPhoton.h:76
TH2F * fhTimePt
! Time of photon cluster vs pt
Definition: AliAnaPhoton.h:182
TH2F * fhEtaPhi
! Pseudorapidity vs Phi of clusters for E > 0.5
Definition: AliAnaPhoton.h:183
TH2F * fhMCLambda0DispPhi[7][fgkNssTypes]
! shower shape correlation l0 vs disp phi
Definition: AliAnaPhoton.h:300
TH2F * fhLam0PerSMLargeTimeInClusterCell[20]
! Cluster lambda0 vs Pt, when any secondary cell has t > 50 ns, in different SM
Definition: AliAnaPhoton.h:420
TH2F * fhCellClusterEAndTime[2][7]
! Cell in Cluster E cell vs cell Time, in a l0 bin, different Pt bins
Definition: AliAnaPhoton.h:398
TH2F * fhNCellsWithLargeTimeInCluster[2][20]
! Number of cells in cluster with large time
Definition: AliAnaPhoton.h:416
TH2F * fhEPhotonSM
! photon-like cluster E distribution per SM
Definition: AliAnaPhoton.h:361
TH2F * fhEOverPTRD[2]
! Matched track E cluster over P track vs cluster E, after dEdx cut, after and before photon cuts...
Definition: AliAnaPhoton.h:342
TH2F * fhMCELambda0[fgkNssTypes]
! E vs Lambda0 from MC particle
Definition: AliAnaPhoton.h:275
TH2F * fhTrackMatchedDPhiNeg[2]
! Phi distance between track and cluster vs cluster E, after and before photon cuts ...
Definition: AliAnaPhoton.h:326
void MakeAnalysisFillHistograms()
TH2F * fhMCELambda1[fgkNssTypes]
! E vs Lambda1 from MC particle
Definition: AliAnaPhoton.h:277
TH2F * fhLambda0DispPhi[7]
! shower shape correlation l0 vs disp phi
Definition: AliAnaPhoton.h:247
TH2F * fhLambda0DispEta[7]
! shower shape correlation l0 vs disp eta
Definition: AliAnaPhoton.h:246
Base class for CaloTrackCorr analysis algorithms.
void SwitchOffTrackMatchRejection()
Definition: AliAnaPhoton.h:109
TH2F * fhCellClusterEFracLam0BinPerSMLargeTime[2][20]
! Cell in Cluster E cell / Ecluster vs cluster pT, with large time
Definition: AliAnaPhoton.h:412
Int_t fNOriginHistograms
Fill only NOriginHistograms of the 14 defined types.
Definition: AliAnaPhoton.h:164
static const Int_t fgkNmcPrimTypes
Total number of MC primary histograms.
Definition: AliAnaPhoton.h:131
TH2F * fhCellClusterEFracLam0BinPerSMLargeTimeTotal[2][20]
! Sum of all Cell in Cluster , with large time E cell / Ecluster vs cluster pT
Definition: AliAnaPhoton.h:413
Double_t GetTimeCutMin() const
Definition: AliAnaPhoton.h:96
TH2F * fhTimePtPhotonNoCut
! Time of photon cluster vs Pt, no cut
Definition: AliAnaPhoton.h:348
TH2F * fhPtPhotonNPileUpSPDVtxTimeCut2
! photon pt vs number of spd pile-up vertices, time cut +-75 ns
Definition: AliAnaPhoton.h:357
TH2F * fhEOverP[2]
! Matched track E cluster over P track vs cluster E, after dEdx cut, after and before photon cuts ...
Definition: AliAnaPhoton.h:341
TH2F * fhTrackMatchedDEta[2]
! Eta distance between track and cluster vs cluster E, after and before photon cuts ...
Definition: AliAnaPhoton.h:317
TH1F * fhEPrimMC[fgkNmcPrimTypes]
! Number of generated photon vs energy
Definition: AliAnaPhoton.h:261
TH2F * fhCellsE
! energy of cells in cluster vs E of cluster
Definition: AliAnaPhoton.h:180
TH2F * fhDispETMTRD
! Cluster dispersion vs E, SM covered by TRD, cut on Track Matching residual
Definition: AliAnaPhoton.h:213
TH2F * fhPhiPrimMC[fgkNmcPrimTypes]
! Phi of generted photon
Definition: AliAnaPhoton.h:263
void SwitchOnFillEMCALRegionSSHistograms()
Definition: AliAnaPhoton.h:72
TH2F * fhLam1ETM
! Cluster lambda1 vs E, cut on Track Matching residual
Definition: AliAnaPhoton.h:211
mcPTypes
For MC histograms in arrays, index in the array corresponds to a MC generated primary particle type...
Definition: AliAnaPhoton.h:127
Filter EMCal/PHOS clusters for photon analysis.
Definition: AliAnaPhoton.h:32
TH2F * fhLam1PerSM[20]
! Cluster lambda0 vs Pt, in different SM
Definition: AliAnaPhoton.h:419
TH2F * fhEtaPhi05Photon
! Pseudorapidity vs Phi of identified photon for E < 0.5
Definition: AliAnaPhoton.h:190
TH2F * fhDispSumPhiDiffE
! difference of 2 phi dispersions
Definition: AliAnaPhoton.h:244
void FillShowerShapeHistograms(AliVCluster *cluster, Int_t mcTag, Float_t maxCellEFraction, Int_t &largeTimeInside)
Fill cluster Shower Shape histograms.
TH2F * fhNCellsLam0HighE
! number of cells in cluster vs lambda0, E>2
Definition: AliAnaPhoton.h:221
TList * GetCreateOutputObjects()
TH2F * fhMCLambda0DispEta[7][fgkNssTypes]
! shower shape correlation l0 vs disp eta
Definition: AliAnaPhoton.h:299
TH2F * fhMCNCellsvsClusterMaxCellDiffE6[fgkNssTypes]
! NCells vs fraction of energy of max cell for E > 6
Definition: AliAnaPhoton.h:289
TH2F * fhCellClusterELam0BinPerSMLargeTime[2][20]
! Cell in Cluster E cell vs cluster pT, with large time
Definition: AliAnaPhoton.h:414
TH2F * fhLam1PerSMLargeTimeInClusterCell[20]
! Cluster lambda1 vs Pt, when any secondary cell has t > 50 ns, in different SM
Definition: AliAnaPhoton.h:421
Float_t fMinDist3
One more cut on distance used for acceptance-efficiency study.
Definition: AliAnaPhoton.h:144
TH2F * fhMCPhotonELambda0TwoOverlap
! E vs Lambda0 from MC photons, 2 particles overlap
Definition: AliAnaPhoton.h:281
TH2F * fhMCConversionLambda1RcutTRD[6]
! Shower shape M20 of photon conversions, depending on conversion vertex, SM covered by TRD ...
Definition: AliAnaPhoton.h:370
TH2F * fhMCPhotonELambda0NOverlap
! E vs Lambda0 from MC photons, N particles overlap
Definition: AliAnaPhoton.h:282
TH1F * fhClusterCutsPt[10]
! control histogram on the different photon selection cuts, pT
Definition: AliAnaPhoton.h:178
Float_t fMinDist
Minimal distance to bad channel to accept cluster.
Definition: AliAnaPhoton.h:142
TH2F * fhTrackMatchedMCParticle[2]
! Trace origin of matched particle
Definition: AliAnaPhoton.h:339
void SetTimeCut(Double_t min, Double_t max)
Definition: AliAnaPhoton.h:94
TH2F * fhMCMaxCellDiffClusterE[fgkNssTypes]
! Fraction of energy carried by cell with maximum energy
Definition: AliAnaPhoton.h:291
TH2F * fhMC2E[fgkNmcTypes]
! E distribution, Reco vs MC coming from MC particle
Definition: AliAnaPhoton.h:253
TH2F * fhCellClusterEFracLam0BinPerSM[2][20]
! Cell E / Cluster E vs cluster pT, not maximum cluster cell, in a l0 bin per SM
Definition: AliAnaPhoton.h:388
Float_t fConstantTimeShift
Apply a 600 ns time shift in case of simulation, shift in ns.
Definition: AliAnaPhoton.h:171
TH2F * fhEmbedPhotonELambda0MostlySignal
! Lambda0 vs E for embedded photons with 90%<fraction<50%
Definition: AliAnaPhoton.h:306
Int_t fNPrimaryHistograms
Fill only NPrimaryHistograms of the 7 defined types.
Definition: AliAnaPhoton.h:165
void FillPileUpHistograms(AliVCluster *cluster, AliVCaloCells *cells, Int_t absIdMax)
Fill some histograms to understand effect of pile-up.
TH2F * fhMCNCellsvsClusterMaxCellDiffE2[fgkNssTypes]
! NCells vs fraction of energy of max cell for 2 < E < 6 GeV
Definition: AliAnaPhoton.h:288
TH2F * fhNCellsDispHighE
! number of cells in cluster vs dispersion, E>2
Definition: AliAnaPhoton.h:223
Int_t GetNLMCutMax() const
Definition: AliAnaPhoton.h:105
TH2F * fhEmbeddedSignalFractionEnergy
! Fraction of photon energy of embedded signal vs cluster energy
Definition: AliAnaPhoton.h:303
TH1F * fhEPhoton
! Number of identified photon vs energy
Definition: AliAnaPhoton.h:185
TH2F * fhTrackMatchedDEtaMCConversion[2]
! Eta distance between track and cluster vs cluster E, originated in conversion, after and before pho...
Definition: AliAnaPhoton.h:336
TH2F * fhLam0ETMTRD
! Cluster lambda0 vs E, SM covered by TRD, cut on Track Matching residual
Definition: AliAnaPhoton.h:214
TH2F * fhLam0DispLowE
! Cluster lambda0 vs dispersion, E<2
Definition: AliAnaPhoton.h:229
Double_t fTimeCutMax
Remove clusters/cells with time larger than this value, in ns.
Definition: AliAnaPhoton.h:151
TH2F * fhTrackMatchedDPhiMCConversion[2]
! Phi distance between track and cluster vs cluster E, originated in conversion, after and before pho...
Definition: AliAnaPhoton.h:337
TH1F * fhMCE[fgkNmcTypes]
! Number of identified photon vs cluster energy coming from MC particle
Definition: AliAnaPhoton.h:256
TH2F * fhCellClusterIndexEAndTime[2][7]
! Cell in Cluster index (low index high energy, high index low energy) vs cell Time ...
Definition: AliAnaPhoton.h:397
TH2F * fhColRowLam0BinPtBinLargeTime[2][7]
! Cell hits, not maximum cluster cell, in a l0 bin, different Pt bins, cell with large time ...
Definition: AliAnaPhoton.h:411
TH2F * fhDispLam1LowE
! Cluster disp vs lambda1, E<2
Definition: AliAnaPhoton.h:233
TH2F * fhMCEDispEta[fgkNssTypes]
! shower dispersion in eta direction
Definition: AliAnaPhoton.h:293
TH1F * fhPtPrimMCAcc[fgkNmcPrimTypes]
! Number of generated photon vs pT, in calorimeter acceptance
Definition: AliAnaPhoton.h:268
mcssTypes
For MC histograms with shower shape in arrays, index in the array corresponds to a MC originating par...
Definition: AliAnaPhoton.h:134
TH2F * fhLam0E
! Cluster lambda0 vs E
Definition: AliAnaPhoton.h:199
TH2F * fhLam0PtTMTRD
! Cluster lambda0 vs pT, SM covered by TRD, cut on Track Matching residual
Definition: AliAnaPhoton.h:215
Double_t fTimeCutMin
Remove clusters/cells with time smaller than this value, in ns.
Definition: AliAnaPhoton.h:150
static const Int_t fgkNssTypes
Total number of MC histograms for shower shape studies.
Definition: AliAnaPhoton.h:138
AliAnaPhoton & operator=(const AliAnaPhoton &g)
Assignment operator not implemented.
TH2F * fhTimeLam0BinPerSMWeighted[2][20]
! Cell time, not maximum cluster cell, in a l0 bin per SM, log weight Cell E / Cluster E ...
Definition: AliAnaPhoton.h:385
TH2F * fhMCDeltaE[fgkNmcTypes]
! MC-Reco E distribution coming from MC particle
Definition: AliAnaPhoton.h:251
TH2F * fhTrackMatchedDEtaNeg[2]
! Eta distance between track and cluster vs cluster E, after and before photon cuts ...
Definition: AliAnaPhoton.h:325
TH2F * fhLam1EMCALRegionPerSM[4][3][20]
! Cluster lambda1 vs Pt, in different EMCal regions
Definition: AliAnaPhoton.h:378
TH2F * fhSumPhiE
! shower dispersion in phi direction
Definition: AliAnaPhoton.h:239
TH2F * fhEmbedPhotonELambda0FullBkg
! Lambda0 vs E for embedded photons with less than 10% of the cluster energy
Definition: AliAnaPhoton.h:308
TH2F * fhLam0ETM
! Cluster lambda0 vs E, cut on Track Matching residual
Definition: AliAnaPhoton.h:209
TH2F * fhMCEDispersion[fgkNssTypes]
! E vs Dispersion from MC particle
Definition: AliAnaPhoton.h:278
void SwitchOnFillShowerShapeHistograms()
Definition: AliAnaPhoton.h:69
TH2F * fhEtaLam0HighE
! Cluster eta vs lambda0, E>2
Definition: AliAnaPhoton.h:227
TH2F * fhLam1E
! Cluster lambda1 vs E
Definition: AliAnaPhoton.h:201
TH2F * fhPtPhotonNPileUpTrkVtxTimeCut2
! photon pt vs number of track pile-up vertices, time cut +- 75 ns
Definition: AliAnaPhoton.h:358
TH2F * fhDispEtaPhiDiffE
! shower dispersion eta - phi
Definition: AliAnaPhoton.h:241
TH2F * fhMCDeltaPt[fgkNmcTypes]
! MC-Reco pT distribution coming from MC particle
Definition: AliAnaPhoton.h:252
TH2F * fhDispPhiE
! shower dispersion in phi direction
Definition: AliAnaPhoton.h:237
TH2F * fhMCLambda0vsClusterMaxCellDiffE0[fgkNssTypes]
! Lambda0 vs fraction of energy of max cell for E < 2 GeV
Definition: AliAnaPhoton.h:284
TH2F * fhYPrimMCAcc[fgkNmcPrimTypes]
! Rapidity of generated photon, in calorimeter acceptance
Definition: AliAnaPhoton.h:271
TH2F * fhPhiPrimMCAcc[fgkNmcPrimTypes]
! Phi of generted photon, in calorimeter acceptance
Definition: AliAnaPhoton.h:269
TH2F * fhNCellsLam0LowE
! number of cells in cluster vs lambda0
Definition: AliAnaPhoton.h:218
TH2F * fhMCPhotonELambda0NoOverlap
! E vs Lambda0 from MC photons, no overlap
Definition: AliAnaPhoton.h:280
TH2F * fhColRowLam0BinPtBinWeighted[2][7]
! Cell hits, not maximum cluster cell, in a l0 bin, different Pt bins and log weight Cell E / Cluster...
Definition: AliAnaPhoton.h:396
TH2F * fhSumEtaPhiE
! shower dispersion in eta and phi direction
Definition: AliAnaPhoton.h:240
TH2F * fhLam0PerSM[20]
! Cluster lambda0 vs Pt, in different SM
Definition: AliAnaPhoton.h:418
void Init()
Init. Do some checks, abort if the cluster is not the expected PHOS or EMCal.
TH2F * fhMCPhi[fgkNmcTypes]
! Phi of identified photon coming from MC particle
Definition: AliAnaPhoton.h:258
TH2F * fhClusterTimeDiffPhotonPileUp[7]
! E vs Time difference inside cluster for selected photons
Definition: AliAnaPhoton.h:347
TLorentzVector fPrimaryMom
! Primary MC momentum, temporary container
Definition: AliAnaPhoton.h:168
Bool_t ClusterSelected(AliVCluster *cl, Int_t nlm)
TH1F * fhEPrimMCAcc[fgkNmcPrimTypes]
! Number of generated photon vs energy, in calorimeter acceptance
Definition: AliAnaPhoton.h:267
TH2F * fhTrackMatchedDEtaMCOverlap[2]
! Eta distance between track and cluster vs cluster E, several particle overlap, after and before pho...
Definition: AliAnaPhoton.h:332
TH2F * fhTimeNPileUpVertTrack
! Time of cluster vs n pile-up vertices from Tracks
Definition: AliAnaPhoton.h:351
void FillNOriginHistograms(Int_t n)
Definition: AliAnaPhoton.h:111
void FillTrackMatchingResidualHistograms(AliVCluster *calo, Int_t cut)
TH2F * fhTrackMatchedDPhi[2]
! Phi distance between track and cluster vs cluster E, after and before photon cuts ...
Definition: AliAnaPhoton.h:318
TH2F * fhCellClusterELam0BinPerSMWeighted[2][20]
! Cell E vs cluster pT, not maximum cluster cell, in a l0 bin per SM, log weight Cell E / Cluster E ...
Definition: AliAnaPhoton.h:391
TH2F * fhDispLam1HighE
! Cluster disp vs lambda1, E>2
Definition: AliAnaPhoton.h:234
TH2F * fhPtCentralityPhoton
! centrality vs photon pT
Definition: AliAnaPhoton.h:192
TH2F * fhCellClusterIndexELam0BinPerSMLargeTime[2][20]
! Cell in Cluster index (low index high energy, high index low energy) vs cluster pT...
Definition: AliAnaPhoton.h:415
TH2F * fhTrackMatchedDPhiMCOverlap[2]
! Phi distance between track and cluster vs cluster E, several particle overlap, after and before pho...
Definition: AliAnaPhoton.h:333
void SwitchOnOnlySimpleSSHistoFill()
Definition: AliAnaPhoton.h:75
TH2F * fhMCLambda0vsClusterMaxCellDiffE6[fgkNssTypes]
! Lambda0 vs fraction of energy of max cell for E > 6 GeV
Definition: AliAnaPhoton.h:286
TH2F * fhTrackMatchedDPhiPos[2]
! Phi distance between track and cluster vs cluster E, after and before photon cuts ...
Definition: AliAnaPhoton.h:322
TLorentzVector fMomentum
! Cluster momentum, temporary container
Definition: AliAnaPhoton.h:167
TH2F * fhLam0DispHighE
! Cluster lambda0 vs dispersion, E>2
Definition: AliAnaPhoton.h:230
TH2F * fhEtaPhiLam0BinPtBin[2][7]
! Cluster eta/phi in a l0 bin, different Pt bins
Definition: AliAnaPhoton.h:394
TH2F * fhMCESumEtaPhi[fgkNssTypes]
! shower dispersion in eta vs phi direction
Definition: AliAnaPhoton.h:295
TH2F * fhTrackMatchedDEtaMCNoOverlap[2]
! Eta distance between track and cluster vs cluster E, not other particle overlap, after and before photon cuts
Definition: AliAnaPhoton.h:334
TH2F * fhLam0PtTM
! Cluster lambda0 vs pT, cut on Track Matching residual
Definition: AliAnaPhoton.h:210
TH2F * fhLam1Lam0BinPerSM[2][20]
! Cluster lambda1, in a l0 bin per SM
Definition: AliAnaPhoton.h:383
TH2F * fhLam0Pt
! Cluster lambda0 vs pT
Definition: AliAnaPhoton.h:200
TH2F * fhTimeNPileUpVertSPD
! Time of cluster vs n pile-up vertices from SPD
Definition: AliAnaPhoton.h:350
void SwitchOffFillEMCALRegionSSHistograms()
Definition: AliAnaPhoton.h:73
TH2F * fhMCConversionLambda0RcutTRD[6]
! Shower shape M02 of photon conversions, depending on conversion vertex, SM covered by TRD ...
Definition: AliAnaPhoton.h:368
TH2F * fhEtaPrimMCAcc[fgkNmcPrimTypes]
! Phi of generted photon, in calorimeter acceptance
Definition: AliAnaPhoton.h:270
TH2F * fhNLocMax
! number of maxima in selected clusters
Definition: AliAnaPhoton.h:196
static const Int_t fgkNmcTypes
Total number of cluster MC origin histograms.
Definition: AliAnaPhoton.h:124
Double_t GetNCellCut() const
Definition: AliAnaPhoton.h:100
Bool_t IsTrackMatchRejectionOn() const
Definition: AliAnaPhoton.h:107
TH2F * fhEmbedPi0ELambda0MostlySignal
! Lambda0 vs E for embedded photons with 90%<fraction<50%
Definition: AliAnaPhoton.h:311
TH2F * fhPhiLam0HighE
! Cluster phi vs lambda0, E>2
Definition: AliAnaPhoton.h:228
TH2F * fhMCEDispPhi[fgkNssTypes]
! shower dispersion in phi direction
Definition: AliAnaPhoton.h:294
TH2F * fhEmbedPhotonELambda0MostlyBkg
! Lambda0 vs E for embedded photons with 50%<fraction<10%
Definition: AliAnaPhoton.h:307
TVector3 fProdVertex
! Primary MC production vertex, temporary container
Definition: AliAnaPhoton.h:169
TH2F * fhDTimeLam0BinPerSM[2][20]
! t_max-t_cell, not maximum cluster cell, in a l0 bin per SM
Definition: AliAnaPhoton.h:386
TObjString * GetAnalysisCuts()
Save parameters used for analysis in a string.
TH2F * fhLam1Lam0LowE
! Cluster lambda1 vs lambda0, E<2
Definition: AliAnaPhoton.h:231
TH2F * fhMCNCellsvsClusterMaxCellDiffE0[fgkNssTypes]
! NCells vs fraction of energy of max cell for E < 2
Definition: AliAnaPhoton.h:287
void SetNLMCut(Int_t min, Int_t max)
Definition: AliAnaPhoton.h:102
TH2F * fhMCConversionLambda0Rcut[6]
! Shower shape M02 of photon conversions, depending on conversion vertex.
Definition: AliAnaPhoton.h:367
TH2F * fhMCLambda0vsClusterMaxCellDiffE2[fgkNssTypes]
! Lambda0 vs fraction of energy of max cell for 2< E < 6 GeV
Definition: AliAnaPhoton.h:285
TH2F * fhMCConversionLambda1Rcut[6]
! Shower shape M20 of photon conversions, depending on conversion vertex.
Definition: AliAnaPhoton.h:369
void SetConstantTimeShift(Float_t shift)
Definition: AliAnaPhoton.h:85
TH2F * fhTimeLam0BinPerSM[2][20]
! Cell time, not maximum cluster cell, in a l0 bin per SM
Definition: AliAnaPhoton.h:384