AliPhysics  2c6b7ad (2c6b7ad)
AliAnalysisTaskJetExtractor.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKJETEXTRACTOR_H
2 #define ALIANALYSISTASKJETEXTRACTOR_H
3 
4 /* Copyright(c) 1998-2018, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice */
6 
7 
8 //###############################################################################################################################################3
9 class AliRDHFJetsCutsVertex;
10 class AliEmcalJetTree;
11 class AliHFJetsTaggingVertex;
12 
25 //
27  public:
28 
30  AliAnalysisTaskJetExtractor(const char *name);
32  static AliAnalysisTaskJetExtractor* AddTaskJetExtractor(TString trackArray, TString jetArray, TString rhoObject, Double_t jetRadius, TString configFile, AliRDHFJetsCutsVertex* vertexerCuts, const char* taskNameSuffix);
34  void Terminate(Option_t *option);
36 
37  void ActivateTrueJetMatching(const char* arrayName, const char* rhoName)
38  {fTruthJetsArrayName = arrayName; fTruthJetsRhoName = rhoName;}
39  void SetTrueJetRhoMassName(const char* rhoName)
40  {fTruthJetsRhoMassName = rhoName;}
41  void SetTrueParticleArrayName(const char* partArrayName)
42  {fTruthParticleArrayName = partArrayName;}
48  void SetVertexerCuts(AliRDHFJetsCutsVertex* val) { fVertexerCuts = val; }
51  void SetTruthLabelRange(Int_t min, Int_t max) { fTruthMinLabel = min; fTruthMaxLabel = max; }
53  void SetRandomSeed(ULong_t val) { fRandomSeed = val; }
55 
56  void SetEventCutTriggerTrack(Double_t minPt, Double_t maxPt, Int_t minLabel=-9999999, Int_t maxLabel=+9999999)
59 
60  protected:
62  void ExecOnce();
63  Bool_t Run();
65  void FillTrackControlHistograms(AliVTrack* track);
68  void AddPIDInformation(AliVParticle* particle, Float_t& sigITS, Float_t& sigTPC, Float_t& sigTOF, Float_t& sigTRD, Short_t& recoPID, Int_t& truePID);
69  Bool_t IsTrackInCone(AliVParticle* track, Double_t eta, Double_t phi, Double_t radius);
71  Double_t GetMatchedTrueJetObservables(AliEmcalJet* jet, Double_t& matchedJetPt, Double_t& matchedJetMass);
72  void GetJetType(AliEmcalJet* jet, Int_t& typeHM, Int_t& typePM, Int_t& typeIC);
74  void PrintConfig();
75 
76  void GetTrackImpactParameters(const AliVVertex* vtx, AliAODTrack* track, Float_t& d0, Float_t& d0cov, Float_t& z0, Float_t& z0cov);
77  void ReconstructSecondaryVertices(const AliVVertex* primVtx, const AliEmcalJet* jet, std::vector<Float_t>& secVtx_X, std::vector<Float_t>& secVtx_Y, std::vector<Float_t>& secVtx_Z,
78  std::vector<Float_t>& secVtx_Mass, std::vector<Float_t>& secVtx_Lxy, std::vector<Float_t>& secVtx_SigmaLxy, std::vector<Float_t>& secVtx_Chi2, std::vector<Float_t>& secVtx_Dispersion);
79 
81  AliHFJetsTaggingVertex* fVtxTagger;
87  AliRDHFJetsCutsVertex* fVertexerCuts;
95 
96  // ################## EVENT CUTS
101 
102  // ################## BASIC EVENT VARIABLES
105  TClonesArray* fTruthParticleArray;
110  TRandom3* fRandomGenerator;
114 
115 
116  std::vector<Float_t> fTriggerTracks_Pt;
117  std::vector<Float_t> fTriggerTracks_Eta;
118  std::vector<Float_t> fTriggerTracks_Phi;
119 
120 
121  // ################## HISTOGRAM HELPER FUNCTIONS
122  void FillHistogram(const char * key, Double_t x);
123  void FillHistogram(const char * key, Double_t x, Double_t y);
124  void FillHistogram(const char * key, Double_t x, Double_t y, Double_t add);
125  void FillHistogram3D(const char * key, Double_t x, Double_t y, Double_t z, Double_t add = 0);
126  template <class T> T* AddHistogram1D(const char* name = "CustomHistogram", const char* title = "NO_TITLE", const char* options = "", Int_t xBins = 100, Double_t xMin = 0.0, Double_t xMax = 20.0, const char* xTitle = "x axis", const char* yTitle = "y axis");
127  template <class T> T* AddHistogram2D(const char* name = "CustomHistogram", const char* title = "NO_TITLE", const char* options = "", Int_t xBins = 100, Double_t xMin = 0.0, Double_t xMax = 20.0, Int_t yBins = 100, Double_t yMin = 0.0, Double_t yMax = 20.0, const char* xTitle = "x axis", const char* yTitle = "y axis", const char* zTitle = "z axis");
128  template <class T> T* AddHistogram3D(const char* name = "CustomHistogram", const char* title = "NO_TITLE", const char* options = "", Int_t xBins = 100, Double_t xMin = 0.0, Double_t xMax = 20.0, Int_t yBins = 100, Double_t yMin = 0.0, Double_t yMax = 20.0, Int_t zBins = 100, Double_t zMin = 0.0, Double_t zMax = 20.0, const char* xTitle = "x axis", const char* yTitle = "y axis", const char* zTitle = "z axis");
129 
130 
131 
132  private:
133  AliAnalysisTaskJetExtractor(const AliAnalysisTaskJetExtractor&); // not implemented
135 
137  ClassDef(AliAnalysisTaskJetExtractor, 1) // Jet extraction task
139 };
140 
141 
142 //###############################################################################################################################################3
143 static std::vector<Float_t> DEFAULT_VECTOR_FLOAT;
144 static std::vector<Short_t> DEFAULT_VECTOR_SHORT;
145 static std::vector<Int_t> DEFAULT_VECTOR_INT;
155 //
156 class AliEmcalJetTree : public TNamed
157 {
158  public:
159  AliEmcalJetTree();
160  AliEmcalJetTree(const char* name);
161 
162  // ############ SETTERS
163  void AddExtractionPercentage(Float_t minPt, Float_t maxPt, Float_t percentage)
164  {
165  fExtractionPercentagePtBins.push_back(minPt);
166  fExtractionPercentagePtBins.push_back(maxPt);
167  fExtractionPercentages.push_back(percentage);
168  }
169 
170  void AddExtractionJetTypeHM(Int_t type) {fExtractionJetTypes_HM.push_back(type);}
171  void AddExtractionJetTypePM(Int_t type) {fExtractionJetTypes_PM.push_back(type);}
172 
173  void ResetExtractionPercentages() {fExtractionPercentages.clear(); fExtractionPercentagePtBins.clear();}
174 
175  void SetSaveEventProperties(Bool_t val) {fSaveEventProperties = val; fInitialized = kFALSE;}
176  void SetSaveConstituents(Bool_t val) {fSaveConstituents = val; fInitialized = kFALSE;}
177  void SetSaveConstituentsIP(Bool_t val) {fSaveConstituentsIP = val; fInitialized = kFALSE;}
178  void SetSaveConstituentPID(Bool_t val) {fSaveConstituentPID = val; fInitialized = kFALSE;}
179  void SetSaveJetShapes(Bool_t val) {fSaveJetShapes = val; fInitialized = kFALSE;}
180  void SetSaveMCInformation(Bool_t val) {fSaveMCInformation = val; fInitialized = kFALSE;}
181  void SetSaveSecondaryVertices(Bool_t val) {fSaveSecondaryVertices = val; fInitialized = kFALSE;}
182  void SetSaveTriggerTracks(Bool_t val) {fSaveTriggerTracks = val;}
183  void SetTrackContainer(AliParticleContainer* cont) {fTrackContainer = cont;}
184  void SetJetContainer(AliJetContainer* cont) {fJetContainer = cont;}
185  void SetRandomGenerator(TRandom3* gen) {fRandomGenerator = gen;}
186 
187  void InitializeTree();
188 
189  // ############ GETTERS
190  Bool_t GetSaveEventProperties() {return fSaveEventProperties;}
191  Bool_t GetSaveConstituents() {return fSaveConstituents;}
192  Bool_t GetSaveConstituentsIP() {return fSaveConstituentsIP;}
193  Bool_t GetSaveConstituentPID() {return fSaveConstituentPID;}
194  Bool_t GetSaveJetShapes() {return fSaveJetShapes;}
195  Bool_t GetSaveMCInformation() {return fSaveMCInformation;}
196  Bool_t GetSaveSecondaryVertices() {return fSaveSecondaryVertices;}
197  Bool_t GetSaveTriggerTracks() {return fSaveTriggerTracks;}
198 
199  std::vector<Float_t> GetExtractionPercentagePtBins() {return fExtractionPercentagePtBins;}
200  std::vector<Float_t> GetExtractionPercentages() {return fExtractionPercentages;}
201  std::vector<Int_t> GetExtractionJetTypes_HM() {return fExtractionJetTypes_HM;}
202  std::vector<Int_t> GetExtractionJetTypes_PM() {return fExtractionJetTypes_PM;}
203 
205 
206  // ######################################
207  Bool_t AddJetToTree(AliEmcalJet* jet, Float_t vertexX = 0, Float_t vertexY = 0, Float_t vertexZ = 0, Float_t centrality = 0, Long64_t eventID = 0, Float_t magField = 0,
208  Int_t motherParton = 0, Int_t motherHadron = 0, Int_t partonInitialCollision = 0, Float_t matchDistance = 0, Float_t matchedPt = 0, Float_t matchedMass = 0, Float_t truePtFraction = 0, Float_t ptHard = 0, Float_t eventWeight = 0, Float_t impactParameter = 0,
209  std::vector<Float_t>& trackPID_ITS = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& trackPID_TPC = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& trackPID_TOF = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& trackPID_TRD = DEFAULT_VECTOR_FLOAT, std::vector<Short_t>& trackPID_Reco = DEFAULT_VECTOR_SHORT, std::vector<Int_t>& trackPID_Truth = DEFAULT_VECTOR_INT,
210  std::vector<Float_t>& triggerTrackPt = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& triggerTrackDeltaEta = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& triggerTrackDeltaPhi = DEFAULT_VECTOR_FLOAT,
211  std::vector<Float_t>& trackIP_d0 = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& trackIP_z0 = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& trackIP_d0cov = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& trackIP_z0cov = DEFAULT_VECTOR_FLOAT,
212  std::vector<Float_t>& secVtx_X = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& secVtx_Y = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& secVtx_Z = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& secVtx_Mass = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& secVtx_Lxy = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& secVtx_SigmaLxy = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& secVtx_Chi2 = DEFAULT_VECTOR_FLOAT, std::vector<Float_t>& secVtx_Dispersion = DEFAULT_VECTOR_FLOAT)
213  {
214  return AddJetToTree(jet, vertexX, vertexY, vertexZ, centrality, eventID, magField, motherParton, motherHadron, partonInitialCollision, matchDistance, matchedPt, matchedMass, truePtFraction, ptHard, eventWeight, impactParameter,
215  trackPID_ITS.data(), trackPID_TPC.data(), trackPID_TOF.data(), trackPID_TRD.data(), trackPID_Reco.data(), trackPID_Truth.data(),
216  triggerTrackPt.size(), triggerTrackPt.data(), triggerTrackDeltaEta.data(), triggerTrackDeltaPhi.data(),
217  trackIP_d0.data(), trackIP_z0.data(), trackIP_d0cov.data(), trackIP_z0cov.data(),
218  secVtx_X.size(), secVtx_X.data(), secVtx_Y.data(), secVtx_Z.data(), secVtx_Mass.data(), secVtx_Lxy.data(), secVtx_SigmaLxy.data(), secVtx_Chi2.data(), secVtx_Dispersion.data());
219  }
220  Bool_t AddJetToTree(AliEmcalJet* jet, Float_t vertexX, Float_t vertexY, Float_t vertexZ, Float_t centrality, Long64_t eventID, Float_t magField,
221  Int_t motherParton, Int_t motherHadron, Int_t partonInitialCollision, Float_t matchDistance, Float_t matchedPt, Float_t matchedMass, Float_t truePtFraction, Float_t ptHard, Float_t eventWeight, Float_t impactParameter,
222  Float_t* trackPID_ITS, Float_t* trackPID_TPC, Float_t* trackPID_TOF, Float_t* trackPID_TRD, Short_t* trackPID_Reco, Int_t* trackPID_Truth,
223  Int_t numTriggerTracks, Float_t* triggerTrackPt, Float_t* triggerTrackDeltaEta, Float_t* triggerTrackDeltaPhi,
224  Float_t* trackIP_d0, Float_t* trackIP_z0, Float_t* trackIP_d0cov, Float_t* trackIP_z0cov,
225  Int_t numSecVertices, Float_t* secVtx_X, Float_t* secVtx_Y, Float_t* secVtx_Z, Float_t* secVtx_Mass, Float_t* secVtx_Lxy, Float_t* secVtx_SigmaLxy, Float_t* secVtx_Chi2, Float_t* secVtx_Dispersion);
226  // ######################################
227 
228  private:
231 
232  // Save flags
241 
244  TRandom3* fRandomGenerator;
245 
246  // Option flags
247  std::vector<Float_t> fExtractionPercentages;
248  std::vector<Float_t> fExtractionPercentagePtBins;
249  std::vector<Int_t> fExtractionJetTypes_HM;
250  std::vector<Int_t> fExtractionJetTypes_PM;
251 
252  // Buffers that will be added to the tree
258 
270 
279 
281 
289 
292 
293 
295  ClassDef(AliEmcalJetTree, 4) // Jet tree class
297 };
298 
299 #endif
Bool_t fSaveConstituentsIP
save arrays of constituent impact parameters
void ExecOnce()
Perform steps needed to initialize the analysis.
Bool_t fSaveSecondaryVertices
save reconstructed sec. vertex properties
void SetSaveConstituents(Bool_t val)
double Double_t
Definition: External.C:58
TString fTruthParticleArrayName
Array name of MC particles in event (mcparticles)
void AddExtractionJetTypePM(Int_t type)
const char * title
Definition: MakeQAPdf.C:27
void SetTrackContainer(AliParticleContainer *cont)
void GetJetType(AliEmcalJet *jet, Int_t &typeHM, Int_t &typePM, Int_t &typeIC)
AliAnalysisTaskJetExtractor & operator=(const AliAnalysisTaskJetExtractor &)
void GetTrackImpactParameters(const AliVVertex *vtx, AliAODTrack *track, Float_t &d0, Float_t &d0cov, Float_t &z0, Float_t &z0cov)
Bool_t fSetEmcalJetFlavour
if set, the flavour property of the AliEmcalJets will be set
TTree * fJetTree
! tree structure
long long Long64_t
Definition: External.C:43
T * AddHistogram3D(const char *name="CustomHistogram", const char *title="NO_TITLE", const char *options="", Int_t xBins=100, Double_t xMin=0.0, Double_t xMax=20.0, Int_t yBins=100, Double_t yMin=0.0, Double_t yMax=20.0, Int_t zBins=100, Double_t zMin=0.0, Double_t zMax=20.0, const char *xTitle="x axis", const char *yTitle="y axis", const char *zTitle="z axis")
Float_t fBuffer_Event_BackgroundDensity
! array buffer
void SetEventCutTriggerTrack(Double_t minPt, Double_t maxPt, Int_t minLabel=-9999999, Int_t maxLabel=+9999999)
std::vector< Float_t > GetExtractionPercentages()
void SetTruthLabelRange(Int_t min, Int_t max)
Bool_t fSaveMCInformation
save MC information
centrality
AliParticleContainer * fTrackContainer
! track container, used to work on tracks
Int_t fTruthMinLabel
min track label to consider it as true particle
Double_t fSecondaryVertexMaxChi2
Max chi2 of secondary vertex (others will be discarded)
Double_t fSecondaryVertexMaxDispersion
Max dispersion of secondary vertex (others will be discarded)
Double_t fEventCut_TriggerTrackMinPt
Event requirement, trigger track min pT.
std::vector< Float_t > GetExtractionPercentagePtBins()
Bool_t fSaveEventProperties
save general event properties (bgrd. etc.)
std::vector< Float_t > fTriggerTracks_Pt
If trigger track requi. is used -> save pT.
static std::vector< Short_t > DEFAULT_VECTOR_SHORT
Bool_t fSaveJetShapes
save jet shapes
Bool_t fSaveConstituentPID
save arrays of constituent PID parameters
Double_t fEventWeight
event weight for each event (only works for JEWEL)
const Int_t kMaxNumConstituents
Bool_t IsTrackInCone(AliVParticle *track, Double_t eta, Double_t phi, Double_t radius)
Double_t GetTrueJetPtFraction(AliEmcalJet *jet)
T * AddHistogram2D(const char *name="CustomHistogram", const char *title="NO_TITLE", const char *options="", Int_t xBins=100, Double_t xMin=0.0, Double_t xMax=20.0, Int_t yBins=100, Double_t yMin=0.0, Double_t yMax=20.0, const char *xTitle="x axis", const char *yTitle="y axis", const char *zTitle="z axis")
TString fTruthJetsRhoName
Array name for particle-level rho.
std::vector< Int_t > fExtractionJetTypes_HM
Jet-types that will be extracted with this tree (hadron matching)
Container for particles within the EMCAL framework.
Double_t fTrueJetMatchingRadius
Matching radius to true jet.
std::vector< Float_t > fTriggerTracks_Phi
If trigger track requi. is used -> save phi.
UShort_t T(UShort_t m, UShort_t t)
Definition: RingBits.C:60
Int_t fEventCut_TriggerTrackMaxLabel
Event requirement, trigger track max label (can be used to selected embedded particles) ...
Bool_t AddJetToTree(AliEmcalJet *jet, Float_t vertexX=0, Float_t vertexY=0, Float_t vertexZ=0, Float_t centrality=0, Long64_t eventID=0, Float_t magField=0, Int_t motherParton=0, Int_t motherHadron=0, Int_t partonInitialCollision=0, Float_t matchDistance=0, Float_t matchedPt=0, Float_t matchedMass=0, Float_t truePtFraction=0, Float_t ptHard=0, Float_t eventWeight=0, Float_t impactParameter=0, std::vector< Float_t > &trackPID_ITS=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &trackPID_TPC=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &trackPID_TOF=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &trackPID_TRD=DEFAULT_VECTOR_FLOAT, std::vector< Short_t > &trackPID_Reco=DEFAULT_VECTOR_SHORT, std::vector< Int_t > &trackPID_Truth=DEFAULT_VECTOR_INT, std::vector< Float_t > &triggerTrackPt=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &triggerTrackDeltaEta=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &triggerTrackDeltaPhi=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &trackIP_d0=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &trackIP_z0=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &trackIP_d0cov=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &trackIP_z0cov=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &secVtx_X=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &secVtx_Y=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &secVtx_Z=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &secVtx_Mass=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &secVtx_Lxy=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &secVtx_SigmaLxy=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &secVtx_Chi2=DEFAULT_VECTOR_FLOAT, std::vector< Float_t > &secVtx_Dispersion=DEFAULT_VECTOR_FLOAT)
Float_t * fBuffer_Const_Phi
! array buffer
Float_t fBuffer_Jet_MC_MatchDistance
! array buffer
void SetSecondaryVertexMaxDispersion(Double_t val)
Float_t fBuffer_Event_ImpactParameter
! array buffer
TRandom3 * fRandomGenerator
! Random number generator, used for event + jet efficiency
Float_t fBuffer_Jet_MC_MatchedPt
! array buffer
Bool_t fSaveTriggerTracks
save event trigger track
TRandom3 * fRandomGenerator
! random generator
AliParticleContainer * fTracksCont
! Tracks
std::vector< Float_t > fExtractionPercentages
Percentages which will be extracted for a given pT bin.
TClonesArray * fTruthParticleArray
! Array of MC particles in event (mcparticles)
Double_t fEventPercentage
percentage (0, 1] which will be extracted
void FillHistogram3D(const char *key, Double_t x, Double_t y, Double_t z, Double_t add=0)
int Int_t
Definition: External.C:63
Int_t fBuffer_Jet_MC_MotherParton
! array buffer
Float_t fBuffer_Event_PtHard
! array buffer
void SetSaveJetShapes(Bool_t val)
void SetSaveSecondaryVertices(Bool_t val)
Float_t * fBuffer_Const_Charge
! array buffer
float Float_t
Definition: External.C:68
void SetSaveConstituentPID(Bool_t val)
void ActivateTrueJetMatching(const char *arrayName, const char *rhoName)
Float_t fBuffer_Event_Weight
! array buffer
T * AddHistogram1D(const char *name="CustomHistogram", const char *title="NO_TITLE", const char *options="", Int_t xBins=100, Double_t xMin=0.0, Double_t xMax=20.0, const char *xTitle="x axis", const char *yTitle="y axis")
TRandom3 * fRandomGeneratorCones
! Random number generator, used for random cones
Int_t * fBuffer_Const_Label
! array buffer
static std::vector< Float_t > DEFAULT_VECTOR_FLOAT
Double_t fImpactParameter
IP for each event (only works for JEWEL)
Float_t fBuffer_JetPhi
! array buffer
Int_t fTruthMaxLabel
max track label to consider it as true particle
Double_t GetMatchedTrueJetObservables(AliEmcalJet *jet, Double_t &matchedJetPt, Double_t &matchedJetMass)
Float_t fBuffer_JetArea
! array buffer
std::vector< Int_t > fExtractionJetTypes_PM
Jet-types that will be extracted with this tree (parton matching)
std::vector< Float_t > fExtractionPercentagePtBins
pT-bins associated with fExtractionPercentages
Long64_t fBuffer_Event_ID
! array buffer
Float_t fBuffer_Event_Centrality
! array buffer
Int_t fBuffer_Jet_MC_MotherIC
! array buffer
unsigned long ULong_t
Definition: External.C:38
Float_t * fBuffer_Const_ProdVtx_X
! array buffer
Bool_t fInitialized
init state of tree
void SetSaveConstituentsIP(Bool_t val)
void SetSaveMCInformation(Bool_t val)
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.
Analysis task that implements AliEmcalJetTree to extract jets to a tree.
void AddPIDInformation(AliVParticle *particle, Float_t &sigITS, Float_t &sigTPC, Float_t &sigTOF, Float_t &sigTRD, Short_t &recoPID, Int_t &truePID)
std::vector< Int_t > GetExtractionJetTypes_PM()
std::vector< Int_t > GetExtractionJetTypes_HM()
Float_t fBuffer_Event_BackgroundDensityMass
! array buffer
AliHFJetsTaggingVertex * fVtxTagger
! class for sec. vertexing
short Short_t
Definition: External.C:23
TString fTruthJetsArrayName
Array name for particle-level jets.
AliRDHFJetsCutsVertex * fVertexerCuts
Cuts used for the vertexer (given in add task macro)
Int_t fEventCut_TriggerTrackMinLabel
Event requirement, trigger track min label (can be used to selected embedded particles) ...
AliJetContainer * fJetContainer
! jet container, used to work on jets
void AddExtractionJetTypeHM(Int_t type)
void SetSaveEventProperties(Bool_t val)
void FillHistogram(const char *key, Double_t x)
void FillTrackControlHistograms(AliVTrack *track)
TString fTruthJetsRhoMassName
Array name for particle-level rho for mass.
Float_t fBuffer_Jet_MC_MatchedMass
! array buffer
Float_t fBuffer_JetPt
! array buffer
void ReconstructSecondaryVertices(const AliVVertex *primVtx, const AliEmcalJet *jet, std::vector< Float_t > &secVtx_X, std::vector< Float_t > &secVtx_Y, std::vector< Float_t > &secVtx_Z, std::vector< Float_t > &secVtx_Mass, std::vector< Float_t > &secVtx_Lxy, std::vector< Float_t > &secVtx_SigmaLxy, std::vector< Float_t > &secVtx_Chi2, std::vector< Float_t > &secVtx_Dispersion)
Float_t fBuffer_Event_Vertex_Y
! array buffer
Bool_t fCalculateSecondaryVertices
Calculate the secondary vertices (instead of loading)
void SetTrueParticleArrayName(const char *partArrayName)
Float_t * fBuffer_Const_ProdVtx_Y
! array buffer
Bool_t fSaveConstituents
save arrays of constituent basic properties
void SetVertexerCuts(AliRDHFJetsCutsVertex *val)
Double_t fHadronMatchingRadius
Matching radius to search for beauty/charm hadrons around jet.
static AliAnalysisTaskJetExtractor * AddTaskJetExtractor(TString trackArray, TString jetArray, TString rhoObject, Double_t jetRadius, TString configFile, AliRDHFJetsCutsVertex *vertexerCuts, const char *taskNameSuffix)
Base task in the EMCAL jet framework.
Float_t * fBuffer_Const_Pt
! array buffer
Represent a jet reconstructed using the EMCal jet framework.
Definition: AliEmcalJet.h:51
void SetTrueJetRhoMassName(const char *rhoName)
Float_t * fBuffer_Const_Eta
! array buffer
Float_t fBuffer_JetEta
! array buffer
Bool_t fSaveTrackPDGCode
save PDG code instead of code defined for AOD pid
const char Option_t
Definition: External.C:48
Int_t fBuffer_NumConstituents
! array buffer
void AddExtractionPercentage(Float_t minPt, Float_t maxPt, Float_t percentage)
Float_t fBuffer_Event_Vertex_X
! array buffer
bool Bool_t
Definition: External.C:53
Double_t yMin
void SetRandomGenerator(TRandom3 *gen)
static std::vector< Int_t > DEFAULT_VECTOR_INT
Int_t fBuffer_Jet_MC_MotherHadron
! array buffer
Double_t fEventCut_TriggerTrackMaxPt
Event requirement, trigger track max pT.
void SetJetContainer(AliJetContainer *cont)
std::vector< Float_t > fTriggerTracks_Eta
If trigger track requi. is used -> save eta.
Float_t fBuffer_Shape_Mass
! array buffer
Float_t * fBuffer_Const_ProdVtx_Z
! array buffer
Container for jet within the EMCAL jet framework.
Float_t fBuffer_Jet_MC_TruePtFraction
! array buffer
Class managing creation of a tree containing jets.
Double_t yMax
Float_t fBuffer_Event_Vertex_Z
! array buffer
void SetSaveTriggerTracks(Bool_t val)
Float_t fBuffer_Event_MagneticField
! array buffer