AliPhysics  857879d (857879d)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskEmcalJetShapesMC.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKEMCALJETSHAPESMC_H
2 #define ALIANALYSISTASKEMCALJETSHAPESMC_H
3 
4 
15 
16 class TH1;
17 class TH2;
18 class TH3;
19 class TH3F;
20 class TTree;
21 class THnSparse;
22 class TClonesArray;
23 class TArrayI;
24 class AliAnalysisManager;
25 class AliJetContainer;
26 class AliEmcalJetFinder;
27 class AliFJWrapper;
28 
29 
30 
32 #include "AliFJWrapper.h"
33 #include "AliClusterContainer.h"
34 
35 
37  public:
38 
39  enum JetShapeType {
41  };
42  enum JetShapeSub {
43  kNoSub = 0,
44  kConstSub = 1,
45  kDerivSub = 2
46  };
49  kRecoil = 1
50  };
51 
55  };
56 
58  AliAnalysisTaskEmcalJetShapesMC(const char *name);
60 
62  void Terminate(Option_t *option);
63 
64  //Setters
71  void SetRMatching(Float_t f) { fRMatching = f ;}
72  void SetJetRadius(Float_t f) { fJetRadius = f ;}
75  void SetPtTriggerSelections(Float_t minpT, Float_t maxpT) { fminpTTrig = minpT; fmaxpTTrig = maxpT; }
81  void SetMinCentrality(Float_t t) { fCentMin = t ; }
82  void SetMaxCentrality(Float_t t) { fCentMax = t ; }
84  void SetHolePos(Float_t poshole) { fHolePos = poshole; }
85  void SetHoleWidth(Float_t holewidth) { fHoleWidth = holewidth; }
87 
88 
89 
90  protected:
92  Bool_t Run();
94 
95  Float_t GetJetMass(AliEmcalJet *jet,Int_t jetContNb=0);
96  Float_t Angularity(AliEmcalJet *jet, Int_t jetContNb=0);
97  Float_t GetJetAngularity(AliEmcalJet *jet, Int_t jetContNb=0);
98  Float_t PTD(AliEmcalJet *jet, Int_t jetContNb=0);
99  Float_t GetJetpTD(AliEmcalJet *jet, Int_t jetContNb=0);
100  Float_t Circularity(AliEmcalJet *jet, Int_t jetContNb=0);
101  Float_t GetJetCircularity(AliEmcalJet *jet, Int_t jetContNb=0);
102  Float_t LeSub(AliEmcalJet *jet, Int_t jetContNb=0);
103  Float_t GetJetLeSub(AliEmcalJet *jet, Int_t jetContNb=0);
105  Float_t GetSigma2(AliEmcalJet *jet, Int_t jetContNb=0);
106  Float_t Sigma2(AliEmcalJet *jet, Int_t jetContNb=0);
107  void NTValues(AliEmcalJet *jet, Int_t jetContNb, Float_t* nTFractions);
108  void SoftDrop(AliEmcalJet *fJet,AliJetContainer *fJetCont, double zcut, double beta, Int_t ReclusterAlgo);
109  AliEmcalJetFinder* Recluster(AliEmcalJet *Jet, Int_t JetContNb, Double_t JetRadius, Double_t SubJetRadius, Double_t SubJetMinPt, Int_t Algorithm, const char* Name);
110 
111  //Double_t NSubJettiness(AliEmcalJet *Jet, Int_t JetContNb, AliEmcalJetFinder *Reclusterer, Int_t N, Int_t A, Int_t B);
113 
114  Double_t GetSubjetFraction(AliEmcalJet *Jet, Int_t JetContNb, Double_t JetRadius, AliEmcalJetFinder *Reclusterer);
115 
116  Float_t CoreFrac(AliEmcalJet *jet, Int_t jetContNb=0);
117  Float_t GetJetCoreFrac(AliEmcalJet *jet, Int_t jetContNb=0);
118 
119 
120  Double_t fjNSubJettiness(AliEmcalJet *Jet, Int_t JetContNb, Int_t N, Int_t Algorithm, Double_t Beta, Int_t Option);
121 
122 
123  Int_t SelectTrigger(Float_t minpT, Float_t maxpT);
125 
126  Int_t fContainer; // jets to be analyzed 0 for Base, 1 for subtracted.
127  Float_t fMinFractionShared; // only fill histos for jets if shared fraction larger than X
128  JetShapeType fJetShapeType; // jet type to be used
129  JetShapeSub fJetShapeSub; // jet subtraction to be used
130  JetSelectionType fJetSelection; // Jet selection: inclusive/recoil jet
131  Float_t fShapesVar[33]; // jet shapes used for the tagging
136  Int_t fSelectedShapes; //chose set of shapes
137  Float_t fminpTTrig; //min - max pT for trigger particle in case of recoil jet
139  Float_t fangWindowRecoil; //angular window for btb recoil analysis
140  Int_t fSemigoodCorrect; //if==1 we run over semigood runs
141  Float_t fHolePos; //position in radians of the bad TPC sector
142  Float_t fHoleWidth; //width of the hole in radians
143  Bool_t fCentSelectOn; // switch on/off centrality selection
144  Float_t fCentMin; // min centrality value
145  Float_t fCentMax; // max centrality value
146  Bool_t fOneConstSelectOn; // switch on/off one constituent selection
148 
149 
155  TH1F *fPtJet;//
157  TH1F *fhPt;//
158  TH1F *fhPhi;//
160 
162 
163  private:
166 
168 };
169 #endif
170 
Float_t GetSigma2(AliEmcalJet *jet, Int_t jetContNb=0)
Float_t GetJetMass(AliEmcalJet *jet, Int_t jetContNb=0)
double Double_t
Definition: External.C:58
Definition: External.C:260
Definition: External.C:236
Definition: External.C:244
TCanvas * c
Definition: TestFitELoss.C:172
Float_t CoreFrac(AliEmcalJet *jet, Int_t jetContNb=0)
Float_t GetJetCircularity(AliEmcalJet *jet, Int_t jetContNb=0)
Float_t GetJetpTD(AliEmcalJet *jet, Int_t jetContNb=0)
Float_t GetJetCoreFrac(AliEmcalJet *jet, Int_t jetContNb=0)
Double_t fjNSubJettiness(AliEmcalJet *Jet, Int_t JetContNb, Int_t N, Int_t Algorithm, Double_t Beta, Int_t Option)
int Int_t
Definition: External.C:63
Float_t GetJetNumberOfConstituents(AliEmcalJet *jet, Int_t jetContNb=0)
float Float_t
Definition: External.C:68
Task to store and correlate the MC shapes.
TTree * fTreeObservableTagging
! Tree with tagging variables subtracted MC or true MC or raw
Double_t RelativePhi(Double_t mphi, Double_t vphi)
Bool_t Run()
Run function. This is the core function of the analysis and contains the user code. Therefore users have to implement this function.
Double_t GetSubjetFraction(AliEmcalJet *Jet, Int_t JetContNb, Double_t JetRadius, AliEmcalJetFinder *Reclusterer)
void SoftDrop(AliEmcalJet *fJet, AliJetContainer *fJetCont, double zcut, double beta, Int_t ReclusterAlgo)
Definition: Option.C:68
AliEmcalJetFinder * Recluster(AliEmcalJet *Jet, Int_t JetContNb, Double_t JetRadius, Double_t SubJetRadius, Double_t SubJetMinPt, Int_t Algorithm, const char *Name)
Float_t PTD(AliEmcalJet *jet, Int_t jetContNb=0)
Float_t GetJetAngularity(AliEmcalJet *jet, Int_t jetContNb=0)
Int_t SelectTrigger(Float_t minpT, Float_t maxpT)
Float_t Angularity(AliEmcalJet *jet, Int_t jetContNb=0)
Bool_t FillHistograms()
Function filling histograms.
Bool_t RetrieveEventObjects()
Retrieve common objects from event.
AliAnalysisTaskEmcalJetShapesMC & operator=(const AliAnalysisTaskEmcalJetShapesMC &)
Double_t SubJetOrdering(AliEmcalJet *Jet, AliEmcalJetFinder *Reclusterer, Int_t N, Int_t Type, Bool_t Index)
void SetPtTriggerSelections(Float_t minpT, Float_t maxpT)
void NTValues(AliEmcalJet *jet, Int_t jetContNb, Float_t *nTFractions)
Definition: External.C:220
Float_t GetJetLeSub(AliEmcalJet *jet, Int_t jetContNb=0)
Base task in the EMCAL jet framework.
Represent a jet reconstructed using the EMCal jet framework.
Definition: AliEmcalJet.h:44
Float_t Circularity(AliEmcalJet *jet, Int_t jetContNb=0)
const char Option_t
Definition: External.C:48
Float_t Sigma2(AliEmcalJet *jet, Int_t jetContNb=0)
bool Bool_t
Definition: External.C:53
ClassDef(AliAnalysisTaskEmcalJetShapesMC, 2)
Float_t LeSub(AliEmcalJet *jet, Int_t jetContNb=0)
Container for jet within the EMCAL jet framework.
Definition: External.C:196