AliPhysics  7f1bdba (7f1bdba)
AliEmcalJetFinder.h
Go to the documentation of this file.
1 #ifndef ALIEMCALJETFINDER_H
2 #define ALIEMCALJETFINDER_H
3 
4 // $Id$
5 
6 namespace fastjet {
7  class PseudoJet;
8 }
9 
10 class AliEmcalJet;
11 class AliJetContainer;
12 class AliFJWrapper;
13 class TNamed;
14 class TH1;
15 
16 class AliEmcalJetFinder : public TNamed
17 {
18  public:
20  AliEmcalJetFinder(const char* name);
22 
23  Bool_t FindJets();
24  Bool_t Filter(AliEmcalJet *pJet, AliJetContainer *pContJets, Double_t dVtx[3]);
25  void AddInputVector(Double_t px, Double_t py, Double_t pz);
26  void AddInputVector(Double_t px, Double_t py, Double_t pz, Double_t E);
27  void AddInputVector(Double_t px, Double_t py, Double_t pz, Int_t index);
28  void AddInputVector(Double_t px, Double_t py, Double_t pz, Double_t E, Int_t index);
29  void AddInputGhost (Double_t px, Double_t py, Double_t pz, Double_t E);
30  void FillPtHistogram(TH1* histogram);
31  void FillEtaHistogram(TH1* histogram);
32  void FillPhiHistogram(TH1* histogram);
33 
34  Double_t Nsubjettiness(AliEmcalJet *pJet, AliJetContainer *pContJets, Double_t dVtx[3], Int_t N, Int_t Algorithm, Double_t Radius, Double_t Beta, Int_t Option=0, Int_t Measure=0, Double_t Beta_SD=0, Double_t ZCut=0.1, Int_t SoftDropOn=0);
35 
36  Int_t GetJets(AliEmcalJet*& jets) {jets = fJetArray[0]; return fJetCount;}
37  AliEmcalJet* GetJet(Int_t index) {return fJetArray[index];}
38  Int_t GetNumberOfJets() {return fJetCount;}
39  void SetGhostArea(Double_t val) {fGhostArea = val;}
40  void SetRadius(Double_t val) {fRadius = val;}
41  void SetJetAlgorithm(Int_t val) {fJetAlgorithm = val;}
42  void SetRecombSheme(Int_t val) {fRecombScheme = val;}
43  void SetTrackMaxEta(Double_t val) {fTrackMaxEta = val;}
44  void SetJetMaxEta(Double_t val) {fJetMaxEta = val;}
45  void SetJetMinPt(Double_t val) {fJetMinPt = val;}
46  void SetJetMinArea(Double_t val) {fJetMinArea = val;}
47 
48  void SetManualIndex(Int_t val) {fInputVectorIndex = val;}
49  private:
50  // General properties
51  AliFJWrapper* fFastjetWrapper; // Interface object to fastjet
52  Int_t fInputVectorIndex; // Current index of input vectors (by default: count of vectors)
53  Int_t fJetCount; // Found jets within the given acceptances
54  std::vector<AliEmcalJet*> fJetArray; // Internal array for the jets
55  // Settings for fastjet
56  Double_t fGhostArea; // setting for ghost area in FJ
57  Double_t fRadius; // Radius parameter
58  Int_t fJetAlgorithm; // var for algorithm (0=antikt, 1=kt)
59  Int_t fRecombScheme; // Recombination scheme for Fastjet
60  Double_t fTrackMaxEta; // cut for |track-eta| < fTrackMaxEta
61  // Jet cuts
62  Double_t fJetMaxEta; // cut for |jet-eta| < fJetMaxEta
63  Double_t fJetMinPt; // cut for jet-pT > fJetMinPt
64  Double_t fJetMinArea; // cut for jet-area > fJetMinArea
65 
66  AliEmcalJetFinder(const AliEmcalJetFinder& obj); // copy constructor
67  AliEmcalJetFinder& operator=(const AliEmcalJetFinder& other); // assignment
68 
69  ClassDef(AliEmcalJetFinder, 2); // Lightweight fastjet implementation outside analysis tasks
70 };
71 
72 #endif
void SetRadius(Double_t val)
double Double_t
Definition: External.C:58
void SetJetMinArea(Double_t val)
void SetJetMinPt(Double_t val)
void SetTrackMaxEta(Double_t val)
void SetGhostArea(Double_t val)
void SetRecombSheme(Int_t val)
void SetJetAlgorithm(Int_t val)
int Int_t
Definition: External.C:63
void SetManualIndex(Int_t val)
Definition: Option.C:68
void SetJetMaxEta(Double_t val)
AliEmcalJet * GetJet(Int_t index)
AliFJWrapper * fFastjetWrapper
Represent a jet reconstructed using the EMCal jet framework.
Definition: AliEmcalJet.h:51
std::vector< AliEmcalJet * > fJetArray
bool Bool_t
Definition: External.C:53
Int_t GetJets(AliEmcalJet *&jets)
Container for jet within the EMCAL jet framework.
Definition: External.C:196