AliPhysics  d0bc297 (d0bc297)
AliEmcalTrackingQATask Class Reference

Tracking QA task. More...

#include <AliEmcalTrackingQATask.h>

Inheritance diagram for AliEmcalTrackingQATask:

Public Member Functions

 AliEmcalTrackingQATask ()
 
 AliEmcalTrackingQATask (const char *name)
 
virtual ~AliEmcalTrackingQATask ()
 
void UserCreateOutputObjects ()
 
void SetDoSigma1OverPt (Bool_t s)
 
void SetDoSigmaPtOverPtGen (Bool_t s)
 
void SetDoSeparateTRDrefit (Bool_t s)
 
- Public Member Functions inherited from AliAnalysisTaskEmcalLight
 AliAnalysisTaskEmcalLight ()
 
 AliAnalysisTaskEmcalLight (const char *name, Bool_t histo=kFALSE)
 
virtual ~AliAnalysisTaskEmcalLight ()
 
AliParticleContainerAddParticleContainer (std::string branchName, std::string contName="")
 
AliClusterContainerAddClusterContainer (std::string branchName, std::string contName="")
 
void AdoptParticleContainer (AliParticleContainer *cont)
 
void AdoptClusterContainer (AliClusterContainer *cont)
 
AliParticleContainerGetParticleContainer (std::string name) const
 
AliClusterContainerGetClusterContainer (std::string name) const
 
AliMCParticleContainerGetMCParticleContainer (std::string name) const
 
AliTrackContainerGetTrackContainer (std::string name) const
 
void RemoveParticleContainer (std::string name)
 
void RemoveClusterContainer (std::string name)
 
void SetCaloCellsName (const char *n)
 
void SetCaloTriggerPatchInfoName (const char *n)
 
void SetCaloTriggersName (const char *n)
 
void SetCentralityEstimator (const char *c)
 
void SetIsPythia (Bool_t i)
 
void SetForceBeamType (EBeamType_t f)
 
void SetCentralityEstimation (ECentralityEstimation_t b)
 
void SetMakeGeneralHistograms (Bool_t g)
 
void SetNeedEmcalGeom (Bool_t n)
 
void SetCentBins (const std::vector< double > &bins)
 
Int_t GetNCentBins () const
 
void SetSwitchOffLHC15oFaultyBranches (Bool_t b)
 
void SetTriggerSelectionBitMap (UInt_t t)
 
void SetCentRange (Double_t min, Double_t max)
 
void SetVzRange (Double_t min, Double_t max)
 
void SetZvertexDiffValue (Double_t cut)
 
void SetMinNVertCont (Int_t cut)
 
void SetPtHardRange (Double_t min, Double_t max)
 
void SetMaxMinimumBiasPtHard (Int_t max)
 
void AddAcceptedTriggerClass (const char *trigClass)
 
void AddRejectedTriggerClass (const char *trigClass)
 
void ClearAcceptedTriggerClasses ()
 
void ClearRejectedTriggerClasses ()
 
void SetMCFilter ()
 
void ResetMCFilter ()
 
void SetJetPtFactor (Float_t f)
 
Float_t JetPtFactor ()
 
void SetClusterPtFactor (Float_t f)
 
Float_t ClusterPtFactor ()
 
void SetTrackPtFactor (Float_t f)
 
Float_t TrackPtFactor ()
 
void SetEventSelectionAfterRun (Bool_t b)
 
void SelectGeneratorName (TString gen)
 
void SetInhibit (Bool_t s)
 
void SetEventWeightRange (Double_t min, Double_t max)
 
Bool_t IsInhibit () const
 

Static Public Member Functions

static AliEmcalTrackingQATaskAddTaskTrackingQA (Bool_t isMC)
 

Protected Member Functions

Bool_t FillHistograms ()
 
void ExecOnce ()
 
void GenerateHistoBins ()
 
void AllocateDetectorLevelTHnSparse ()
 
void AllocateGeneratorLevelTHnSparse ()
 
void AllocateMatchedParticlesTHnSparse ()
 
