AliPhysics  2aaea23 (2aaea23)
Go to the documentation of this file.
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 TRandom3;
25 class TF1;
26 class AliAnalysisManager;
27 class AliJetContainer;
28 class AliEmcalJetFinder;
29 class AliFJWrapper;
34 #include "AliFJWrapper.h"
35 #include "AliClusterContainer.h"
39  public:
41  enum JetShapeType {
43  };
44  enum JetShapeSub {
45  kNoSub = 0,
46  kConstSub = 1,
47  kDerivSub = 2
48  };
51  kRecoil = 1
52  };
57  };
60  AliAnalysisTaskEmcalJetShapesMC(const char *name);
64  void Terminate(Option_t *option);
66  //Setters
80  void SetRMatching(Float_t f) { fRMatching = f ;}
81  void SetJetRadius(Float_t f) { fJetRadius = f ;}
84  void SetPtTriggerSelections(Float_t minpT, Float_t maxpT) { fminpTTrig = minpT; fmaxpTTrig = maxpT; }
91  void SetMinCentrality(Float_t t) { fCentMin = t ; }
92  void SetMaxCentrality(Float_t t) { fCentMax = t ; }
94  void SetHolePos(Float_t poshole) { fHolePos = poshole; }
95  void SetHoleWidth(Float_t holewidth) { fHoleWidth = holewidth; }
102  protected:
105  Bool_t Run();
108  Float_t GetJetMass(AliEmcalJet *jet,Int_t jetContNb=0);
109  Float_t Angularity(AliEmcalJet *jet, Int_t jetContNb=0);
110  Float_t GetJetAngularity(AliEmcalJet *jet, Int_t jetContNb=0);
111  Float_t PTD(AliEmcalJet *jet, Int_t jetContNb=0);
112  Float_t GetJetpTD(AliEmcalJet *jet, Int_t jetContNb=0);
113  Float_t Circularity(AliEmcalJet *jet, Int_t jetContNb=0);
114  Float_t GetJetCircularity(AliEmcalJet *jet, Int_t jetContNb=0);
115  Float_t LeSub(AliEmcalJet *jet, Int_t jetContNb=0);
116  Float_t GetJetLeSub(AliEmcalJet *jet, Int_t jetContNb=0);
118  Float_t GetSigma2(AliEmcalJet *jet, Int_t jetContNb=0);
119  Float_t Sigma2(AliEmcalJet *jet, Int_t jetContNb=0);
120  void NTValues(AliEmcalJet *jet, Int_t jetContNb, Float_t* nTFractions);
121  void SoftDrop(AliEmcalJet *fJet,AliJetContainer *fJetCont, Double_t zcut, Double_t beta, Int_t ReclusterAlgo);
122  void RecursiveParents(AliEmcalJet *fJet,AliJetContainer *fJetCont, Int_t ReclusterAlgo,Float_t PartonFlavor);
123  AliEmcalJetFinder* Recluster(AliEmcalJet *Jet, Int_t JetContNb, Double_t JetRadius, Double_t SubJetRadius, Double_t SubJetMinPt, Int_t Algorithm, const char* Name);
125  //Double_t NSubJettiness(AliEmcalJet *Jet, Int_t JetContNb, AliEmcalJetFinder *Reclusterer, Int_t N, Int_t A, Int_t B);
128  Double_t GetSubjetFraction(AliEmcalJet *Jet, Int_t JetContNb, Double_t JetRadius, AliEmcalJetFinder *Reclusterer);
130  Float_t CoreFrac(AliEmcalJet *jet, Int_t jetContNb=0);
131  Float_t GetJetCoreFrac(AliEmcalJet *jet, Int_t jetContNb=0);
134  Double_t FjNSubJettiness(AliEmcalJet *Jet, Int_t JetContNb, Int_t N, Int_t Algorithm, Double_t Beta, Int_t Option, Double_t Beta_SD=0.0, Double_t ZCut=0.1, Int_t SoftDropOn=0);
137  Int_t SelectTrigger(Float_t minpT, Float_t maxpT);
140  Int_t fContainer; // jets to be analyzed 0 for Base, 1 for subtracted.
141  Float_t fMinFractionShared; // only fill histos for jets if shared fraction larger than X
142  JetShapeType fJetShapeType; // jet type to be used
143  JetShapeSub fJetShapeSub; // jet subtraction to be used
144  JetSelectionType fJetSelection; // Jet selection: inclusive/recoil jet
145  Float_t fShapesVar[11]; // jet shapes used for the tagging
150  Int_t fSelectedShapes; //chose set of shapes
156  Int_t fAdditionalTracks; //number of extra tracks to stress the grooming
157  Float_t fHardCutoff; //hard cutoff in the iterative procedure
158  Float_t fminpTTrig; //min - max pT for trigger particle in case of recoil jet
160  Float_t fangWindowRecoil; //angular window for btb recoil analysis
161  Int_t fSemigoodCorrect; //if==1 we run over semigood runs
162  Float_t fHolePos; //position in radians of the bad TPC sector
163  Float_t fHoleWidth; //width of the hole in radians
164  TRandom3 *fRandom;
165  Float_t fqhat; //qhat
166  Float_t fxlength; //medium length
167  Bool_t fCentSelectOn; // switch on/off centrality selection
168  Float_t fCentMin; // min centrality value
169  Float_t fCentMax; // max centrality value
170  Bool_t fOneConstSelectOn; // switch on/off one constituent selection
183  TH1F *fPtJet;//
185  TH1F *fhPt;//
186  TH1F *fhPhi;//
187  THnSparse *fHLundIterative;//
188  THnSparse *fHLundIterativeInject;//
192  TF1 *fTf1Omega;
193  TF1 *fTf1Kt;
194  private:
198  ClassDef(AliAnalysisTaskEmcalJetShapesMC, 2);
199 };
200 #endif
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
Double_t FjNSubJettiness(AliEmcalJet *Jet, Int_t JetContNb, Int_t N, Int_t Algorithm, Double_t Beta, Int_t Option, Double_t Beta_SD=0.0, Double_t ZCut=0.1, Int_t SoftDropOn=0)
void RecursiveParents(AliEmcalJet *fJet, AliJetContainer *fJetCont, Int_t ReclusterAlgo, Float_t PartonFlavor)
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)
int Int_t
Definition: External.C:63
Float_t GetJetNumberOfConstituents(AliEmcalJet *jet, Int_t jetContNb=0)
float Float_t
Definition: External.C:68
Float_t fqhat
Random number generator.
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)
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)
TF1 * fTf1Kt
to generate omega according to BDMPS tail
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 AddMedScat(Bool_t b, Float_t f, Int_t n)
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:51
Float_t Circularity(AliEmcalJet *jet, Int_t jetContNb=0)
void SoftDrop(AliEmcalJet *fJet, AliJetContainer *fJetCont, Double_t zcut, Double_t beta, Int_t ReclusterAlgo)
const char Option_t
Definition: External.C:48
Float_t Sigma2(AliEmcalJet *jet, Int_t jetContNb=0)
bool Bool_t
Definition: External.C:53
Float_t LeSub(AliEmcalJet *jet, Int_t jetContNb=0)
Container for jet within the EMCAL jet framework.
Definition: External.C:196