AliPhysics  b095172 (b095172)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliEmcalJet.h
Go to the documentation of this file.
1 #ifndef ALIEMCALJET_H
2 #define ALIEMCALJET_H
3 /* Copyright(c) 1998-2016, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 #include <vector>
7 #include <algorithm>
8 #include <utility>
9 
10 #include <Riosfwd.h>
11 #include <TArrayS.h>
12 #include <TMath.h>
13 #include <TClonesArray.h>
14 #include <TVector2.h>
15 #include <TLorentzVector.h>
16 #include <TString.h>
17 
18 #include <AliVParticle.h>
19 #include <AliVCluster.h>
20 #include <AliVEvent.h>
21 
23 
44 class AliEmcalJet : public AliVParticle
45 {
46  public:
47 
55  kTPC = 1<<0,
56  kTPCfid = 1<<1,
57  kEMCAL = 1<<2,
58  kEMCALfid = 1<<3,
59  kDCAL = 1<<4,
60  kDCALfid = 1<<5,
61  kUser = 1<<6
62  };
63 
68  enum EFlavourTag {
69  kDStar = 1<<0,
70  kD0 = 1<<1,
71  kSig1 = 1<<2,
72  kSig2 = 1<<3,
73  kBckgrd1 = 1<<4,
74  kBckgrd2 = 1<<5,
75  kBckgrd3 = 1<<6
76  };
77 
78  AliEmcalJet();
81  AliEmcalJet(const AliEmcalJet &jet);
82  AliEmcalJet& operator=(const AliEmcalJet &jet);
83  virtual ~AliEmcalJet();
84  friend std::ostream &operator<<(std::ostream &in, const AliEmcalJet &jet);
85  Int_t Compare(const TObject* obj) const;
86  std::ostream &Print(std::ostream &in) const;
87  TString toString() const;
88 
89  // Implementation of AliVParticle interface
90  Double_t Px() const { return fPt*TMath::Cos(fPhi) ; }
91  Double_t Py() const { return fPt*TMath::Sin(fPhi) ; }
92  Double_t Pz() const { return fPt*TMath::SinH(fEta); }
93  Double_t Pt() const { return fPt ; }
94  Double_t P() const { return fPt*TMath::CosH(fEta); }
95  Bool_t PxPyPz(Double_t p[3]) const { p[0]=Px();p[1]=Py();p[2]=Pz(); return kTRUE; }
96  Double_t Xv() const { return 0.; }
97  Double_t Yv() const { return 0.; }
98  Double_t Zv() const { return 0.; }
99  Bool_t XvYvZv(Double_t x[3]) const { x[0]=0;x[1]=0;x[2]=0 ; return kTRUE; }
100  Double_t OneOverPt() const { return 1./fPt ; }
101  Double_t Phi() const { return fPhi ; }
102  Double_t Theta() const { return 2*TMath::ATan(TMath::Exp(-fEta)) ; }
103  Double_t E() const { Double_t p=P(); return TMath::Sqrt(fM*fM+p*p); }
104  Double_t M() const { return fM ; }
105  Double_t Eta() const { return fEta ; }
106  Double_t Y() const { Double_t e = E(); Double_t pz = Pz(); return 0.5*TMath::Log((e+pz)/(e-pz)); }
107  Short_t Charge() const { return 0 ; }
108  Int_t GetLabel() const { return fLabel ; }
109  Int_t PdgCode() const { return 0; }
110  const Double_t *PID() const { return 0; }
111 
112  // Other kinematic and jet properties
113  Double_t Phi_0_2pi() const { return TVector2::Phi_0_2pi(fPhi); }
114  Double_t Area() const { return fArea ; }
115  Double_t AreaPt() const { return fArea ; }
116  Double_t AreaEta() const { return fAreaEta ; }
117  Double_t AreaPhi() const { return fAreaPhi ; }
118  Double_t AreaE() const { return fAreaE ; }
119  Double_t AreaEmc() const { return fAreaEmc ; }
120  Bool_t AxisInEmcal() const { return fAxisInEmcal ; }
121  Short_t ClusterAt(Int_t idx) const { return fClusterIDs.At(idx) ; }
122  UShort_t GetNumberOfClusters() const { return fClusterIDs.GetSize() ; }
123  UShort_t GetNumberOfTracks() const { return fTrackIDs.GetSize() ; }
125  Double_t FracEmcalArea() const { return fAreaEmc/fArea ; }
126  Bool_t IsInsideEmcal() const { return (fAreaEmc/fArea>0.999) ; }
127  Bool_t IsInEmcal() const { return (Bool_t)(fAreaEmc > 0) ; }
128  Bool_t IsMC() const { return (Bool_t)(MCPt() > 0) ; }
129  Bool_t IsSortable() const { return kTRUE ; }
130  Double_t MaxNeutralPt() const { return fMaxNPt ; }
131  Double_t MaxChargedPt() const { return fMaxCPt ; }
132  Double_t NEF() const { return fNEF ; }
133  UShort_t Nn() const { return fNn ; }
134  UShort_t Nch() const { return fNch ; }
135  UShort_t N() const { return Nch()+Nn() ; }
136  Int_t NEmc() const { return fNEmc ; }
137  Double_t MCPt() const { return fMCPt ; }
138  Double_t MaxClusterPt() const { return MaxNeutralPt() ; }
139  Double_t MaxTrackPt() const { return MaxChargedPt() ; }
140  Double_t MaxPartPt() const { return fMaxCPt < fMaxNPt ? fMaxNPt : fMaxCPt; }
141  Double_t PtEmc() const { return fPtEmc ; }
142  Double_t PtSub() const { return fPtSub ; }
143  Double_t PtSubVect() const { return fPtSubVect ; }
144  Short_t TrackAt(Int_t idx) const { return fTrackIDs.At(idx) ; }
145 
146  // Background subtraction
147  Double_t PtSub(Double_t rho, Bool_t save = kFALSE) ;
148  Double_t PtSubVect(Double_t rho, Bool_t save = kFALSE) ;
149  TLorentzVector SubtractRhoVect(Double_t rho, Bool_t save = kFALSE);
150 
151  // Jet constituents
152  AliVCluster *ClusterAt(Int_t idx, TClonesArray *ca) const;
153  Int_t ContainsCluster(AliVCluster* cluster, TClonesArray* clusters) const;
154  Int_t ContainsCluster(Int_t ic) const;
155  AliVCluster *GetLeadingCluster(TClonesArray *clusters) const;
156  AliVParticle *TrackAt(Int_t idx, TClonesArray *ta) const;
157  Int_t ContainsTrack(AliVParticle* track, TClonesArray* tracks) const;
158  Int_t ContainsTrack(Int_t it) const;
159  AliVParticle *GetLeadingTrack(TClonesArray *tracks) const;
160 
161  // Fragmentation function
162  Double_t GetZ(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz) const;
163  Double_t GetZ(const AliVParticle* trk ) const;
164  Double_t GetXi(const AliVParticle* trk ) const;
165  Double_t GetXi(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz) const;
166 
167  // Other service methods
168  void GetMomentum(TLorentzVector &vec) const;
169  Double_t DeltaR(const AliVParticle* part) const;
170 
171  // Setters
172  void SetLabel(Int_t l) { fLabel = l; }
173  void SetArea(Double_t a) { fArea = a; }
174  void SetAreaEta(Double_t a) { fAreaEta = a; }
175  void SetAreaPhi(Double_t a) { fAreaPhi = TVector2::Phi_0_2pi(a); }
176  void SetAreaE(Double_t a) { fAreaE = a; }
177  void SetAreaEmc(Double_t a) { fAreaEmc = a; }
179  void SetMaxNeutralPt(Double32_t t) { fMaxNPt = t; }
180  void SetMaxChargedPt(Double32_t t) { fMaxCPt = t; }
181  void SetNEF(Double_t nef) { fNEF = nef; }
183  void SetNumberOfTracks(Int_t n) { fTrackIDs.Set(n); }
184  void SetNumberOfCharged(Int_t n) { fNch = n; }
185  void SetNumberOfNeutrals(Int_t n) { fNn = n; }
186  void SetMCPt(Double_t p) { fMCPt = p; }
187  void SetNEmc(Int_t n) { fNEmc = n; }
188  void SetPtEmc(Double_t pt) { fPtEmc = pt; }
189  void SetPtSub(Double_t ps) { fPtSub = ps; }
190  void SetPtSubVect(Double_t ps) { fPtSubVect = ps; }
191  void AddClusterAt(Int_t clus, Int_t idx){ fClusterIDs.AddAt(clus, idx); }
192  void AddTrackAt(Int_t track, Int_t idx) { fTrackIDs.AddAt(track, idx); }
193  void Clear(Option_t */*option*/="");
194 
195  // Sorting methods
196  void SortConstituents();
197  std::vector<int> GetPtSortedTrackConstituentIndexes(TClonesArray *tracks) const;
198 
199  // Trigger
200  Bool_t IsTriggerJet(UInt_t trigger=AliVEvent::kEMCEJE) const { return (Bool_t)((fTriggers & trigger) != 0); }
201  void SetTrigger(UInt_t trigger) { fTriggers = trigger; }
202  void AddTrigger(UInt_t trigger) { fTriggers |= trigger; }
203 
204  // Matching
205  void ResetMatching();
210  AliEmcalJet* ClosestJet() const { return fClosestJets[0] ; }
212  AliEmcalJet* SecondClosestJet() const { return fClosestJets[1] ; }
214  AliEmcalJet* MatchedJet() const { return fMatched < 2 ? fClosestJets[fMatched] : 0; }
216 
217  // Jet tagging
219  void SetTagStatus(Int_t i) { fTagStatus = i ; }
220  AliEmcalJet* GetTaggedJet() const { return fTaggedJet ; }
221  Int_t GetTagStatus() const { return fTagStatus ; }
222 
223  // Ghosts
224  void AddGhost(const Double_t dPx, const Double_t dPy, const Double_t dPz, const Double_t dE);
225  Bool_t HasGhost() const { return fHasGhost; }
226  const std::vector<TLorentzVector> GetGhosts() const { return fGhosts ; }
227 
228  // Debug printouts
229  void Print(Option_t* /*opt*/ = "") const;
230  void PrintConstituents(TClonesArray* tracks, TClonesArray* clusters) const;
231 
232  //heavy-flavor jets
233  Int_t GetFlavour() const { return fFlavourTagging; }
234  void AddFlavourTag(Int_t tag) { fFlavourTagging |= tag; }
235  void SetFlavour(Int_t flavour) { fFlavourTagging = flavour; }
236  Bool_t TestFlavourTag(Int_t tag) const { return (Bool_t)((tag & fFlavourTagging) !=0); }
238  void AddFlavourTrack(AliVParticle* hftrack);
239  AliVParticle *GetFlavourTrack(Int_t i=0) const;
240  Double_t GetFlavourTrackZ(Int_t i=0) const;
241  AliVParticle *RemoveFlavourTrack(Int_t i=0) ;
242 
243  // Jet shape
247 
248  // Jet geometrical acceptance
251 
252  protected:
254  Double32_t fPt; //[0,0,12]
256  Double32_t fEta; //[-1,1,12]
258  Double32_t fPhi; //[0,6.3,12]
260  Double32_t fM; //[0,0,8]
262  Double32_t fNEF; //[0,1,8]
264  Double32_t fArea; //[0,0,12]
266  Double32_t fAreaEta; //[0,0,12]
268  Double32_t fAreaPhi; //[0,0,12]
270  Double32_t fAreaE; //[0,0,12]
272  Double32_t fAreaEmc; //[0,0,12]
276  Double32_t fMaxCPt; //[0,0,12]
279  Double32_t fMaxNPt; //[0,0,12]
280  Double32_t fMCPt;
283  Double32_t fPtEmc; //[0,0,12]
289  Double32_t fClosestJetsDist[2];
298 
300  std::vector<TLorentzVector> fGhosts;
301 
304 
305  private:
310  struct sort_descend {
311  // first value of the pair is Pt and the second is entry index
312  bool operator () (const std::pair<Double_t, Int_t>& p1, const std::pair<Double_t, Int_t>& p2) { return p1.first > p2.first ; }
313  };
314 
316  ClassDef(AliEmcalJet,18);
318 };
319 
320 std::ostream &operator<<(std::ostream &in, const AliEmcalJet &jet);
321 #endif
TArrayI fTrackIDs
Array containing ids of track constituents.
Definition: AliEmcalJet.h:287
Double_t AreaEmc() const
Definition: AliEmcalJet.h:119
void SetMaxNeutralPt(Double32_t t)
Definition: AliEmcalJet.h:179
Int_t PdgCode() const
Definition: AliEmcalJet.h:109
void SetSecondClosestJet(AliEmcalJet *j, Double_t d)
Definition: AliEmcalJet.h:207
void SetTagStatus(Int_t i)
Definition: AliEmcalJet.h:219
Double_t fPtSubVect
! Background vector subtracted pt (not stored set from outside)
Definition: AliEmcalJet.h:295
Int_t NEmc() const
Definition: AliEmcalJet.h:136
Short_t Charge() const
Definition: AliEmcalJet.h:107
void AddFlavourTag(Int_t tag)
Definition: AliEmcalJet.h:234
Double_t Area() const
Definition: AliEmcalJet.h:114
void AddTrackAt(Int_t track, Int_t idx)
Definition: AliEmcalJet.h:192
Generic signal 2.
Definition: AliEmcalJet.h:72
Bool_t XvYvZv(Double_t x[3]) const
Definition: AliEmcalJet.h:99
double Double_t
Definition: External.C:58
AliEmcalJet * GetTaggedJet() const
Definition: AliEmcalJet.h:220
Double_t Xv() const
Definition: AliEmcalJet.h:96
Int_t fTagStatus
! Status of tagging -1: NA 0: not tagged 1: tagged
Definition: AliEmcalJet.h:293
Bool_t IsMC() const
Definition: AliEmcalJet.h:128
void SetTaggedJet(AliEmcalJet *j)
Definition: AliEmcalJet.h:218
Double_t GetXi(const AliVParticle *trk) const
Double_t MCPt() const
Definition: AliEmcalJet.h:137
Simple C structure to allow sorting in descending order.
Definition: AliEmcalJet.h:310
Double32_t fAreaE
Jet temporal area component.
Definition: AliEmcalJet.h:270
AliEmcalJet * ClosestJet() const
Definition: AliEmcalJet.h:210
Jet is tagged to contain a D* meson.
Definition: AliEmcalJet.h:69
Int_t GetTagStatus() const
Definition: AliEmcalJet.h:221
Double_t ClosestJetDistance() const
Definition: AliEmcalJet.h:211
TArrayI fClusterIDs
Array containing ids of cluster constituents.
Definition: AliEmcalJet.h:286
DCal acceptance.
Definition: AliEmcalJet.h:59
Bool_t AxisInEmcal() const
Definition: AliEmcalJet.h:120
void ClearFlavourTracks()
Definition: AliEmcalJet.h:237
Double_t Eta() const
Definition: AliEmcalJet.h:105
Int_t fLabel
! Label to inclusive jet for constituent subtracted jet
Definition: AliEmcalJet.h:297
Double_t fPtSub
! Background subtracted pt (not stored set from outside)
Definition: AliEmcalJet.h:294
Int_t GetFlavour() const
Definition: AliEmcalJet.h:233
Double_t Py() const
Definition: AliEmcalJet.h:91
void Clear(Option_t *="")
Double_t Phi() const
Definition: AliEmcalJet.h:101
JetAcceptanceType
Bit definition for jet geometry acceptance. Cut implemented in AliJetContainer by comparing jet's bit...
Definition: AliEmcalJet.h:54
Bool_t fHasGhost
! Whether ghost particle are included within the constituents
Definition: AliEmcalJet.h:299
void AddClusterAt(Int_t clus, Int_t idx)
Definition: AliEmcalJet.h:191
AliEmcalJet * MatchedJet() const
Definition: AliEmcalJet.h:214
Double_t AreaE() const
Definition: AliEmcalJet.h:118
Bool_t IsSortable() const
Definition: AliEmcalJet.h:129
Int_t GetLabel() const
Definition: AliEmcalJet.h:108
void SetArea(Double_t a)
Definition: AliEmcalJet.h:173
AliEmcalJetShapeProperties * fJetShapeProperties
! Pointer to the jet shape properties
Definition: AliEmcalJet.h:302
Full acceptance, i.e. no acceptance cut applied – left to user.
Definition: AliEmcalJet.h:61
Double_t FracEmcalArea() const
Definition: AliEmcalJet.h:125
Double_t MaxChargedPt() const
Definition: AliEmcalJet.h:131
AliEmcalJet & operator=(const AliEmcalJet &jet)
Double_t GetFlavourTrackZ(Int_t i=0) const
void SetAreaE(Double_t a)
Definition: AliEmcalJet.h:176
friend std::ostream & operator<<(std::ostream &in, const AliEmcalJet &jet)
void SetMCPt(Double_t p)
Definition: AliEmcalJet.h:186
Double_t E() const
Definition: AliEmcalJet.h:103
void SetPtSubVect(Double_t ps)
Definition: AliEmcalJet.h:190
UShort_t Nch() const
Definition: AliEmcalJet.h:134
AliVParticle * GetFlavourTrack(Int_t i=0) const
void SetLabel(Int_t l)
Definition: AliEmcalJet.h:172
Double_t AreaPt() const
Definition: AliEmcalJet.h:115
UShort_t GetNumberOfConstituents() const
Definition: AliEmcalJet.h:124
AliVParticle * RemoveFlavourTrack(Int_t i=0)
Int_t ContainsCluster(AliVCluster *cluster, TClonesArray *clusters) const
void SetMatchedToSecondClosest(UShort_t m)
Definition: AliEmcalJet.h:209
UShort_t GetNumberOfTracks() const
Definition: AliEmcalJet.h:123
AliEmcalJetShapeProperties * GetShapeProperties()
Definition: AliEmcalJet.h:245
Double_t Px() const
Definition: AliEmcalJet.h:90
std::ostream & Print(std::ostream &in) const
void ResetMatching()
void GetMomentum(TLorentzVector &vec) const
Double32_t fMCPt
Pt from MC particles contributing to the jet.
Definition: AliEmcalJet.h:280
Double32_t fMaxNPt
Pt of maximum neutral constituent.
Definition: AliEmcalJet.h:279
TPC fiducial acceptance (each eta edge narrowed by jet R)
Definition: AliEmcalJet.h:56
void SetJetAcceptanceType(UInt_t type)
Definition: AliEmcalJet.h:249
Double32_t fM
Jet mass.
Definition: AliEmcalJet.h:260
Double_t AreaEta() const
Definition: AliEmcalJet.h:116
Short_t ClusterAt(Int_t idx) const
Definition: AliEmcalJet.h:121
Bool_t IsInEmcal() const
Definition: AliEmcalJet.h:127
int Int_t
Definition: External.C:63
UShort_t GetNumberOfClusters() const
Definition: AliEmcalJet.h:122
AliVParticle * GetLeadingTrack(TClonesArray *tracks) const
TPC acceptance.
Definition: AliEmcalJet.h:55
unsigned int UInt_t
Definition: External.C:33
UShort_t GetMatchingType() const
Definition: AliEmcalJet.h:215
Double32_t fAreaPhi
Jet phi area.
Definition: AliEmcalJet.h:268
Double_t Yv() const
Definition: AliEmcalJet.h:97
UInt_t GetJetAcceptanceType() const
Definition: AliEmcalJet.h:250
void AddFlavourTrack(AliVParticle *hftrack)
EFlavourTag
Bit definition for the flavor tagging.
Definition: AliEmcalJet.h:68
EMCal acceptance.
Definition: AliEmcalJet.h:57
UShort_t fMatched
! 0 or 1 if it is matched with one of the closest jets; 2 if it is not matched
Definition: AliEmcalJet.h:290
std::vector< TLorentzVector > fGhosts
! Vector containing the ghost particles
Definition: AliEmcalJet.h:300
Double_t OneOverPt() const
Definition: AliEmcalJet.h:100
TString toString() const
Double_t PtSubVect() const
Definition: AliEmcalJet.h:143
Double32_t fArea
Jet transverse area.
Definition: AliEmcalJet.h:264
Double_t Theta() const
Definition: AliEmcalJet.h:102
Double_t MaxTrackPt() const
Definition: AliEmcalJet.h:139
AliVCluster * GetLeadingCluster(TClonesArray *clusters) const
AliEmcalJet * fTaggedJet
! Jet tagged to this jet
Definition: AliEmcalJet.h:292
Int_t ContainsTrack(AliVParticle *track, TClonesArray *tracks) const
Double_t Phi_0_2pi() const
Definition: AliEmcalJet.h:113
TLorentzVector SubtractRhoVect(Double_t rho, Bool_t save=kFALSE)
Generic background 1.
Definition: AliEmcalJet.h:73
virtual ~AliEmcalJet()
Double_t PtSub() const
Definition: AliEmcalJet.h:142
Double_t Y() const
Definition: AliEmcalJet.h:106
Double32_t fAreaEta
Jet eta area.
Definition: AliEmcalJet.h:266
void SetPtSub(Double_t ps)
Definition: AliEmcalJet.h:189
void SetMaxChargedPt(Double32_t t)
Definition: AliEmcalJet.h:180
void SetNEF(Double_t nef)
Definition: AliEmcalJet.h:181
const Double_t * PID() const
Definition: AliEmcalJet.h:110
Double_t MaxNeutralPt() const
Definition: AliEmcalJet.h:130
void AddGhost(const Double_t dPx, const Double_t dPy, const Double_t dPz, const Double_t dE)
Double_t GetZ(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz) const
void SetNEmc(Int_t n)
Definition: AliEmcalJet.h:187
Double_t PtEmc() const
Definition: AliEmcalJet.h:141
Int_t fFlavourTagging
Tag jet with a flavor (use bits defined in enum EFlavourTag)
Definition: AliEmcalJet.h:274
AliEmcalJet * SecondClosestJet() const
Definition: AliEmcalJet.h:212
Double_t DeltaR(const AliVParticle *part) const
UShort_t N() const
Definition: AliEmcalJet.h:135
short Short_t
Definition: External.C:23
bool operator()(const std::pair< Double_t, Int_t > &p1, const std::pair< Double_t, Int_t > &p2)
Definition: AliEmcalJet.h:312
Double_t AreaPhi() const
Definition: AliEmcalJet.h:117
UInt_t fJetAcceptanceType
! Jet acceptance type (stored bitwise)
Definition: AliEmcalJet.h:303
Double_t Pt() const
Definition: AliEmcalJet.h:93
Double32_t fPtEmc
Pt in EMCAL acceptance.
Definition: AliEmcalJet.h:284
Bool_t HasGhost() const
Definition: AliEmcalJet.h:225
void SetNumberOfCharged(Int_t n)
Definition: AliEmcalJet.h:184
This class contains the derivative subtraction operators for jet shapes.
void SetAreaEta(Double_t a)
Definition: AliEmcalJet.h:174
Jet is tagged to contain a D0 meson.
Definition: AliEmcalJet.h:70
Double32_t fPt
Jet transverse momentum.
Definition: AliEmcalJet.h:254
Double_t P() const
Definition: AliEmcalJet.h:94
std::ostream & operator<<(std::ostream &in, const AliEmcalJet &jet)
Bool_t IsInsideEmcal() const
Definition: AliEmcalJet.h:126
void SetClosestJet(AliEmcalJet *j, Double_t d)
Definition: AliEmcalJet.h:206
Double32_t fEta
Jet pseudo-rapidity.
Definition: AliEmcalJet.h:256
Double32_t fMaxCPt
Pt of maximum charged constituent.
Definition: AliEmcalJet.h:277
Short_t TrackAt(Int_t idx) const
Definition: AliEmcalJet.h:144
Double_t SecondClosestJetDistance() const
Definition: AliEmcalJet.h:213
Bool_t TestFlavourTag(Int_t tag) const
Definition: AliEmcalJet.h:236
Double32_t fAreaEmc
Area on EMCAL surface (determined by ghosts in EMCal acceptance)
Definition: AliEmcalJet.h:272
UShort_t Nn() const
Definition: AliEmcalJet.h:133
Double_t MaxClusterPt() const
Definition: AliEmcalJet.h:138
Represent a jet reconstructed using the EMCal jet framework.
Definition: AliEmcalJet.h:44
Int_t fNn
Number of neutral constituents.
Definition: AliEmcalJet.h:281
void SetNumberOfTracks(Int_t n)
Definition: AliEmcalJet.h:183
Bool_t PxPyPz(Double_t p[3]) const
Definition: AliEmcalJet.h:95
unsigned short UShort_t
Definition: External.C:28
Double_t Pz() const
Definition: AliEmcalJet.h:92
const std::vector< TLorentzVector > GetGhosts() const
Definition: AliEmcalJet.h:226
void SetTrigger(UInt_t trigger)
Definition: AliEmcalJet.h:201
void SetFlavour(Int_t flavour)
Definition: AliEmcalJet.h:235
const char Option_t
Definition: External.C:48
UInt_t fTriggers
! Triggers that the jet might have fired (AliVEvent::EOfflineTriggerTypes)
Definition: AliEmcalJet.h:296
Bool_t fAxisInEmcal
Whether the jet axis is inside the EMCAL acceptance.
Definition: AliEmcalJet.h:273
void SortConstituents()
Int_t fNEmc
Number of constituents in EMCAL acceptance.
Definition: AliEmcalJet.h:285
void CreateShapeProperties()
Definition: AliEmcalJet.h:246
Generic signal 1.
Definition: AliEmcalJet.h:71
Generic background 2.
Definition: AliEmcalJet.h:74
Double32_t fPhi
Jet axis azimuthal angle.
Definition: AliEmcalJet.h:258
DCal fiducial acceptance (each eta, phi edge narrowed by jet R)
Definition: AliEmcalJet.h:60
AliEmcalJet * fClosestJets[2]
! If this is MC it contains the two closest detector level jets in order of distance and viceversa ...
Definition: AliEmcalJet.h:288
bool Bool_t
Definition: External.C:53
AliEmcalJetShapeProperties * GetShapeProperties() const
Definition: AliEmcalJet.h:244
void AddTrigger(UInt_t trigger)
Definition: AliEmcalJet.h:202
Double_t NEF() const
Definition: AliEmcalJet.h:132
void SetAreaPhi(Double_t a)
Definition: AliEmcalJet.h:175
void SetPtEmc(Double_t pt)
Definition: AliEmcalJet.h:188
Bool_t IsTriggerJet(UInt_t trigger=AliVEvent::kEMCEJE) const
Definition: AliEmcalJet.h:200
Double32_t fNEF
Jet Neutral Energy Fraction.
Definition: AliEmcalJet.h:262
Double32_t fClosestJetsDist[2]
! Distance from the two closest jets
Definition: AliEmcalJet.h:289
UShort_t fMatchingType
! Matching type
Definition: AliEmcalJet.h:291
Double_t M() const
Definition: AliEmcalJet.h:104
EMCal fiducial acceptance (each eta, phi edge narrowed by jet R)
Definition: AliEmcalJet.h:58
Int_t Compare(const TObject *obj) const
Double_t MaxPartPt() const
Definition: AliEmcalJet.h:140
Generic background 3.
Definition: AliEmcalJet.h:75
void SetMatchedToClosest(UShort_t m)
Definition: AliEmcalJet.h:208
void SetNumberOfClusters(Int_t n)
Definition: AliEmcalJet.h:182
std::vector< int > GetPtSortedTrackConstituentIndexes(TClonesArray *tracks) const
Double_t Zv() const
Definition: AliEmcalJet.h:98
void SetAxisInEmcal(Bool_t b)
Definition: AliEmcalJet.h:178
TObjArray * fFlavourTracks
Definition: AliEmcalJet.h:275
void SetAreaEmc(Double_t a)
Definition: AliEmcalJet.h:177
void PrintConstituents(TClonesArray *tracks, TClonesArray *clusters) const
void SetNumberOfNeutrals(Int_t n)
Definition: AliEmcalJet.h:185