void FillDetectorLevelTHnSparse (Double_t cent, Double_t trackEta, Double_t trackPhi, Double_t trackPt, Double_t sigma1OverPt, Int_t mcGen, Byte_t trackType)
 
void FillGeneratorLevelTHnSparse (Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt, Int_t mcGen, Byte_t findable)
 
void FillMatchedParticlesTHnSparse (Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt, Double_t trackEta, Double_t trackPhi, Double_t trackPt, Byte_t trackType)
 
THnSparse * GenerateTHnSparse (const char *name, const std::vector< std::tuple< std::string, std::vector< Double_t >::iterator, std::vector< Double_t >::iterator >> &axis)
 
- Protected Member Functions inherited from AliAnalysisTaskEmcalLight
void SetRejectionReasonLabels (TAxis *axis)
 
void AddObjectToEvent (TObject *obj, Bool_t attempt=kFALSE)
 
TClonesArray * GetArrayFromEvent (const char *name, const char *clname=0)
 
EBeamType_t GetBeamType ()
 
Bool_t PythiaInfoFromFile (const char *currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard)
 
Bool_t IsTrackInEmcalAcceptance (AliVParticle *part, Double_t edges=0.9) const
 
Bool_t CheckMCOutliers ()
 
void UserCreateOutputObjects ()
 
void UserExec (Option_t *option)
 
Bool_t UserNotify ()
 
virtual Bool_t FillGeneralHistograms (Bool_t eventSelected)
 
virtual Bool_t IsEventSelected ()
 
virtual Bool_t RetrieveEventObjects ()
 
virtual Bool_t Run ()
 

Protected Attributes

Bool_t fDoSigma1OverPt
 add sigma(1/pt), if false add sigma(pt)/pt instead More...
 
Bool_t fDoSigmaPtOverPtGen
 MC: if true do sigma((ptgen - ptdet) / ptgen), otherwise do sigma((ptgen - ptdet) / ptdet) More...
 
Bool_t fDoSeparateTRDrefit
 Separate tracks into tracks with TRD refit and 4 tracklets (gold) or not (sub-gold) More...
 
Bool_t fIsEsd
 ! whether it is ESD data More...
 
AliMCParticleContainerfGeneratorLevel
 ! generator level container More...
 
AliTrackContainerfDetectorLevel
 ! detector level container More...
 
std::vector< Double_tfPtHistBins
 ! pt bins More...
 
std::vector< Double_tfEtaHistBins
 ! eta bins More...
 
std::vector< Double_tfPhiHistBins
 ! phi bins More...
 
std::vector< Double_tfCentHistBins
 ! cent bins More...
 
std::vector< Double_tfPtRelDiffHistBins
 ! pt relative difference bins More...
 
std::vector< Double_tfPtResHistBins
 ! pt res bins More...
 
std::vector< Double_tf1OverPtResHistBins
 ! 1/pt res bins More...
 
std::vector< Double_tfIntegerHistBins
 ! integer bins More...
 
THnSparse * fTracks
 
THnSparse * fParticlesPhysPrim
 all tracks More...
 
THnSparse * fParticlesMatched
 all physical primary particles More...
 
- Protected Attributes inherited from AliAnalysisTaskEmcalLight
EBeamType_t fForceBeamType
 forced beam type More...
 
Bool_t fGeneralHistograms
 whether or not it should fill some general histograms More...
 
Bool_t fCreateHisto
 whether or not create histograms More...
 
Bool_t fNeedEmcalGeom
 whether or not the task needs the emcal geometry More...
 
std::vector< double > fCentBins
 how many centrality bins More...
 
ECentralityEstimation_t fCentralityEstimation
 Centrality estimation. More...
 
Bool_t fIsPythia
 if it is a PYTHIA production More...
 
TString fCaloCellsName
 name of calo cell collection More...
 
TString fCaloTriggersName
 name of calo triggers collection More...
 
TString fCaloTriggerPatchInfoName
 trigger patch info array name More...
 
TString fCentEst
 name of the centrality estimator More...
 
std::map< std::string, AliParticleContainer * > fParticleCollArray
 particle/track collection array More...
 
std::map< std::string, AliClusterContainer * > fClusterCollArray
 cluster collection array More...
 
