AliPhysics  720d1f3 (720d1f3)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskEmcalLight Class Reference

Base task in the EMCAL framework (lighter version of AliAnalysisTaskEmcal) More...

#include <AliAnalysisTaskEmcalLight.h>

Inheritance diagram for AliAnalysisTaskEmcalLight:

Public Types

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...
 

Public Member Functions

 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 SetUseNewCentralityEstimation (Bool_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 ()
 

Protected Member Functions

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 void ExecOnce ()
 
virtual Bool_t FillGeneralHistograms ()
 
virtual Bool_t IsEventSelected ()
 
virtual Bool_t RetrieveEventObjects ()
 
virtual Bool_t FillHistograms ()
 
virtual Bool_t Run ()
 

Static Protected Member Functions

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 Double_tGenerateFixedBinArray (Int_t n, Double_t min, Double_t max)
 
static void GenerateFixedBinArray (Int_t n, Double_t min, Double_t max, Double_t *array)
 
static Double_t GetParallelFraction (AliVParticle *part1, AliVParticle *part2)
 
static Double_t GetParallelFraction (const TVector3 &vect1, AliVParticle *part2)
 
static EBeamType_t BeamTypeFromRunNumber (Int_t runnumber)
 

Protected Attributes

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...
 
Bool_t fUseNewCentralityEstimation
 Use new centrality estimation (for 2015 data) 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 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...
 
TString 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 More...
 
Double_t fPtHard
 !event pt hard More...
 
Int_t fNTrials
 !event trials More...
 
Float_t fXsection
 !x-section from pythia header More...
 
TListfOutput
 !output list More...
 
TH1fHistEventCount
 !incoming and selected events More...
 
TH1fHistTrialsVsPtHard
 !total number of trials per pt hard bin after selection More...
 
TH1fHistEventsVsPtHard
 !total number of events per pt hard bin after selection More...
 
TProfile * fHistXsectionVsPtHard
 !x section from pythia header More...
 
TH1fHistTrials
 !trials from pyxsec.root More...
 
TH1fHistEvents
 !total number of events per pt hard bin More...
 
TProfile * fHistXsection
 !x section from pyxsec.root More...
 
TH1fHistCentrality
 !event centrality distribution More...
 
TH1fHistZVertex
 !z vertex position More...
 
TH1fHistEventPlane
 !event plane distribution More...
 
TH1fHistEventRejection
 !book keep reasons for rejecting event More...
 
TH1fHistTriggerClasses
 !number of events in each trigger class More...
 

Static Protected Attributes

static Double_t fgkEMCalDCalPhiDivide = 4.
 phi value used to distinguish between DCal and EMCal More...
 

Private Member Functions

 AliAnalysisTaskEmcalLight (const AliAnalysisTaskEmcalLight &)
 
AliAnalysisTaskEmcalLightoperator= (const AliAnalysisTaskEmcalLight &)
 

Detailed Description

Base task in the EMCAL framework (lighter version of AliAnalysisTaskEmcal)

Author
Salvatore Aiola salva.nosp@m.tore.nosp@m..aiol.nosp@m.a@ce.nosp@m.rn.ch, Yale University

This class is the base class for Analysis Tasks using the core EMCAL framework. User tasks can choose to inherit from it as an alternative to AliAnalysisTaskEmcal. In contrast to the normal AliAnalysisTaskSE, the main event loop function to be implemented by the user is called Run. This function is only called in case the event was selected previously.

A key feature is the handling of EMCAL containers (cluster/ particle/track). Users can create containers and attach it to their analysis task.

AliParticleContainer *cont = task->AddParticleContainer("MCParticlesSelected");
cont->SetEtaLimits(-0.7, 0.7);

Note that the name in the container must match the name of the TClonesArray in the input event connected to the container. Containers can be accessed inside the task either by their name or by their index as they were added to the task. The indices of cluster- or particle-containers are not mixed. Containers provide an easy access to content created by other tasks and attached to the event as a TClonesArray.

For more information refer to Writing an analysis using the AliAnalysisTaskEmcal

Definition at line 69 of file AliAnalysisTaskEmcalLight.h.

Member Enumeration Documentation

Switch for the beam type.

Enumerator
kNA 

Undefined.

kpp 

Proton-Proton.

kAA 

Nucleus-Nucleus.

kpA 

Proton-Nucleus.

Definition at line 86 of file AliAnalysisTaskEmcalLight.h.

Switch for the data type.

Enumerator
kUnknownDataType 
kESD 
kAOD 

Definition at line 76 of file AliAnalysisTaskEmcalLight.h.

Constructor & Destructor Documentation

AliAnalysisTaskEmcalLight::AliAnalysisTaskEmcalLight ( )

Default constructor.

Definition at line 60 of file AliAnalysisTaskEmcalLight.cxx.

AliAnalysisTaskEmcalLight::AliAnalysisTaskEmcalLight ( const char *  name,
Bool_t  histo = kFALSE 
)

Standard constructor. Should be used by the user.

Note: This constructor also handles the general histograms. In case the second parameter is true, then general histograms (see UserCreateOutputObjects and FillHistograms) are created and filled by the task, and a container is provided handling the user histograms.

Parameters
[in]nameName of the task
[in]histoIf true then general histograms are filled by the task

Definition at line 145 of file AliAnalysisTaskEmcalLight.cxx.

AliAnalysisTaskEmcalLight::~AliAnalysisTaskEmcalLight ( )
virtual

Destructor

Definition at line 232 of file AliAnalysisTaskEmcalLight.cxx.

AliAnalysisTaskEmcalLight::AliAnalysisTaskEmcalLight ( const AliAnalysisTaskEmcalLight )
private

Member Function Documentation

void AliAnalysisTaskEmcalLight::AddAcceptedTriggerClass ( const char *  trigClass)
inline
AliClusterContainer * AliAnalysisTaskEmcalLight::AddClusterContainer ( std::string  branchName,
std::string  contName = "" 
)

Create new cluster container and attach it to the task. The name provided to this function must match the name of the array attached to the new container inside the input event.

Parameters
[in]branchNameName of the array the container points to
[in]contNameName of the container points to (optional)
Returns
Pointer to the new cluster container

Definition at line 1014 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by AliAnalysisTaskDmesonJets::AddTaskDmesonJets(), AliAnalysisTaskDmesonJetsDetectorResponse::AddTaskDmesonJetsDetectorResponse(), AliAnalysisTaskEmcalJetQA::AddTaskEmcalJetQA(), and AliAnalysisTaskEmcalJetTreeBase::AddTaskEmcalJetTree().

void AliAnalysisTaskEmcalLight::AddObjectToEvent ( TObject obj,
Bool_t  attempt = kFALSE 
)
protected

Add object to event

Parameters
[in]objObject to be added
[in]attemptIf true don't handle error

Definition at line 1056 of file AliAnalysisTaskEmcalLight.cxx.

AliParticleContainer * AliAnalysisTaskEmcalLight::AddParticleContainer ( std::string  branchName,
std::string  contName = "" 
)

Create new particle container and attach it to the task. The name provided to this function must match the name of the array attached to the new container inside the input event.

Parameters
[in]branchNameName of the array the container points to
[in]contNameName of the container points to (optional)
Returns
Pointer to the new particle container

Definition at line 989 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by AliAnalysisTaskEmcalJetQA::AddTaskEmcalJetQA(), and AliAnalysisTaskEmcalJetTreeBase::AddTaskEmcalJetTree().

void AliAnalysisTaskEmcalLight::AddRejectedTriggerClass ( const char *  trigClass)
inline

Definition at line 134 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::AdoptClusterContainer ( AliClusterContainer cont)
inline

Definition at line 101 of file AliAnalysisTaskEmcalLight.h.

Referenced by AddClusterContainer().

AliAnalysisTaskEmcalLight::EBeamType_t AliAnalysisTaskEmcalLight::BeamTypeFromRunNumber ( Int_t  runnumber)
staticprotected

Determine the beam type based on hard-coded run ranges

Parameters
runnumberrun number
Returns
enumeration value corresponding to the beam type

Definition at line 1238 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by AliAnalysisTaskEmcalJetQA::AddTaskEmcalJetQA_QAtrain(), and AliEmcalTriggerQATask::AddTaskEmcalTriggerQA_QAtrain().

Bool_t AliAnalysisTaskEmcalLight::CheckMCOutliers ( )
protected

Filter the mc tails in pt-hard distributions See https://twiki.cern.ch/twiki/bin/view/ALICE/JetMCProductionsCrossSections#How_to_reject_tails_in_the_pT_ha

Returns
kTRUE if it is not a MC outlier

Definition at line 1259 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by IsEventSelected().

void AliAnalysisTaskEmcalLight::ClearAcceptedTriggerClasses ( )
inline

Definition at line 135 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::ClearRejectedTriggerClasses ( )
inline

Definition at line 136 of file AliAnalysisTaskEmcalLight.h.

Float_t AliAnalysisTaskEmcalLight::ClusterPtFactor ( )
inline

Definition at line 142 of file AliAnalysisTaskEmcalLight.h.

Double_t AliAnalysisTaskEmcalLight::DeltaPhi ( Double_t  phia,
Double_t  phib,
Double_t  rangeMin = -TMath::Pi()/2,
Double_t  rangeMax = 3*TMath::Pi()/2 
)
inlinestaticprotected

Calculate Delta Phi.

Parameters
[in]phia\( \phi \) of the first particle
[in]phib\( \phi \) of the second particle
[in]rangeMinMinimum \( \phi \) range
[in]rangeMaxMaximum \( \phi \) range
Returns
Difference in \( \phi \)

Definition at line 289 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::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 in AliAnalysisTaskDmesonJets, AliAnalysisTaskDmesonJetsDetectorResponse, AliAnalysisTaskEmcalJetQA, AliAnalysisTaskEmcalRun2QA, AliEmcalTriggerQATask, and AliAnalysisTaskEmcalJetLight.

Definition at line 626 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by AliAnalysisTaskEmcalJetLight::ExecOnce(), AliEmcalTriggerQATask::ExecOnce(), AliAnalysisTaskEmcalRun2QA::ExecOnce(), AliAnalysisTaskEmcalJetQA::ExecOnce(), AliAnalysisTaskDmesonJets::ExecOnce(), and UserExec().

Bool_t AliAnalysisTaskEmcalLight::FillGeneralHistograms ( )
protectedvirtual

Filling general histrograms. Among the general histograms that are filled only in case of running over MC productions are

  • \( p_{t} \)-hard bin
  • Cross section after event selection
  • Number of trials after event selection
  • Number of events after event selection In any case the vertex distribution is filled as general histograms. For heavy ion collisions also the centrality distribution and the event plane distribution are filled.
    Returns
    Always true

Definition at line 393 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by UserExec().

virtual Bool_t AliAnalysisTaskEmcalLight::FillHistograms ( )
inlineprotectedvirtual

This function optionally fills histograms created by the users. Can access data previously handled by the user Run function.

Returns

Reimplemented in AliAnalysisTaskDmesonJets, AliAnalysisTaskEmcalJetTree< T, U >, AliAnalysisTaskDmesonJetsDetectorResponse, AliAnalysisTaskEmcalJetSpectraQA, AliAnalysisTaskEmcalJetQA, AliAnalysisTaskEmcalRun2QA, and AliEmcalTriggerQATask.

Definition at line 170 of file AliAnalysisTaskEmcalLight.h.

Referenced by UserExec().

Double_t * AliAnalysisTaskEmcalLight::GenerateFixedBinArray ( Int_t  n,
Double_t  min,
Double_t  max 
)
inlinestaticprotected

Generate array with fixed binning within min and max with n bins. The array containing the bin edges set will be created by this function. Attention, this function does not take care about memory it allocates - the array needs to be deleted outside of this function

Parameters
[in]nNumber of bins
[in]minMinimum value for the binning
[in]maxMaximum value for the binning
Returns
Array containing the bin edges created bu this function

Definition at line 332 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::GenerateFixedBinArray ( Int_t  n,
Double_t  min,
Double_t  max,
Double_t array 
)
inlinestaticprotected

Generate array with fixed binning within min and max with n bins. The parameter array will contain the bin edges set by this function. Attention, the array needs to be provided from outside with a size of n+1

Parameters
[in]nNumber of bins
[in]minMinimum value for the binning
[in]maxMaximum value for the binning
[out]arrayArray containing the bin edges

Definition at line 314 of file AliAnalysisTaskEmcalLight.h.

TClonesArray * AliAnalysisTaskEmcalLight::GetArrayFromEvent ( const char *  name,
const char *  clname = 0 
)
protected

Read a TClonesArray from event. Attention: Both the name of the array and the name of the object stored inside must match.

Parameters
[in]nameName of the array to be read in
[in]clnameName of the type of the objects stored in the array
Returns
Pointer to the TClonesArray (NULL if not found)

Definition at line 845 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by ExecOnce().

AliAnalysisTaskEmcalLight::EBeamType_t AliAnalysisTaskEmcalLight::GetBeamType ( )
protected

Get beam type : pp-AA-pA ESDs have it directly, AODs get it from hardcoded run number ranges

Returns
Beam type of the run.

Definition at line 696 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by RetrieveEventObjects().

AliClusterContainer * AliAnalysisTaskEmcalLight::GetClusterContainer ( std::string  name) const

Find cluster container attached to this task according to its name

Parameters
[in]nameName of the cluster container
Returns
Cluster container found under the given name

Definition at line 1044 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by CheckMCOutliers().

void AliAnalysisTaskEmcalLight::GetEtaPhiDiff ( const AliVTrack *  t,
const AliVCluster *  v,
Double_t phidiff,
Double_t etadiff 
)
staticprotected

Calculate \(\phi\) and \(\eta\) difference between a track (t) and a cluster (c). The position of the track is obtained on the EMCAL surface

Parameters
[in]tTrack to check
[in]vCluster to check
[out]phidiffDistance in \(\phi\) between cluster and track
[out]etadiffDistance in \(\eta\) between cluster and track

Definition at line 1165 of file AliAnalysisTaskEmcalLight.cxx.

AliMCParticleContainer* AliAnalysisTaskEmcalLight::GetMCParticleContainer ( std::string  name) const
inline

Definition at line 104 of file AliAnalysisTaskEmcalLight.h.

Double_t AliAnalysisTaskEmcalLight::GetParallelFraction ( AliVParticle *  part1,
AliVParticle *  part2 
)
staticprotected

Calculates the fraction of momentum z of part 1 w.r.t. part 2 in the direction of part 2.

Parameters
[in]part1Momentum vector for which the relative fraction is calculated
[in]part2Reference momentum vector for the calculation
Returns
Relative fraction of momentum of particle 1 with respect to particle 2

Definition at line 1136 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by AliAnalysisTaskEmcalJetSpectraQA::FillHistograms().

Double_t AliAnalysisTaskEmcalLight::GetParallelFraction ( const TVector3 &  vect1,
AliVParticle *  part2 
)
staticprotected

Calculates the fraction of momentum z of vect 1 w.r.t. part 2 in the direction of part 2.

Parameters
[in]vect1Momentum vector for which the relative fraction is calculated
[in]part2Reference momentum vector for the calculation
Returns
Relative fraction of momentum of particle 1 with respect to particle 2

Definition at line 1150 of file AliAnalysisTaskEmcalLight.cxx.

AliParticleContainer * AliAnalysisTaskEmcalLight::GetParticleContainer ( std::string  name) const

Find particle container attached to this task according to its name

Parameters
[in]nameName of the particle container
Returns
Particle container found under the given name

Definition at line 1032 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by CheckMCOutliers(), GetMCParticleContainer(), and GetTrackContainer().

AliTrackContainer* AliAnalysisTaskEmcalLight::GetTrackContainer ( std::string  name) const
inline

Definition at line 105 of file AliAnalysisTaskEmcalLight.h.

Byte_t AliAnalysisTaskEmcalLight::GetTrackType ( const AliVTrack *  t)
staticprotected

Get track type encoded from bits 20 and 21.

Parameters
[in]tTrack to check
Returns

Definition at line 1189 of file AliAnalysisTaskEmcalLight.cxx.

Byte_t AliAnalysisTaskEmcalLight::GetTrackType ( const AliAODTrack *  aodTrack,
UInt_t  filterBit1,
UInt_t  filterBit2 
)
staticprotected

Return track type: 0 = filterBit1, 1 = filterBit2 && ITS, 2 = filterBit2 && !ITS. Returns 3 if filterBit1 and filterBit2 do not test. WARNING: only works with AOD tracks and AOD filter bits must be provided. Otherwise will always return 0.

Parameters
aodTrack
filterBit1
filterBit2
Returns

Definition at line 1210 of file AliAnalysisTaskEmcalLight.cxx.

Bool_t AliAnalysisTaskEmcalLight::IsEventSelected ( )
protectedvirtual

Performing event selection. This contains

  • Selection of the trigger class
  • Selection according to the centrality class
  • Selection of event with good vertex quality
  • Selection of the event plane orientation
  • Selection of the multiplicity (including above minimum \( p_{t} \) and tracks in the EMCAL acceptance

Note that for the vertex selection both the usage of the analysis util and the range of the z-position of the primary vertex need to be specified.

In case the event is rejected, a histogram monitoring the rejeciton reason is filled with the bin corresponding to the source of the rejection of the current event.

Returns
True if the event is selected.

Definition at line 751 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by RetrieveEventObjects(), and UserExec().

Bool_t AliAnalysisTaskEmcalLight::IsTrackInEmcalAcceptance ( AliVParticle *  part,
Double_t  edges = 0.9 
) const
protected

Determines if a track is inside the EMCal acceptance, using \(\eta\)/ \(\phi\) at the vertex (no propagation). Includes +/- edges. Useful to determine whether track propagation should be attempted.

Parameters
[in]partParticle to check
[in]edgesSize of the edges in \(\phi\) excluded from the EMCAL acceptance
Returns
True if a particle is inside the EMCAL acceptance, false otherwise

Definition at line 1075 of file AliAnalysisTaskEmcalLight.cxx.

Float_t AliAnalysisTaskEmcalLight::JetPtFactor ( )
inline

Definition at line 140 of file AliAnalysisTaskEmcalLight.h.

AliAnalysisTaskEmcalLight& AliAnalysisTaskEmcalLight::operator= ( const AliAnalysisTaskEmcalLight )
private
Bool_t AliAnalysisTaskEmcalLight::PythiaInfoFromFile ( const char *  currFile,
Float_t fXsec,
Float_t fTrials,
Int_t pthard 
)
protected

Get the cross section and the trails either from pyxsec.root or from pysec_hists.root Get the pt hard bin from the file path This is to called in Notify and should provide the path to the AOD/ESD file (Partially copied from AliAnalysisHelperJetTasks)

Parameters
[in]currFileName of the current ESD/AOD file
[out]fXsecCross section calculated by PYTHIA
[out]fTrialsNumber of trials needed by PYTHIA
[out]pthard\( p_{t} \)-hard bin, extracted from path name
Returns
True if parameters were obtained successfully, false otherwise

Definition at line 488 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by UserNotify().

void AliAnalysisTaskEmcalLight::RemoveClusterContainer ( std::string  name)
inline

Definition at line 107 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::RemoveParticleContainer ( std::string  name)
inline

Definition at line 106 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::ResetMCFilter ( )
inline

Definition at line 138 of file AliAnalysisTaskEmcalLight.h.

Bool_t AliAnalysisTaskEmcalLight::RetrieveEventObjects ( )
protectedvirtual
virtual Bool_t AliAnalysisTaskEmcalLight::Run ( )
inlineprotectedvirtual

Run function. This is the core function of the analysis and contains the user code. Therefore users have to implement this function.

Returns
True if event is selected, false otherwise

Reimplemented in AliAnalysisTaskDmesonJets, AliAnalysisTaskDmesonJetsDetectorResponse, and AliEmcalTriggerQATask.

Definition at line 178 of file AliAnalysisTaskEmcalLight.h.

Referenced by UserExec().

void AliAnalysisTaskEmcalLight::SetCaloCellsName ( const char *  n)
inline
void AliAnalysisTaskEmcalLight::SetCaloTriggerPatchInfoName ( const char *  n)
inline

Definition at line 111 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetCaloTriggersName ( const char *  n)
inline
void AliAnalysisTaskEmcalLight::SetCentBins ( const std::vector< double > &  bins)
inline

Definition at line 121 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetCentralityEstimator ( const char *  c)
inline

Definition at line 113 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetCentRange ( Double_t  min,
Double_t  max 
)
inline

Definition at line 127 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetClusterPtFactor ( Float_t  f)
inline

Definition at line 141 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetIsPythia ( Bool_t  i)
inline

Definition at line 114 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetJetPtFactor ( Float_t  f)
inline

Definition at line 139 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetMaxMinimumBiasPtHard ( Int_t  max)
inline

Definition at line 132 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetMCFilter ( )
inline

Definition at line 137 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetMinNVertCont ( Int_t  cut)
inline

Definition at line 130 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetNeedEmcalGeom ( Bool_t  n)
inline
void AliAnalysisTaskEmcalLight::SetPtHardRange ( Double_t  min,
Double_t  max 
)
inline

Definition at line 131 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetSwitchOffLHC15oFaultyBranches ( Bool_t  b)
inline

Definition at line 123 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetTrackPtFactor ( Float_t  f)
inline

Definition at line 143 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetTriggerSelectionBitMap ( UInt_t  t)
inline

Definition at line 126 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetUseNewCentralityEstimation ( Bool_t  b)
inline

Definition at line 118 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::SetZvertexDiffValue ( Double_t  cut)
inline

Definition at line 129 of file AliAnalysisTaskEmcalLight.h.

Float_t AliAnalysisTaskEmcalLight::TrackPtFactor ( )
inline

Definition at line 144 of file AliAnalysisTaskEmcalLight.h.

void AliAnalysisTaskEmcalLight::UserCreateOutputObjects ( )
protected

Performing run-independent initialization. This consists of

  • Determining data type (ESD/AOD)
  • Creating general QA histograms

Attention: Histograms are only created in case the task is configured for this (second argument in the named constructor). In this case the container fOuput is created which can be used by the users to handle and store their histograms. In this case the users must overwrite this function in their tasks and call this function right at the beginning of their function.

The general QA histograms monitor event related observables like the z-position of the primary vertex before and after event selection, the trigger classes selecting the event and the event rejection reason, but also Monte-Carlo related observables like the cross section, the number of trials and the \( p_{t} \)-hard bin in case of a corresponding production.

Definition at line 257 of file AliAnalysisTaskEmcalLight.cxx.

Referenced by AliAnalysisTaskEmcalJetQA::UserCreateOutputObjects(), AliAnalysisTaskEmcalRun2QA::UserCreateOutputObjects(), AliAnalysisTaskEmcalJetSpectraQA::UserCreateOutputObjects(), AliEmcalTriggerQATask::UserCreateOutputObjects(), and AliAnalysisTaskDmesonJets::UserCreateOutputObjects().

void AliAnalysisTaskEmcalLight::UserExec ( Option_t option)
protected

Event loop, called for each event. The function consists of three steps:

  1. Event selection
  2. Running the user code
  3. Filling general (QA) histograms The event selection steps are documented in the function IsEventSelected.

Users must not overwrite this function. Instead the virtual function Run should be user and implemented by the user. The return value of the Run function decides on whether general histograms are filled.

In case the task is not yet initialized, which is the case for the first event, the UserExec performs several basic initilization steps, documented in the functions ExecOnce. Note that this is only done for the first event and only for properties which need the presence of an input event.

Parameters
[in]optionNot used

Definition at line 439 of file AliAnalysisTaskEmcalLight.cxx.

Bool_t AliAnalysisTaskEmcalLight::UserNotify ( )
protected

Notifying the user that the input data file has changed and performing steps needed to be done.

This function is of relevance for analysis of Monte-Carlo productions in \( p_{t} \)-hard bins as it reads the pythia cross section and the number of trials from the file pyxsec.root and fills the relevant distributions with the values obtained.

Returns
False if the data tree or the data file doesn't exist, true otherwise

Definition at line 577 of file AliAnalysisTaskEmcalLight.cxx.

Member Data Documentation

std::set<std::string> AliAnalysisTaskEmcalLight::fAcceptedTriggerClasses
protected

list of accepted trigger classes

Definition at line 224 of file AliAnalysisTaskEmcalLight.h.

Referenced by AddAcceptedTriggerClass(), ClearAcceptedTriggerClasses(), and IsEventSelected().

EBeamType_t AliAnalysisTaskEmcalLight::fBeamType
protected
TString AliAnalysisTaskEmcalLight::fCaloTriggerPatchInfoName
protected

trigger patch info array name

Definition at line 205 of file AliAnalysisTaskEmcalLight.h.

Referenced by ExecOnce(), and SetCaloTriggerPatchInfoName().

AliVCaloTrigger* AliAnalysisTaskEmcalLight::fCaloTriggers
protected

!calo triggers

Definition at line 237 of file AliAnalysisTaskEmcalLight.h.

Referenced by ExecOnce(), and AliEmcalTriggerQATask::FillHistograms().

TString AliAnalysisTaskEmcalLight::fCaloTriggersName
protected

name of calo triggers collection

Definition at line 204 of file AliAnalysisTaskEmcalLight.h.

Referenced by ExecOnce(), and SetCaloTriggersName().

std::vector<double> AliAnalysisTaskEmcalLight::fCentBins
protected
TString AliAnalysisTaskEmcalLight::fCentEst
protected

name of the centrality estimator

Definition at line 206 of file AliAnalysisTaskEmcalLight.h.

Referenced by RetrieveEventObjects(), and SetCentralityEstimator().

Bool_t AliAnalysisTaskEmcalLight::fCreateHisto
protected

whether or not create histograms

Definition at line 196 of file AliAnalysisTaskEmcalLight.h.

Referenced by AliAnalysisTaskEmcalLight(), UserCreateOutputObjects(), UserExec(), and UserNotify().

EDataType_t AliAnalysisTaskEmcalLight::fDataType
protected

!data type (ESD or AOD)

Definition at line 234 of file AliAnalysisTaskEmcalLight.h.

Referenced by RetrieveEventObjects(), and UserCreateOutputObjects().

Double_t AliAnalysisTaskEmcalLight::fEPV0A
protected

!event plane V0A

Definition at line 242 of file AliAnalysisTaskEmcalLight.h.

Referenced by RetrieveEventObjects().

Double_t AliAnalysisTaskEmcalLight::fEPV0C
protected

!event plane V0C

Definition at line 243 of file AliAnalysisTaskEmcalLight.h.

Referenced by RetrieveEventObjects().

ULong_t AliAnalysisTaskEmcalLight::fFiredTriggerBitMap
protected

!bit map of fired triggers

Definition at line 248 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and RetrieveEventObjects().

TString AliAnalysisTaskEmcalLight::fFiredTriggerClasses
protected

!trigger classes fired by the current event

Definition at line 249 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and RetrieveEventObjects().

Bool_t AliAnalysisTaskEmcalLight::fGeneralHistograms
protected

whether or not it should fill some general histograms

Definition at line 195 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), SetMakeGeneralHistograms(), UserCreateOutputObjects(), UserExec(), and UserNotify().

Double_t AliAnalysisTaskEmcalLight::fgkEMCalDCalPhiDivide = 4.
staticprotected

phi value used to distinguish between DCal and EMCal

Definition at line 191 of file AliAnalysisTaskEmcalLight.h.

Referenced by AliAnalysisTaskEmcalRun2QA::DoClusterLoop(), and AliAnalysisTaskEmcalJetQA::DoClusterLoop().

TH1* AliAnalysisTaskEmcalLight::fHistCentrality
protected

!event centrality distribution

Definition at line 266 of file AliAnalysisTaskEmcalLight.h.

Referenced by FillGeneralHistograms(), and UserCreateOutputObjects().

TH1* AliAnalysisTaskEmcalLight::fHistEventCount
protected

!incoming and selected events

Definition at line 259 of file AliAnalysisTaskEmcalLight.h.

Referenced by UserCreateOutputObjects(), and UserExec().

TH1* AliAnalysisTaskEmcalLight::fHistEventPlane
protected

!event plane distribution

Definition at line 268 of file AliAnalysisTaskEmcalLight.h.

Referenced by FillGeneralHistograms(), and UserCreateOutputObjects().

TH1* AliAnalysisTaskEmcalLight::fHistEventRejection
protected

!book keep reasons for rejecting event

Definition at line 269 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and UserCreateOutputObjects().

TH1* AliAnalysisTaskEmcalLight::fHistEvents
protected

!total number of events per pt hard bin

Definition at line 264 of file AliAnalysisTaskEmcalLight.h.

Referenced by UserCreateOutputObjects(), and UserNotify().

TH1* AliAnalysisTaskEmcalLight::fHistEventsVsPtHard
protected

!total number of events per pt hard bin after selection

Definition at line 261 of file AliAnalysisTaskEmcalLight.h.

Referenced by FillGeneralHistograms(), and UserCreateOutputObjects().

TH1* AliAnalysisTaskEmcalLight::fHistTrials
protected

!trials from pyxsec.root

Definition at line 263 of file AliAnalysisTaskEmcalLight.h.

Referenced by UserCreateOutputObjects(), and UserNotify().

TH1* AliAnalysisTaskEmcalLight::fHistTrialsVsPtHard
protected

!total number of trials per pt hard bin after selection

Definition at line 260 of file AliAnalysisTaskEmcalLight.h.

Referenced by FillGeneralHistograms(), and UserCreateOutputObjects().

TH1* AliAnalysisTaskEmcalLight::fHistTriggerClasses
protected

!number of events in each trigger class

Definition at line 270 of file AliAnalysisTaskEmcalLight.h.

Referenced by FillGeneralHistograms(), and UserCreateOutputObjects().

TProfile* AliAnalysisTaskEmcalLight::fHistXsection
protected

!x section from pyxsec.root

Definition at line 265 of file AliAnalysisTaskEmcalLight.h.

Referenced by UserCreateOutputObjects(), and UserNotify().

TProfile* AliAnalysisTaskEmcalLight::fHistXsectionVsPtHard
protected

!x section from pythia header

Definition at line 262 of file AliAnalysisTaskEmcalLight.h.

Referenced by FillGeneralHistograms(), and UserCreateOutputObjects().

TH1* AliAnalysisTaskEmcalLight::fHistZVertex
protected

!z vertex position

Definition at line 267 of file AliAnalysisTaskEmcalLight.h.

Referenced by FillGeneralHistograms(), and UserCreateOutputObjects().

Bool_t AliAnalysisTaskEmcalLight::fIsPythia
protected

if it is a PYTHIA production

Definition at line 202 of file AliAnalysisTaskEmcalLight.h.

Referenced by FillGeneralHistograms(), RetrieveEventObjects(), SetIsPythia(), UserCreateOutputObjects(), and UserNotify().

Bool_t AliAnalysisTaskEmcalLight::fLocalInitialized
protected

!whether or not the task has been already initialized

Definition at line 233 of file AliAnalysisTaskEmcalLight.h.

Referenced by AliEmcalTriggerQATask::ExecOnce(), ExecOnce(), and UserExec().

Double_t AliAnalysisTaskEmcalLight::fMaxCent
protected

max centrality for event selection

Definition at line 216 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and SetCentRange().

Double_t AliAnalysisTaskEmcalLight::fMaxMinimumBiasPtHard
protected

maximum pt hard for the minimum bias pt hard bin (MC)

Definition at line 223 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and SetMaxMinimumBiasPtHard().

Double_t AliAnalysisTaskEmcalLight::fMaxPtHard
protected

select maximum pt hard (MC)

Definition at line 222 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and SetPtHardRange().

Double_t AliAnalysisTaskEmcalLight::fMaxVz
protected

max vertex for event selection

Definition at line 218 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and SetVzRange().

Double_t AliAnalysisTaskEmcalLight::fMaxVzDiff
protected

upper limit for distance between primary and SPD vertex

Definition at line 219 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and SetZvertexDiffValue().

Bool_t AliAnalysisTaskEmcalLight::fMCRejectFilter
protected

enable the filtering of events by tail rejection

Definition at line 226 of file AliAnalysisTaskEmcalLight.h.

Referenced by CheckMCOutliers(), ResetMCFilter(), and SetMCFilter().

Double_t AliAnalysisTaskEmcalLight::fMinCent
protected

min centrality for event selection

Definition at line 215 of file AliAnalysisTaskEmcalLight.h.

Referenced by SetCentRange().

Double_t AliAnalysisTaskEmcalLight::fMinNVertCont
protected

minumum number of vertex contributors

Definition at line 220 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and SetMinNVertCont().

Double_t AliAnalysisTaskEmcalLight::fMinPtHard
protected

select minimum pt hard (MC)

Definition at line 221 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and SetPtHardRange().

Double_t AliAnalysisTaskEmcalLight::fMinVz
protected

min vertex for event selection

Definition at line 217 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and SetVzRange().

Bool_t AliAnalysisTaskEmcalLight::fNeedEmcalGeom
protected

whether or not the task needs the emcal geometry

Definition at line 197 of file AliAnalysisTaskEmcalLight.h.

Referenced by AliAnalysisTaskEmcalRun2QA::ExecOnce(), AliAnalysisTaskEmcalJetQA::ExecOnce(), ExecOnce(), and SetNeedEmcalGeom().

Int_t AliAnalysisTaskEmcalLight::fNTrials
protected

!event trials

Definition at line 254 of file AliAnalysisTaskEmcalLight.h.

Referenced by FillGeneralHistograms(), and RetrieveEventObjects().

Int_t AliAnalysisTaskEmcalLight::fNVertCont
protected

!event vertex number of contributors

Definition at line 246 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and RetrieveEventObjects().

Int_t AliAnalysisTaskEmcalLight::fNVertSPDCont
protected

!event SPD vertex number of contributors

Definition at line 247 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and RetrieveEventObjects().

Double_t AliAnalysisTaskEmcalLight::fPtHard
protected
Float_t AliAnalysisTaskEmcalLight::fPtHardAndClusterPtFactor
protected

Factor between ptHard and cluster pT to reject/accept event.

Definition at line 228 of file AliAnalysisTaskEmcalLight.h.

Referenced by CheckMCOutliers(), ClusterPtFactor(), and SetClusterPtFactor().

Float_t AliAnalysisTaskEmcalLight::fPtHardAndJetPtFactor
protected

Factor between ptHard and jet pT to reject/accept event.

Definition at line 227 of file AliAnalysisTaskEmcalLight.h.

Referenced by CheckMCOutliers(), JetPtFactor(), and SetJetPtFactor().

Float_t AliAnalysisTaskEmcalLight::fPtHardAndTrackPtFactor
protected

Factor between ptHard and track pT to reject/accept event.

Definition at line 229 of file AliAnalysisTaskEmcalLight.h.

Referenced by CheckMCOutliers(), SetTrackPtFactor(), and TrackPtFactor().

Int_t AliAnalysisTaskEmcalLight::fPtHardBin
protected

!event pt hard

Definition at line 252 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and UserNotify().

AliGenPythiaEventHeader* AliAnalysisTaskEmcalLight::fPythiaHeader
protected

!event Pythia header

Definition at line 251 of file AliAnalysisTaskEmcalLight.h.

Referenced by CheckMCOutliers(), and RetrieveEventObjects().

std::set<std::string> AliAnalysisTaskEmcalLight::fRejectedTriggerClasses
protected

list of accepted trigger classes

Definition at line 225 of file AliAnalysisTaskEmcalLight.h.

Referenced by AddRejectedTriggerClass(), ClearRejectedTriggerClasses(), and IsEventSelected().

Bool_t AliAnalysisTaskEmcalLight::fSwitchOffLHC15oFaultyBranches
protected

Switch off faulty tree branches in LHC15o AOD trees.

Definition at line 230 of file AliAnalysisTaskEmcalLight.h.

Referenced by ExecOnce(), and SetSwitchOffLHC15oFaultyBranches().

TClonesArray* AliAnalysisTaskEmcalLight::fTriggerPatchInfo
protected

!trigger patch info array

Definition at line 238 of file AliAnalysisTaskEmcalLight.h.

Referenced by ExecOnce().

UInt_t AliAnalysisTaskEmcalLight::fTriggerSelectionBitMap
protected

trigger selection bit map

Definition at line 214 of file AliAnalysisTaskEmcalLight.h.

Referenced by IsEventSelected(), and SetTriggerSelectionBitMap().

Bool_t AliAnalysisTaskEmcalLight::fUseNewCentralityEstimation
protected

Use new centrality estimation (for 2015 data)

Definition at line 199 of file AliAnalysisTaskEmcalLight.h.

Referenced by RetrieveEventObjects(), and SetUseNewCentralityEstimation().

Double_t AliAnalysisTaskEmcalLight::fVertexSPD[3]
protected

!event Svertex

Definition at line 245 of file AliAnalysisTaskEmcalLight.h.

Referenced by AliAnalysisTaskEmcalLight(), IsEventSelected(), and RetrieveEventObjects().

Float_t AliAnalysisTaskEmcalLight::fXsection
protected

!x-section from pythia header

Definition at line 255 of file AliAnalysisTaskEmcalLight.h.

Referenced by FillGeneralHistograms(), and RetrieveEventObjects().


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