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