AliPhysics  a9863a5 (a9863a5)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskEmcalJetCDF.h
Go to the documentation of this file.
1 
10 
11 #ifndef ALIANALYSISTASKEMCALJETCDF_H
12 #define ALIANALYSISTASKEMCALJETCDF_H
13 
14 #include <cstdio>
15 #include <iostream>
16 #include <vector>
17 #include <utility>
18 #include <algorithm>
19 
20 #include <Rtypes.h>
21 #include <TH1.h>
22 #include <TH1D.h>
23 #include <TProfile.h>
24 #include <TMath.h>
25 
26 #include <AliEmcalJet.h>
27 #include <AliJetContainer.h>
28 #include <AliParticleContainer.h>
29 #include <AliClusterContainer.h>
30 #include <THistManager.h>
31 
33 
34 using std::cout;
35 using std::endl;
36 using std::vector;
37 using std::pair;
38 
39 class TH1;
40 class TProfile;
41 class AliAnalysisUtils;
42 class AliJetContainer;
45 
47  {
48  public:
49 
51  AliAnalysisTaskEmcalJetCDF ( const char *name );
53 
55  void Terminate ( Option_t *option );
56 
59  void SetProcessJetCont (Int_t i) {idx_jetcont = i;}
60 
63  Int_t GetProcessJetCont () {return idx_jetcont;}
64 
69  Double_t Z_ptot ( const AliEmcalJet* jet, const AliVParticle* trk ) const; // Get Z of constituent trk ; p total
70 
75  Double_t Z_pt ( const AliEmcalJet* jet, const AliVParticle* trk ) const; // Get Z of constituent trk ; pt
76 
79  Double_t Xi ( Double_t z ) const { return TMath::Log ( 1/z ); } // Get Xi of value z
80 
81  protected:
82  void ExecOnce();
83  Bool_t Run() ;
84 
87  Bool_t FillHistograms() ;
88 
92  Bool_t ProcessJetContainer(Int_t idx_jet_container = 0);
93 
97  std::vector<Int_t> SortTracksPt ( AliVEvent *event ) const;
98 
102  std::vector<Int_t> SortTracksPt ( AliParticleContainer *track_container ) const;
103 
108  Double_t DeltaR ( const AliVParticle *part1, const AliVParticle *part2 );
109 
114  Bool_t IdxInArray ( Int_t index, TArrayI &array );
115 
116  // Histogram list
117  TH1D *fH1;
118  TH1D *fH2;
119  TH1D *fH3;
120 
121 //________________________________________________________________________
122  TH1D *fH4;
123  TH1D *fH4c;
124 
125 //________________________________________________________________________
126  TH1D *fH5;
127 
128 //________________________________________________________________________
129  TH1D *fH6;
130  TH1D *fH6c;
131 
132 //________________________________________________________________________
133  TProfile *fH7;
134  TProfile *fH7all;
135 
136 //________________________________________________________________________
137  TH1D *fH8;
138  TH1D *fH8xi;
139 
140 //________________________________________________________________________
141  TH1D *fH8_p;
142  TH1D *fH8xi_p;
143 
144 //________________________________________________________________________
145  TH1D *fH8_pt;
146  TH1D *fH8xi_pt;
147 
148 //________________________________________________________________________
149  TH1D *fH8_all;
150  TH1D *fH8xi_all;
151 
152 //________________________________________________________________________
153  TH1D *fH8_all_p;
154  TH1D *fH8xi_all_p;
155 
156 //________________________________________________________________________
157  TH1D *fH8_all_pt;
158  TH1D *fH8xi_all_pt;
159 
160 //________________________________________________________________________
161  TProfile *fH15;
162 
163  TProfile *fH15_n90;
164  TProfile *fH15_n85;
165  TProfile *fH15_n80;
166  TProfile *fH15_n75;
167  TProfile *fH15_n70;
168 
169  TProfile *fH15_pt90;
170  TProfile *fH15_pt85;
171  TProfile *fH15_pt80;
172  TProfile *fH15_pt75;
173  TProfile *fH15_pt70;
174 
175 //________________________________________________________________________
176  TProfile *fH15all;
177 
178  TProfile *fH15all_n90;
179  TProfile *fH15all_n85;
180  TProfile *fH15all_n80;
181  TProfile *fH15all_n75;
182  TProfile *fH15all_n70;
183 
184  TProfile *fH15all_pt90;
185  TProfile *fH15all_pt85;
186  TProfile *fH15all_pt80;
187  TProfile *fH15all_pt75;
188  TProfile *fH15all_pt70;
189 
190 //________________________________________________________________________
191  TH1D *fH15_bin;
192 
193  TH1D *fH15_bin_n90;
194  TH1D *fH15_bin_n85;
195  TH1D *fH15_bin_n80;
196  TH1D *fH15_bin_n75;
197  TH1D *fH15_bin_n70;
198 
204 
205 //________________________________________________________________________
206  TH1D *fH15all_bin;
207 
213 
219 
220 //________________________________________________________________________
221  TH1D *fH20;
222 
223  TH1D *fH20_n90;
224  TH1D *fH20_n85;
225  TH1D *fH20_n80;
226  TH1D *fH20_n75;
227  TH1D *fH20_n70;
228 
229  TH1D *fH20_pt90;
230  TH1D *fH20_pt85;
231  TH1D *fH20_pt80;
232  TH1D *fH20_pt75;
233  TH1D *fH20_pt70;
234 
235 
236 //________________________________________________________________________
237  TH1D *fH20all;
238 
239  TH1D *fH20all_n90;
240  TH1D *fH20all_n85;
241  TH1D *fH20all_n80;
242  TH1D *fH20all_n75;
243  TH1D *fH20all_n70;
244 
245  TH1D *fH20all_pt90;
246  TH1D *fH20all_pt85;
247  TH1D *fH20all_pt80;
248  TH1D *fH20all_pt75;
249  TH1D *fH20all_pt70;
250 
251 //________________________________________________________________________
252  TH1D *fHg;
253 
254  TH1D *fHg_n90;
255  TH1D *fHg_n85;
256  TH1D *fHg_n80;
257  TH1D *fHg_n75;
258  TH1D *fHg_n70;
259 
260  TH1D *fHg_pt90;
261  TH1D *fHg_pt85;
262  TH1D *fHg_pt80;
263  TH1D *fHg_pt75;
264  TH1D *fHg_pt70;
265 
266 //________________________________________________________________________
267  TH1D *fHptd;
268 
269  TH1D *fHptd_n90;
270  TH1D *fHptd_n85;
271  TH1D *fHptd_n80;
272  TH1D *fHptd_n75;
273  TH1D *fHptd_n70;
274 
275  TH1D *fHptd_pt90;
276  TH1D *fHptd_pt85;
277  TH1D *fHptd_pt80;
278  TH1D *fHptd_pt75;
279  TH1D *fHptd_pt70;
280 
281 //________________________________________________________________________
282  TProfile *fH23;
283  TProfile *fH24;
284  TProfile *fH25;
285 
286 //________________________________________________________________________
287  TProfile *fH23all;
288  TProfile *fH24all;
289  TProfile *fH25all;
290 
291 
292  //_________________________________________________________________________
296  TClonesArray *fTracksContArray;
297  TClonesArray *fCaloClustContArray;
298 
299  Int_t idx_jetcont;
301  Int_t fNaccPart;
302  Int_t fNaccClus;
303  THistManager fHistManager;
304 
305  private:
307  typedef std::pair<Double_t, Int_t> ptidx_pair;
308 
311  {
312  bool operator () ( const ptidx_pair &p1, const ptidx_pair &p2 ) { return p1.first > p2.first ; }
313  };
314 
315  AliAnalysisTaskEmcalJetCDF ( const AliAnalysisTaskEmcalJetCDF& ); // not implemented
317 
319  ClassDef ( AliAnalysisTaskEmcalJetCDF, 4 );
321 
322  };
323 #endif
324 
325 // kate: indent-mode none; indent-width 2; replace-tabs on;
TProfile * fH7
! N(jet1) vs P_{T}(jet1)
THistManager fHistManager
Histogram manager.
TH1D * fH8_all
! Momentum distribution for jets (fragmentation function)
TProfile * fH15_n85
! <p_{T}> track vs the Distance R from Jet1 - 85% of particles
TH1D * fH15_bin
! p_{T} SUM track vs the Distance R from Jet1
TH1D * fHptd_pt85
! Distribution of dispersion pt_D
TProfile * fH15all_n70
! <p_{T}> track vs the Distance R from Jet1 - 70% of particles
TH1D * fH8xi_all
! Xi distribution for jets (fragmentation function)
TH1D * fH8xi_p
! Xi distribution for leading jet (fragmentation function) - Z_ptot
TH1D * fH15_bin_pt90
! p_{T} SUM track vs the Distance R from Jet1 - 80% of Pt
TProfile * fH15_pt80
! <p_{T}> track vs the Distance R from Jet1 - 80% of Pt
TH1D * fH15all_bin_pt70
! p_{T} SUM track vs the Distance R from owner jet - 80% of Pt
TH1D * fH15all_bin_n75
! p_{T} SUM track vs the Distance R from owner jet - 80% of particles
TH1D * fH15_bin_pt80
! p_{T} SUM track vs the Distance R from Jet1 - 80% of Pt
Bool_t IdxInArray(Int_t index, TArrayI &array)
TProfile * fH15all_n90
! <p_{T}> track vs the Distance R from Jet1 - 90% of particles
TH1D * fH20_pt70
! Distribution of R in leading jet - 70% of Pt
AliJetContainer * fJetsCont
! Jets Container
TH1D * fH20_n85
! Distribution of R in leading jet - 85% of particles
Double_t Z_pt(const AliEmcalJet *jet, const AliVParticle *trk) const
TProfile * fH25all
! Jet1 Size vs P_{T}(jet) - 80% of Pt
TH1D * fH15_bin_pt85
! p_{T} SUM track vs the Distance R from Jet1 - 80% of Pt
TProfile * fH15all_n75
! <p_{T}> track vs the Distance R from Jet1 - 75% of particles
TProfile * fH15
! <p_{T}> track vs the Distance R from Jet1
TH1D * fH15all_bin
! p_{T} SUM track vs the Distance R from owner jet
TH1D * fH20all_pt80
! Distribution of R in jets - 80% of Pt
TH1D * fHptd_n70
! Distribution of dispersion pt_D
TH1D * fH8xi_all_pt
! Xi distribution for jets (fragmentation function) - Z_pt
TH1D * fH5
! Distribution of jets in events
TClonesArray * fCaloClustContArray
! the array of clusters from the tracks container
TProfile * fH7all
! N(jet1) vs P_{T} - all jets
TH1D * fH15_bin_pt70
! p_{T} SUM track vs the Distance R from Jet1 - 80% of Pt
TProfile * fH24
! Jet1 Size vs P_{T}(jet1) - 80% of particles
TH1D * fHptd_n90
! Distribution of dispersion pt_D
Double_t DeltaR(const AliVParticle *part1, const AliVParticle *part2)
TH1D * fHptd_n80
! Distribution of dispersion pt_D
TH1D * fH20all_n75
! Distribution of R in jets - 80% of particles
TH1D * fH15all_bin_n85
! p_{T} SUM track vs the Distance R from owner jet - 80% of particles
bool operator()(const ptidx_pair &p1, const ptidx_pair &p2)
TH1D * fHptd_pt70
! Distribution of dispersion pt_D
TH1D * fH15all_bin_n70
! p_{T} SUM track vs the Distance R from owner jet - 80% of particles
Container for particles within the EMCAL framework.
TH1D * fH20all_pt70
! Distribution of R in jets - 80% of Pt
TH1D * fH20all_n85
! Distribution of R in jets - 80% of particles
Bool_t ProcessJetContainer(Int_t idx_jet_container=0)
TProfile * fH15_n90
! <p_{T}> track vs the Distance R from Jet1 - 90% of particles
TH1D * fHg_n75
! Distribution of girth (radial girth) g
TProfile * fH24all
! Jet1 Size vs P_{T}(jet) - 80% of particles
TH1D * fHg_n90
! Distribution of girth (radial girth) g
TH1D * fH1
! Pt distribution of all jets
TH1D * fH15all_bin_n90
! p_{T} SUM track vs the Distance R from owner jet - 80% of particles
TH1D * fHg_n70
! Distribution of girth (radial girth) g
Int_t fNaccPart
Multiplicity in event - accepted tracks in tracks container.
TH1D * fH20_n75
! Distribution of R in leading jet - 75% of particles
TH1D * fH15_bin_n90
! p_{T} SUM track vs the Distance R from Jet1 - 90% of particles
TProfile * fH23all
! Jet1 Size vs P_{T}(jet)
TH1D * fH15all_bin_pt90
! p_{T} SUM track vs the Distance R from owner jet - 80% of Pt
Int_t fNaccClus
Multiplicity in event - accepted clusters in cluster container.
TH1D * fH8xi_all_p
! Xi distribution for jets (fragmentation function) - Z_ptot
TH1D * fHg_pt90
! Distribution of girth (radial girth) g
TH1D * fH8xi_pt
! Xi distribution for leading jet (fragmentation function) - Z_pt
TProfile * fH23
! Jet1 Size vs P_{T}(jet1)
TH1D * fH6c
! Jet1 Multiplicity Distribution - all constituents
TH1D * fH15all_bin_pt85
! p_{T} SUM track vs the Distance R from owner jet - 80% of Pt
TH1D * fH15_bin_n80
! p_{T} SUM track vs the Distance R from Jet1 - 80% of particles
AliParticleContainer * fTracksCont
! Tracks Container
TH1D * fHptd_pt90
! Distribution of dispersion pt_D
TH1D * fH20all_pt90
! Distribution of R in jets - 80% of Pt
TProfile * fH25
! Jet1 Size vs P_{T}(jet1) - 80% of Pt
TH1D * fH20_n90
! Distribution of R in leading jet - 90% of particles
TH1D * fH15_bin_n70
! p_{T} SUM track vs the Distance R from Jet1 - 70% of particles
TH1D * fH15_bin_pt75
! p_{T} SUM track vs the Distance R from Jet1 - 80% of Pt
TH1D * fH2
! Eta distribution of all jets
TH1D * fH4c
! Multiplicity of all jets - all constituents // 1 unit of multiplicity /bin
TProfile * fH15all_pt75
! <p_{T}> track vs the Distance R from Jet1 - 75% of Pt
Double_t Xi(Double_t z) const
TClonesArray * fTracksContArray
! the array of tracks from the tracks container
TH1D * fH20all
! Distribution of R in jets
TH1D * fH15all_bin_pt75
! p_{T} SUM track vs the Distance R from owner jet - 80% of Pt
TProfile * fH15_pt70
! <p_{T}> track vs the Distance R from Jet1 - 70% of Pt
TH1D * fH15all_bin_pt80
! p_{T} SUM track vs the Distance R from owner jet - 80% of Pt
TH1D * fH20_pt80
! Distribution of R in leading jet - 80% of Pt
TProfile * fH15all_pt80
! <p_{T}> track vs the Distance R from Jet1 - 80% of Pt
TH1D * fHptd_pt75
! Distribution of dispersion pt_D
TH1D * fH8
! Momentum distribution for leading jet (fragmentation function)
TH1D * fH20_pt90
! Distribution of R in leading jet - 90% of Pt
TH1D * fH20all_pt75
! Distribution of R in jets - 80% of Pt
TH1D * fHg_n85
! Distribution of girth (radial girth) g
TProfile * fH15_pt75
! <p_{T}> track vs the Distance R from Jet1 - 75% of Pt
TH1D * fH20all_n80
! Distribution of R in jets - 80% of particles
TH1D * fHptd_n75
! Distribution of dispersion pt_D
TH1D * fH8_all_p
! Momentum distribution for jets (fragmentation function) - Z_ptot
TProfile * fH15_n75
! <p_{T}> track vs the Distance R from Jet1 - 75% of particles
TH1D * fHptd_n85
! Distribution of dispersion pt_D
TH1D * fHg_pt80
! Distribution of girth (radial girth) g
TProfile * fH15all_n80
! <p_{T}> track vs the Distance R from Jet1 - 80% of particles
TH1D * fHg_pt70
! Distribution of girth (radial girth) g
TH1D * fH8_p
! Momentum distribution for leading jet (fragmentation function) - Z_ptot
TProfile * fH15_pt90
! <p_{T}> track vs the Distance R from Jet1 - 80% of Pt
TH1D * fHg_pt85
! Distribution of girth (radial girth) g
TH1D * fHg
! Distribution of girth (radial girth) g = sum_jet_parts ( r_i * ( pt_i/pt_jet ) ) ...
TProfile * fH15_pt85
! <p_{T}> track vs the Distance R from Jet1 - 85% of Pt
Base task in the EMCAL jet framework.
Represent a jet reconstructed using the EMCal jet framework.
Definition: AliEmcalJet.h:44
TH1D * fH15_bin_n85
! p_{T} SUM track vs the Distance R from Jet1 - 85% of particles
std::pair< Double_t, Int_t > ptidx_pair
(pt,index) pair
TH1D * fHptd_pt80
! Distribution of dispersion pt_D
TH1D * fHg_pt75
! Distribution of girth (radial girth) g
TH1D * fH8xi
! Xi distribution for leading jet (fragmentation function)
TProfile * fH15all_pt70
! <p_{T}> track vs the Distance R from Jet1 - 70% of Pt
TProfile * fH15all_pt85
! <p_{T}> track vs the Distance R from Jet1 - 85% of Pt
TProfile * fH15all_pt90
! <p_{T}> track vs the Distance R from Jet1 - 90% of Pt
AliAnalysisTaskEmcalJetCDF & operator=(const AliAnalysisTaskEmcalJetCDF &)
TH1D * fH20_n80
! Distribution of R in leading jet - 80% of particles
TH1D * fH20all_n90
! Distribution of R in jets - 80% of particles
TH1D * fHptd
! Distribution of dispersion d pt_D = sqrt ( sum (pt_i^2) )/sum (pt_i)
TH1D * fH15_bin_n75
! p_{T} SUM track vs the Distance R from Jet1 - 75% of particles
TH1D * fH4
! Multiplicity of all jets - tracks // 1 unit of multiplicity /bin
TH1D * fH20_pt75
! Distribution of R in leading jet - 75% of Pt
TH1D * fH3
! Phi distribution of all jets
TProfile * fH15all
! <p_{T}> track vs the Distance R from Jet1
TH1D * fHg_n80
! Distribution of girth (radial girth) g
TProfile * fH15all_n85
! <p_{T}> track vs the Distance R from Jet1 - 85% of particles
AliClusterContainer * fCaloClustersCont
! Clusters Container
Double_t Z_ptot(const AliEmcalJet *jet, const AliVParticle *trk) const
TH1D * fH20_n70
! Distribution of R in leading jet - 70% of particles
Container structure for EMCAL clusters.
functional for sorting pair by first element - descending
Int_t idx_jetcont
index of jet container to be processed
TH1D * fH20all_n70
! Distribution of R in jets - 80% of particles
TH1D * fH15all_bin_n80
! p_{T} SUM track vs the Distance R from owner jet - 80% of particles
TProfile * fH15_n70
! <p_{T}> track vs the Distance R from Jet1 - 70% of particles
TProfile * fH15_n80
! <p_{T}> track vs the Distance R from Jet1 - 80% of particles
TH1D * fH8_pt
! Momentum distribution for leading jet (fragmentation function) - Z_pt
Container for jet within the EMCAL jet framework.
TH1D * fH20all_pt85
! Distribution of R in jets - 80% of Pt
TH1D * fH6
! Jet1 Multiplicity Distribution - charged tracks
TH1D * fH8_all_pt
! Momentum distribution for jets (fragmentation function) - Z_pt
Int_t fNJets_accepted
Number of Jets found in event - accepted cuts applied by JetContainer.
TH1D * fH20_pt85
! Distribution of R in leading jet - 85% of Pt
Analysis of leading jets distribution of pt and multiplicity.
std::vector< Int_t > SortTracksPt(AliVEvent *event) const
TH1D * fH20
! Distribution of R in leading jet