UInt_t fTriggerSelectionBitMap
 trigger selection bit map More...
 
Double_t fMinCent
 min centrality for event selection More...
 
Double_t fMaxCent
 max centrality for event selection More...
 
Double_t fMinVz
 min vertex for event selection More...
 
Double_t fMaxVz
 max vertex for event selection More...
 
Double_t fMaxVzDiff
 upper limit for distance between primary and SPD vertex More...
 
Double_t fMinNVertCont
 minumum number of vertex contributors More...
 
Double_t fMinPtHard
 select minimum pt hard (MC) More...
 
Double_t fMaxPtHard
 select maximum pt hard (MC) More...
 
Double_t fMaxMinimumBiasPtHard
 maximum pt hard for the minimum bias pt hard bin (MC) More...
 
std::set< std::string > fAcceptedTriggerClasses
 list of accepted trigger classes More...
 
std::set< std::string > fRejectedTriggerClasses
 list of accepted trigger classes More...
 
Bool_t fMCRejectFilter
 enable the filtering of events by tail rejection More...
 
Float_t fPtHardAndJetPtFactor
 Factor between ptHard and jet pT to reject/accept event. More...
 
Float_t fPtHardAndClusterPtFactor
 Factor between ptHard and cluster pT to reject/accept event. More...
 
Float_t fPtHardAndTrackPtFactor
 Factor between ptHard and track pT to reject/accept event. More...
 
Bool_t fSwitchOffLHC15oFaultyBranches
 Switch off faulty tree branches in LHC15o AOD trees. More...
 
Bool_t fEventSelectionAfterRun
 If kTRUE, the event selection is performed after Run() but before FillHistograms() More...
 
TString fSelectGeneratorName
 Selects only events produced by a generator that has a name containing a string. More...
 
Double_t fMinimumEventWeight
 Minimum event weight for the related bookkeping histogram. More...
 
Double_t fMaximumEventWeight
 Minimum event weight for the related bookkeping histogram. More...
 
Bool_t fInhibit
 !inhibit execution of the task More...
 
Bool_t fLocalInitialized
 !whether or not the task has been already initialized More...
 
EDataType_t fDataType
 !data type (ESD or AOD) More...
 
AliEMCALGeometry * fGeom
 !emcal geometry More...
 
AliVCaloCells * fCaloCells
 !cells More...
 
AliVCaloTrigger * fCaloTriggers
 !calo triggers More...
 
TClonesArray * fTriggerPatchInfo
 !trigger patch info array More...
 
Double_t fCent
 !event centrality More...
 
Int_t fCentBin
 !event centrality bin More...
 
Double_t fEPV0
 !event plane V0 More...
 
Double_t fEPV0A
 !event plane V0A More...
 
Double_t fEPV0C
 !event plane V0C More...
 
Double_t fVertex [3]
 !event vertex More...
 
Double_t fVertexSPD [3]
 !event Svertex More...
 
Int_t fNVertCont
 !event vertex number of contributors More...
 
Int_t fNVertSPDCont
 !event SPD vertex number of contributors More...
 
ULong_t fFiredTriggerBitMap
 !bit map of fired triggers More...
 
std::vector< std::string > fFiredTriggerClasses
 !trigger classes fired by the current event More...
 
EBeamType_t fBeamType
 !event beam type More...
 
AliGenPythiaEventHeader * fPythiaHeader
 !event Pythia header More...
 
Int_t fPtHardBin
 !event pt hard bin More...
 
Double_t fPtHard
 !event pt hard More...
 
Int_t fNTrials
 !event trials More...
 
Float_t fXsection
 !x-section from pythia header More...
 
Float_t fEventWeight
 !event weight More...
 
TString fGeneratorName
 !name of the MC generator used to produce the current event (only AOD) More...
 
TListfOutput
 !output list More...
 

Private Member Functions

 AliEmcalTrackingQATask (const AliEmcalTrackingQATask &)
 primary particles matched to detector level tracks More...
 
AliEmcalTrackingQATaskoperator= (const AliEmcalTrackingQATask &)
 

Additional Inherited Members

