AliPhysics  068200c (068200c)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskDijetHadron.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKDIJETHADRON_H
2 #define ALIANALYSISTASKDIJETHADRON_H
3 
4 // $Id$
5 #include <vector>
6 
7 class TH1;
8 class TH2;
9 class TH3;
10 class TH2F;
11 class TH1F;
12 class TF1;
13 class TH3F;
14 class THnSparse;
15 class TClonesArray;
16 class TObject;
17 class TString;
18 class AliNamedString;
19 class AliAODEvent;
20 class AliESDEvent;
21 class AliMCEvent;
22 class AliRhoParameter;
23 class TRandom3;
24 class AliEmcalJet;
25 class AliVTrack;
26 class AliNamedArrayI;
27 class AliJetContainer;
30 
31 template<class T> class TParameter;
32 
33 #include "AliAnalysisTaskSE.h"
34 #include "AliEmcalJet.h"
36 
38  public:
39 
41  AliAnalysisTaskDijetHadron(const char *name);
43 
45 
57  void SetConeEtaPhiEMCAL() ;
58  void SetConeEtaPhiTPC() ;
59  void SetConeEtaLimits(Float_t min, Float_t max) { fConeMinEta = min, fConeMaxEta = max ; }
60  void SetConePhiLimits(Float_t min, Float_t max) { fConeMinPhi = min, fConeMaxPhi = max ; }
61 
62  protected:
64  void ExecOnce() ;
66  void GetLeadingJets(Int_t &maxJetIndex, Int_t &max2JetIndex) ;
67  AliEmcalJet* NextEmbeddedJet(Bool_t reset=kFALSE) ;
68  void DoEmbTrackLoop() ;
69  void DoEmbClusterLoop() ;
70  Double_t GetZ(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz, const Double_t jetPx, const Double_t jetPy, const Double_t jetPz);
71  Double_t GetDPhi(Double_t mphi,Double_t vphi);
72 
73  Double_t fMCJetPtThreshold; // threshold for MC jets
74  Double_t fleadingHadronPtcut1; // threshold for leading hadron pT NO1
75  Double_t fleadingHadronPtcut2; // threshold for leading hadron pT NO2
76  Double_t fleadingHadronPtcut3; // threshold for leading hadron pT NO3
77  Double_t fJet1Ptcut1; // threshold for leading Jet pT NO1
78  Double_t fJet1Ptcut2; // threshold for leading Jet pT NO2
79  Double_t fJet1Ptcut3; // threshold for leading Jet pT NO3
80  Double_t fJet2Ptcut1; // threshold for subleading Jet pT NO1
81  Double_t fJet2Ptcut2; // threshold for subleading Jet pT NO2
82  Double_t fJet2Ptcut3; // threshold for subleading Jet pT NO3
83  Double_t fConeRadius; // Radius of the jet cones
84  Float_t fConeMinEta; // Minimum eta of the jet cones
85  Float_t fConeMaxEta; // Maximum eta of the jet cones
86  Float_t fConeMinPhi; // Minimum phi of the jet cones
87  Float_t fConeMaxPhi; // Maximum phi of the jet cones
88 
98 
99  //User Task
117  TH1 *fJetPt_PbPb[4][3];
118  TH1 *fJetPhi_PbPb[4][3];
119  TH1 *fJetEta_PbPb[4][3];
123  TH1 *fJet1Pt_PbPb[4][3][4][4];
124  TH1 *fJet2Pt_PbPb[4][3][4][4];
125  TH1 *fJet1Pt_BG_PbPb[4][3][4][4];
126  TH1 *fJet2Pt_BG_PbPb[4][3][4][4];
127  TH1 *fJetDeltaPhi_PbPb[4][3][4][4];
128  TH1 *fJetDeltaEta_PbPb[4][3][4][4];
129  TH1 *fJet1SelectPt_BG_PbPb[4][3][4][4];
130  TH1 *fJet2SelectPt_BG_PbPb[4][3][4][4];
131  TH2 *fJet1EP_PbPb[4][3][4][4];
132  TH1 *fAj_PbPb[4][3][4][4];
133 
134  TH1 *fJetPt_MC[4][3];
135  TH1 *fJetPhi_MC[4][3];
136  TH1 *fJetEta_MC[4][3];
139  TH1 *fJet1Pt_MC[4][3][4][4];
140  TH1 *fJet2Pt_MC[4][3][4][4];
141  TH1 *fJetDeltaPhi_MC[4][3][4][4];
142  TH1 *fJetDeltaEta_MC[4][3][4][4];
143  TH2 *fJet1EP_MC[4][3][4][4];
144  TH1 *fAj_MC[4][3][4][4];
145 
146  TH1 *fJetPt_EMB[4][3];
147  TH1 *fJetPhi_EMB[4][3];
148  TH1 *fJetEta_EMB[4][3];
151  TH1 *fJetDeltaPt[4][3];
153  TH1 *fJet1Pt_EMB[4][3][4][4];
154  TH1 *fJet2Pt_EMB[4][3][4][4];
155  TH1 *fJet1Pt_BG_EMB[4][3][4][4];
156  TH1 *fJet2Pt_BG_EMB[4][3][4][4];
157  TH1 *fJet1DeltaPt[4][3][4][4];
158  TH1 *fJet2DeltaPt[4][3][4][4];
159  TH1 *fJetDeltaPhi_EMB[4][3][4][4];
160  TH1 *fJetDeltaEta_EMB[4][3][4][4];
161  TH1 *fJet1SelectPt_BG_EMB[4][3][4][4];
162  TH1 *fJet2SelectPt_BG_EMB[4][3][4][4];
163  TH1 *fJet1SelectDeltaPt[4][3][4][4];
164  TH1 *fJet2SelectDeltaPt[4][3][4][4];
165  TH2 *fJet1EP_EMB[4][3][4][4];
166  TH1 *fAj_EMB[4][3][4][4];
167 
168  TH1 *fHJetDeltaPhi_Aj0_PbPb[4][3][4][4][4];
169  TH1 *fHJetDeltaPhi_Aj1_PbPb[4][3][4][4][4];
170  TH1 *fHJetDeltaPhi_Aj2_PbPb[4][3][4][4][4];
171  TH1 *fHJetDeltaPhi_Aj3_PbPb[4][3][4][4][4];
172  TH1 *fHJetDeltaPhi_Aj4_PbPb[4][3][4][4][4];
173  TH1 *fHJet_EP_Aj0_PbPb[4][3][4][4][4];
174  TH1 *fHJet_EP_Aj1_PbPb[4][3][4][4][4];
175  TH1 *fHJet_EP_Aj2_PbPb[4][3][4][4][4];
176  TH1 *fHJet_EP_Aj3_PbPb[4][3][4][4][4];
177  TH1 *fHJet_EP_Aj4_PbPb[4][3][4][4][4];
178  TH1 *fHJetDeltaPhi_Aj0_MC[4][3][4][4][4];
179  TH1 *fHJetDeltaPhi_Aj1_MC[4][3][4][4][4];
180  TH1 *fHJetDeltaPhi_Aj2_MC[4][3][4][4][4];
181  TH1 *fHJetDeltaPhi_Aj3_MC[4][3][4][4][4];
182  TH1 *fHJetDeltaPhi_Aj4_MC[4][3][4][4][4];
183  TH1 *fHJet_EP_Aj0_MC[4][3][4][4][4];
184  TH1 *fHJet_EP_Aj1_MC[4][3][4][4][4];
185  TH1 *fHJet_EP_Aj2_MC[4][3][4][4][4];
186  TH1 *fHJet_EP_Aj3_MC[4][3][4][4][4];
187  TH1 *fHJet_EP_Aj4_MC[4][3][4][4][4];
188  TH1 *fHJetDeltaPhi_Aj0_EMB[4][3][4][4][4];
189  TH1 *fHJetDeltaPhi_Aj1_EMB[4][3][4][4][4];
190  TH1 *fHJetDeltaPhi_Aj2_EMB[4][3][4][4][4];
191  TH1 *fHJetDeltaPhi_Aj3_EMB[4][3][4][4][4];
192  TH1 *fHJetDeltaPhi_Aj4_EMB[4][3][4][4][4];
193  TH1 *fHJet_EP_Aj0_EMB[4][3][4][4][4];
194  TH1 *fHJet_EP_Aj1_EMB[4][3][4][4][4];
195  TH1 *fHJet_EP_Aj2_EMB[4][3][4][4][4];
196  TH1 *fHJet_EP_Aj3_EMB[4][3][4][4][4];
197  TH1 *fHJet_EP_Aj4_EMB[4][3][4][4][4];
198 
199  private:
200  AliVEvent *fEvent;
202 
203  AliAnalysisTaskDijetHadron(const AliAnalysisTaskDijetHadron&); // not implemented
205 
206  ClassDef(AliAnalysisTaskDijetHadron, 5) // Jet-Hadron analysis task
207 };
208 #endif
TH1 * fHJet_EP_Aj3_PbPb[4][3][4][4][4]
PbPb, HjetEP, Aj2.
TH1 * fHJet_EP_Aj2_PbPb[4][3][4][4][4]
PbPb, HjetEP, Aj1.
TH1 * fHJet_EP_Aj3_MC[4][3][4][4][4]
MC, HjetEP, Aj2.
double Double_t
Definition: External.C:58
TH1 * fJet1SelectPt_BG_PbPb[4][3][4][4]
PbPb, jetDeltaEta.
Definition: External.C:260
TH2 ** fTrack_Phi_Eta_PbPb
PbPb, trackEta.
Definition: External.C:236
TH1 * fJet1Pt_PbPb[4][3][4][4]
PbPb, jetDeltaEP.
void SetLeadingHadronPtThreshold3(Double_t u3)
AliClusterContainer * fEmbCaloClustersCont
EMB tracks.
TH1 * fJet2DeltaPt[4][3][4][4]
EMB, pT - rho * area - pT(embtrack), jet1.
AliJetContainer * fMCJetsCont
PbPb Clusters.
Definition: External.C:244
TH1 ** fTrackPt_EMB
MC, trackPhi vs. trackEta.
TH1 * fJetEta_EMB[4][3]
EMB, jetPhi.
TH1 * fJetDeltaEta_PbPb[4][3][4][4]
PbPb, jetDeltaPhi.
void SetLeadingHadronPtThreshold2(Double_t u2)
TH1 * fJet1Pt_BG_PbPb[4][3][4][4]
PbPb, subleadingjetPt.
TH1 * fJetPt_MC[4][3]
PbPb, Aj(energy balance) -> Aj = (jet1-jet2)/(jet1+jet2)
Bool_t FillHistograms()
Function filling histograms.
TH1 * fJetDeltaPt[4][3]
EMB, pT - rho * area.
TH1 * fHJetDeltaPhi_Aj3_PbPb[4][3][4][4][4]
PbPb, HjetDeltaPhi, Aj2(0.2 to 0.4)
TH1 * fHJetDeltaPhi_Aj0_PbPb[4][3][4][4][4]
EMB, Aj(energy balance) -> Aj = (jet1-jet2)/(jet1+jet2)
TH1 * fHJetDeltaPhi_Aj2_MC[4][3][4][4][4]
MC, HjetDeltaPhi, Aj1(0.0 to 0.2)
TH1 * fJet1Pt_MC[4][3][4][4]
MC, jetDeltaEP.
Double_t GetDPhi(Double_t mphi, Double_t vphi)
TH1 * fJetDeltaPhi_PbPb[4][3][4][4]
PbPb, pT - rho * area, jet2.
TH1 * fHJet_EP_Aj1_MC[4][3][4][4][4]
MC, HjetEP, no Aj cut.
TH1 * fHJetDeltaPhi_Aj2_PbPb[4][3][4][4][4]
PbPb, HjetDeltaPhi, Aj1(0.0 to 0.2)
TH1 * fJet2Pt_BG_PbPb[4][3][4][4]
PbPb, pT - rho * area, jet1.
TH1 * fAj_EMB[4][3][4][4]
EMB, jet1DeltaEP.
TH1 * fHJetDeltaPhi_Aj1_MC[4][3][4][4][4]
MC, HjetDeltaPhi, no Aj cut.
AliParticleContainer * fTracksCont
PbPb Jets.
TH1 * fHJet_EP_Aj2_MC[4][3][4][4][4]
MC, HjetEP, Aj1.
AliEmcalJet * NextEmbeddedJet(Bool_t reset=kFALSE)
TH1 * fJetDeltaPhi_EMB[4][3][4][4]
EMB, pT - rho * area - pT(embtrack), jet2.
TH1 * fJet1Pt_BG_EMB[4][3][4][4]
EMB, subleadingjetPt.
Container for particles within the EMCAL framework.
Double_t GetZ(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz, const Double_t jetPx, const Double_t jetPy, const Double_t jetPz)
TH1 * fHJet_EP_Aj0_PbPb[4][3][4][4][4]
PbPb, HjetDeltaPhi, Aj4(0.6 to 0.8)
TH1 * fJetDeltaEta_MC[4][3][4][4]
MC, jetDeltaPhi.
TH1 * fHJetDeltaPhi_Aj3_EMB[4][3][4][4][4]
EMB, HjetDeltaPhi, Aj2(0.2 to 0.4)
TH1 * fJetPt_EMB[4][3]
MC, Aj(energy balance) -> Aj = (jet1-jet2)/(jet1+jet2)
TH2 * fJet1EP_PbPb[4][3][4][4]
PbPb, selectsubleadingjetPt.
TH1 * fHJetDeltaPhi_Aj0_MC[4][3][4][4][4]
PbPb, HjetEP, Aj4.
TH2 * fJet_Phi_Eta_PbPb[4][3]
PbPb, jetEta.
int Int_t
Definition: External.C:63
TH1 ** fTrackPt_PbPb
rho vs. Centrality
TH1 * fHJet_EP_Aj0_EMB[4][3][4][4][4]
EMB, HjetDeltaPhi, Aj4(0.6 to 0.8)
float Float_t
Definition: External.C:68
TH1 * fJet2Pt_BG_EMB[4][3][4][4]
EMB, pT - rho * area, jet1.
TH1 * fJetDeltaPhi_MC[4][3][4][4]
MC, subleadingjetPt.
TH1 * fHJetDeltaPhi_Aj1_EMB[4][3][4][4][4]
EMB, HjetDeltaPhi, no Aj cut.
TH1 * fJetPt_BG_EMB[4][3]
EMB, jetPhi vs. jetEta.
TH2 * fJet1EP_EMB[4][3][4][4]
EMB, selectsubleadingjetPt.
TH1 * fJet1SelectDeltaPt[4][3][4][4]
EMB, selectsubleadingjetPt.
TH1 * fHJet_EP_Aj2_EMB[4][3][4][4][4]
EMB, HjetEP, Aj1.
TH1 * fHJetDeltaPhi_Aj4_EMB[4][3][4][4][4]
EMB, HjetDeltaPhi, Aj3(0.4 to 0.6)
void SetConeEtaLimits(Float_t min, Float_t max)
TH1 * fHJet_EP_Aj4_PbPb[4][3][4][4][4]
PbPb, HjetEP, Aj3.
TH2 * fJet_Phi_Eta_MC[4][3]
MC, jetEta.
AliVEvent * fEvent
EMB, HjetEP, Aj4.
TH1 * fHJet_EP_Aj3_EMB[4][3][4][4][4]
EMB, HjetEP, Aj2.
TH1 * fJetPt_PbPb[4][3]
EMB, trackPhi vs. trackEta.
TH1 * fHJet_EP_Aj0_MC[4][3][4][4][4]
MC, HjetDeltaPhi, Aj4(0.6 to 0.8)
TH1 * fJet2Pt_MC[4][3][4][4]
MC, leadingjetPt.
TH2 * fJetDeltaEP_PbPb[4][3]
PbPb, pT - rho * area.
TH1 * fHJetDeltaPhi_Aj2_EMB[4][3][4][4][4]
EMB, HjetDeltaPhi, Aj1(0.0 to 0.2)
TH1 * fHJet_EP_Aj1_PbPb[4][3][4][4][4]
PbPb, HjetEP, no Aj cut.
void GetLeadingJets(Int_t &maxJetIndex, Int_t &max2JetIndex)
TH1 * fJet2Pt_PbPb[4][3][4][4]
PbPb, leadingjetPt.
TH1 * fJet2SelectPt_BG_PbPb[4][3][4][4]
PbPb, selectleadingjetPt.
TH1 * fJet2SelectPt_BG_EMB[4][3][4][4]
EMB, selectleadingjetPt.
AliParticleContainer * fMCTracksCont
MC jets.
TH1 * fHJet_EP_Aj1_EMB[4][3][4][4][4]
EMB, HjetEP, no Aj cut.
TH1 * fHJetDeltaPhi_Aj3_MC[4][3][4][4][4]
MC, HjetDeltaPhi, Aj2(0.2 to 0.4)
TH1 * fJetDeltaEta_EMB[4][3][4][4]
EMB, jetDeltaPhi.
AliClusterContainer * fCaloClustersCont
PbPb Tracks.
TH1 * fJet1Pt_EMB[4][3][4][4]
EMB, jetDeltaEP.
void ExecOnce()
Perform steps needed to initialize the analysis.
Definition: External.C:220
TH1 * fJetPhi_PbPb[4][3]
PbPb, jetPt.
void SetLeadingHadronPtThreshold1(Double_t u1)
Base task in the EMCAL jet framework.
Represent a jet reconstructed using the EMCal jet framework.
Definition: AliEmcalJet.h:44
AliClusterContainer * fMCCaloClustersCont
MC tracks.
TH2 * fJetDeltaEP_MC[4][3]
MC, jetPhi vs. jetEta.
TH1 * fHJetDeltaPhi_Aj4_PbPb[4][3][4][4][4]
PbPb, HjetDeltaPhi, Aj3(0.4 to 0.6)
void SetConePhiLimits(Float_t min, Float_t max)
TH1 * fJetPt_BG_PbPb[4][3]
PbPb, jetPhi vs. jetEta.
TH1 * fJet1SelectPt_BG_EMB[4][3][4][4]
EMB, jetDeltaEta.
TH1 * fJetEta_PbPb[4][3]
PbPb, jetPhi.
TH1 * fJet2Pt_EMB[4][3][4][4]
EMB, leadingjetPt.
TH2 * fJetDeltaEP_EMB[4][3]
EMB, pT - rho * area - pT(embtrack)
bool Bool_t
Definition: External.C:53
TH1 * fAj_MC[4][3][4][4]
MC, jet1DeltaEP.
TH1 * fHJet_EP_Aj4_MC[4][3][4][4][4]
MC, HjetEP, Aj3.
TH1 * fHJetDeltaPhi_Aj1_PbPb[4][3][4][4][4]
PbPb, HjetDeltaPhi, no Aj cut.
TH1 ** fTrackPt_MC
PbPb, trackPhi vs. trackEta.
TH2 * fJet1EP_MC[4][3][4][4]
MC, jetDeltaEta.
Container structure for EMCAL clusters.
TH1 * fHJet_EP_Aj4_EMB[4][3][4][4][4]
EMB, HjetEP, Aj3.
TH1 * fJet1DeltaPt[4][3][4][4]
EMB, pT - rho * area, jet2.
TH2 ** fTrack_Phi_Eta_EMB
EMB, trackEta.
TH1 * fHJetDeltaPhi_Aj4_MC[4][3][4][4][4]
MC, HjetDeltaPhi, Aj3(0.4 to 0.6)
AliJetContainer * fEmbJetsCont
MC clusters.
Container for jet within the EMCAL jet framework.
TH1 * fAj_PbPb[4][3][4][4]
PbPb, jet1DeltaEP.
Definition: External.C:196
TH1 * fHJetDeltaPhi_Aj0_EMB[4][3][4][4][4]
MC, HjetEP, Aj4.
TH2 * fJet_Phi_Eta_EMB[4][3]
EMB, jetEta.
AliParticleContainer * fEmbTracksCont
EMB jets.
TH1 * fJet2SelectDeltaPt[4][3][4][4]
EMB, selectleadingjetPt.
AliAnalysisTaskDijetHadron & operator=(const AliAnalysisTaskDijetHadron &)