- Public Types inherited from AliAnalysisTaskEmcalLight
enum  EDataType_t { kUnknownDataType, kESD, kAOD }
 Switch for the data type. More...
 
enum  EBeamType_t { kNA = -1, kpp = 0, kAA = 1, kpA = 2 }
 Switch for the beam type. More...
 
enum  ECentralityEstimation_t { kNoCentrality = 0, kNewCentrality = 1, kOldCentrality = 2 }
 Switch for the centrality estimation. More...
 
- Static Protected Member Functions inherited from AliAnalysisTaskEmcalLight
static void GetEtaPhiDiff (const AliVTrack *t, const AliVCluster *v, Double_t &phidiff, Double_t &etadiff)
 
static Byte_t GetTrackType (const AliVTrack *t)
 
static Byte_t GetTrackType (const AliAODTrack *aodTrack, UInt_t filterBit1, UInt_t filterBit2)
 
static Double_t DeltaPhi (Double_t phia, Double_t phib, Double_t rMin=-TMath::Pi()/2, Double_t rMax=3 *TMath::Pi()/2)
 
static std::vector< double > GenerateFixedBinArray (int n, double min, double max, bool last=true)
 
static void GenerateFixedBinArray (int n, double min, double max, std::vector< double > &array, bool last=true)
 
static std::vector< double > GenerateLogFixedBinArray (int n, double min, double max, bool last=true)
 
static void GenerateLogFixedBinArray (int n, double min, double max, std::vector< double > &array, bool last=true)
 
static Double_t GetParallelFraction (AliVParticle *part1, AliVParticle *part2)
 
static Double_t GetParallelFraction (const TVector3 &vect1, AliVParticle *part2)
 
static EBeamType_t BeamTypeFromRunNumber (Int_t runnumber)
 
- Static Protected Attributes inherited from AliAnalysisTaskEmcalLight
static Double_t fgkEMCalDCalPhiDivide = 4.
 phi value used to distinguish between DCal and EMCal More...
 

Detailed Description

Tracking QA task.

Performs tracking QA: efficiency and momentum resolution

Based on code in AliAnalysisTaskEMCALClusterize.

Author
Salvatore Aiola salva.nosp@m.tore.nosp@m..aiol.nosp@m.a@ya.nosp@m.le.ed.nosp@m.u, Yale University
Date
Mar 8 2018

Definition at line 25 of file AliEmcalTrackingQATask.h.

Constructor & Destructor Documentation

AliEmcalTrackingQATask::AliEmcalTrackingQATask ( )

Default constructor

Definition at line 23 of file AliEmcalTrackingQATask.cxx.

Referenced by AddTaskTrackingQA().

AliEmcalTrackingQATask::AliEmcalTrackingQATask ( const char *  name)

Standard constructor

Definition at line 51 of file AliEmcalTrackingQATask.cxx.

AliEmcalTrackingQATask::~AliEmcalTrackingQATask ( )
virtual

Destructor

Definition at line 79 of file AliEmcalTrackingQATask.cxx.

AliEmcalTrackingQATask::AliEmcalTrackingQATask ( const AliEmcalTrackingQATask )
private

primary particles matched to detector level tracks

Member Function Documentation

AliEmcalTrackingQATask * AliEmcalTrackingQATask::AddTaskTrackingQA ( Bool_t  isMC)
static

Add task macro

Parameters
isMCWhether it is an MC analysis
Returns
Pointer to the newly created object

Definition at line 493 of file AliEmcalTrackingQATask.cxx.

Referenced by SetDoSeparateTRDrefit().

void AliEmcalTrackingQATask::AllocateDetectorLevelTHnSparse ( )
protected

Allocate THnSparse to contain tracks

Definition at line 207 of file AliEmcalTrackingQATask.cxx.

Referenced by SetDoSeparateTRDrefit(), and UserCreateOutputObjects().

void AliEmcalTrackingQATask::AllocateGeneratorLevelTHnSparse ( )
protected

Allocate THnSparse to contain particles (generator level)

Definition at line 238 of file AliEmcalTrackingQATask.cxx.

Referenced by SetDoSeparateTRDrefit(), and UserCreateOutputObjects().

void AliEmcalTrackingQATask::AllocateMatchedParticlesTHnSparse ( )
protected

Allocate THnSparse to contain tracks matched to particles

Definition at line 262 of file AliEmcalTrackingQATask.cxx.

Referenced by SetDoSeparateTRDrefit(), and UserCreateOutputObjects().

void AliEmcalTrackingQATask::ExecOnce ( )
protectedvirtual

Perform steps needed to initialize the analysis. This function relies on the presence of an input event (ESD or AOD event). Consequently it is called internally by UserExec for the first event.

This function connects all containers attached to this task to the corresponding arrays in the input event. Furthermore it initializes the geometry.

Reimplemented from AliAnalysisTaskEmcalLight.

Definition at line 171 of file AliEmcalTrackingQATask.cxx.

Referenced by SetDoSeparateTRDrefit().

void AliEmcalTrackingQATask::FillDetectorLevelTHnSparse ( Double_t  cent,
Double_t  trackEta,
Double_t  trackPhi,
Double_t  trackPt,
Double_t  sigma1OverPt,
Int_t  mcGen,
Byte_t  trackType 
)
protected

Fill THnSparse with tracks

Definition at line 295 of file AliEmcalTrackingQATask.cxx.

Referenced by FillHistograms(), and SetDoSeparateTRDrefit().

void AliEmcalTrackingQATask::FillGeneratorLevelTHnSparse ( Double_t  cent,
Double_t  partEta,
Double_t  partPhi,
Double_t  partPt,
Int_t  mcGen,
Byte_t  findable 
)
protected

Fill THnSparse with particles

Definition at line 329 of file AliEmcalTrackingQATask.cxx.

Referenced by FillHistograms(), and SetDoSeparateTRDrefit().

Bool_t AliEmcalTrackingQATask::FillHistograms ( )
protectedvirtual

Fill all the histograms

Reimplemented from AliAnalysisTaskEmcalLight.

Definition at line 394 of file AliEmcalTrackingQATask.cxx.

Referenced by SetDoSeparateTRDrefit().

void AliEmcalTrackingQATask::FillMatchedParticlesTHnSparse ( Double_t  cent,
Double_t  partEta,
Double_t  partPhi,
Double_t  partPt,
Double_t  trackEta,
Double_t  trackPhi,
Double_t  trackPt,
Byte_t  trackType 
)
protected

Fill THnSparse with tracks matched to particles

Definition at line 357 of file AliEmcalTrackingQATask.cxx.

Referenced by FillHistograms(), and SetDoSeparateTRDrefit().

void AliEmcalTrackingQATask::GenerateHistoBins ( )
protected

Generate histogram bins

Definition at line 86 of file AliEmcalTrackingQATask.cxx.

Referenced by AliEmcalTrackingQATask(), and SetDoSeparateTRDrefit().

THnSparse * AliEmcalTrackingQATask::GenerateTHnSparse ( const char *  name,
const std::vector< std::tuple< std::string, std::vector< Double_t >::iterator, std::vector< Double_t >::iterator >> &  axis 
)
protected

Generate a THnSparseF based on a list of axis provided

Parameters
nameName of the output histogram
axisVector containing the axis
Returns
The newly created THnSparse

Definition at line 188 of file AliEmcalTrackingQATask.cxx.

Referenced by AllocateDetectorLevelTHnSparse(), AllocateGeneratorLevelTHnSparse(), AllocateMatchedParticlesTHnSparse(), and SetDoSeparateTRDrefit().

AliEmcalTrackingQATask& AliEmcalTrackingQATask::operator= ( const AliEmcalTrackingQATask )
private
void AliEmcalTrackingQATask::SetDoSeparateTRDrefit ( Bool_t  s)
inline

Definition at line 35 of file AliEmcalTrackingQATask.h.

void AliEmcalTrackingQATask::SetDoSigma1OverPt ( Bool_t  s)
inline

Definition at line 33 of file AliEmcalTrackingQATask.h.

void AliEmcalTrackingQATask::SetDoSigmaPtOverPtGen ( Bool_t  s)
inline

Definition at line 34 of file AliEmcalTrackingQATask.h.

void AliEmcalTrackingQATask::UserCreateOutputObjects ( )

Create histograms

Definition at line 128 of file AliEmcalTrackingQATask.cxx.

Member Data Documentation

std::vector<Double_t> AliEmcalTrackingQATask::f1OverPtResHistBins
protected

! 1/pt res bins

Definition at line 70 of file AliEmcalTrackingQATask.h.

Referenced by AllocateDetectorLevelTHnSparse(), and GenerateHistoBins().

std::vector<Double_t> AliEmcalTrackingQATask::fCentHistBins
protected
AliTrackContainer* AliEmcalTrackingQATask::fDetectorLevel
protected

! detector level container

Definition at line 63 of file AliEmcalTrackingQATask.h.

Referenced by ExecOnce(), FillHistograms(), and UserCreateOutputObjects().

Bool_t AliEmcalTrackingQATask::fDoSeparateTRDrefit
protected

Separate tracks into tracks with TRD refit and 4 tracklets (gold) or not (sub-gold)

Definition at line 58 of file AliEmcalTrackingQATask.h.

Referenced by AllocateDetectorLevelTHnSparse(), AllocateMatchedParticlesTHnSparse(), FillHistograms(), and SetDoSeparateTRDrefit().

Bool_t AliEmcalTrackingQATask::fDoSigma1OverPt
protected

add sigma(1/pt), if false add sigma(pt)/pt instead

Definition at line 56 of file AliEmcalTrackingQATask.h.

Referenced by AllocateDetectorLevelTHnSparse(), AllocateMatchedParticlesTHnSparse(), and SetDoSigma1OverPt().

Bool_t AliEmcalTrackingQATask::fDoSigmaPtOverPtGen
protected

MC: if true do sigma((ptgen - ptdet) / ptgen), otherwise do sigma((ptgen - ptdet) / ptdet)

Definition at line 57 of file AliEmcalTrackingQATask.h.

Referenced by SetDoSigmaPtOverPtGen().

std::vector<Double_t> AliEmcalTrackingQATask::fEtaHistBins
protected
AliMCParticleContainer* AliEmcalTrackingQATask::fGeneratorLevel
protected

! generator level container

Definition at line 62 of file AliEmcalTrackingQATask.h.

Referenced by FillHistograms(), and UserCreateOutputObjects().

std::vector<Double_t> AliEmcalTrackingQATask::fIntegerHistBins
protected
Bool_t AliEmcalTrackingQATask::fIsEsd
protected

! whether it is ESD data

Definition at line 61 of file AliEmcalTrackingQATask.h.

Referenced by ExecOnce(), and FillHistograms().

THnSparse* AliEmcalTrackingQATask::fParticlesMatched
protected

all physical primary particles

Definition at line 76 of file AliEmcalTrackingQATask.h.

Referenced by AllocateMatchedParticlesTHnSparse(), and FillMatchedParticlesTHnSparse().

THnSparse* AliEmcalTrackingQATask::fParticlesPhysPrim
protected

all tracks

Definition at line 75 of file AliEmcalTrackingQATask.h.

Referenced by AllocateGeneratorLevelTHnSparse(), and FillGeneratorLevelTHnSparse().

std::vector<Double_t> AliEmcalTrackingQATask::fPhiHistBins
protected
std::vector<Double_t> AliEmcalTrackingQATask::fPtHistBins
protected
std::vector<Double_t> AliEmcalTrackingQATask::fPtRelDiffHistBins
protected

! pt relative difference bins

Definition at line 68 of file AliEmcalTrackingQATask.h.

Referenced by AllocateMatchedParticlesTHnSparse(), and GenerateHistoBins().

std::vector<Double_t> AliEmcalTrackingQATask::fPtResHistBins
protected

! pt res bins

Definition at line 69 of file AliEmcalTrackingQATask.h.

Referenced by AllocateDetectorLevelTHnSparse(), and GenerateHistoBins().

THnSparse* AliEmcalTrackingQATask::fTracks
protected

The documentation for this class was generated from the following files: