![]() |
AliPhysics
4a7363b (4a7363b)
|
Hadronic correction component in the EMCal correction framework. More...
#include <AliEmcalCorrectionClusterHadronicCorrection.h>
Protected Member Functions | |
void | GenerateTrackToContainerMap () |
Double_t | ApplyHadCorrOneTrack (Int_t icluster, Double_t hadCorr) |
Double_t | ApplyHadCorrAllTracks (Int_t icluster, Double_t hadCorr) |
void | DoMatchedTracksLoop (Int_t icluster, Double_t &totalTrkP, Int_t &Nmatches, Double_t &trkPMCfrac, Int_t &NMCmatches) |
void | DoTrackLoop () |
Double_t | GetEtaSigma (Int_t pbin) const |
UInt_t | GetMomBin (Double_t pt) const |
Double_t | GetPhiMean (Int_t pbin, Int_t centbin) const |
Double_t | GetPhiSigma (Int_t pbin, Int_t centbin) const |
Double_t | ComputeM02Subtraction (const AliVCluster *cluster, Double_t energyclus, Int_t Nmatches, Double_t totalTrkP, Double_t hadCorr) |
Protected Attributes | |
Double_t | fPhiMatch |
phi match value (pp=0.050) More... | |
Double_t | fEtaMatch |
eta match value (pp=0.025) More... | |
Bool_t | fDoTrackClus |
loop over tracks first More... | |
Bool_t | fDoMomDepMatching |
set the values fPhiMatch and fEtaMatch depending on the track momentum More... | |
Double_t | fHadCorr |
hadronic correction (fraction) More... | |
Double_t | fEexclCell |
energy/cell that we cannot subtract from the clusters More... | |
Bool_t | fPlotOversubtractionHistograms |
compute and plot oversubtracted energy from embedded/signal matches (embedding only) More... | |
Bool_t | fDoNotOversubtract |
do not oversubtract energy from cluster (embedding only) More... | |
Bool_t | fUseM02SubtractionScheme |
Flag to enable hadronic correction scheme using cluster M02 value. More... | |
Bool_t | fUseConstantSubtraction |
Flag to perform constant rather than fractional subtract (only applicable if using M02 scheme) More... | |
Double_t | fConstantSubtractionValue |
Value to be used for constant subtraction (only applicable if using constant subtraction in M02 scheme) More... | |
AliEmcalContainerIndexMap< AliClusterContainer, AliVCluster > | fClusterContainerIndexMap |
! Mapping between index and cluster containers More... | |
AliEmcalContainerIndexMap< AliParticleContainer, AliVParticle > | fParticleContainerIndexMap |
! Mapping between index and particle containers More... | |
std::map< AliVTrack *, AliParticleContainer * > | fTrackToContainerMap |
! Mapping between AliVTracks and their respective particle containers. Needed for AODs only. See GenerateTrackToContainerMap() for more information. More... | |
TH2 * | fHistMatchEtaPhi [10][9][2] |
!deta vs. dphi of matched cluster-track pairs More... | |
TH2 * | fHistMatchEtaPhiAll |
!deta vs. dphi of matched cluster-track pairs More... | |
TH2 * | fHistMatchEtaPhiAllCl |
!deta vs. dphi of all cluster-track pairs (cl loop) More... | |
TH2 * | fHistMatchEvsP [5] |
!cluster energy vs. track momentum of matched pairs More... | |
TH2 * | fHistNMatchEnergy [5] |
!n matches vs. cluster energy More... | |
TH2 * | fHistNCellsEnergy [5][4] |
!n cells vs. cluster energy More... | |
TH2 * | fHistMatchdRvsEP [5] |
!matching distance vs. E/P More... | |
TH1 * | fHistNclusvsCent |
!n clusters vs. centrality More... | |
TH1 * | fHistNclusMatchvsCent |
!n clusters matched to some track vs. centrality More... | |
TH1 * | fHistEbefore |
!average energy of clusters before correction vs. centrality More... | |
TH1 * | fHistEafter |
!average energy of clusters after correction vs. centrality More... | |
TH2 * | fHistEoPCent |
!E/P vs. centrality More... | |
TH2 * | fHistNMatchCent |
!n matches vs. centraity More... | |
TH2 * | fHistNClusMatchCent |
!n clusters macthed to some track (tracks allowed to match more than one cluster) More... | |
TH1 * | fHistEsubPch [10] |
!Esub vs. total momentum of matched tracks (only 1 match) More... | |
TH2 * | fHistEsubPchRat [10] |
!Esub/momentum of matched tracks vs. total momentum of matched tracks (only 1 match) More... | |
TH2 * | fHistEsubPchRatAll [5] |
!Esub/momentum of matched tracks vs. total momentum of matched tracks (all number of matches) More... | |
TH2 * | fHistEmbTrackMatchesOversub [5] |
!Over-subtracted energy / cluster energy with embedded track matches (non-embedded matches < 5%) More... | |
TH2 * | fHistNonEmbTrackMatchesOversub [5] |
!Over-subtracted energy / cluster energy with non-embedded track matches (embedded matches < 5%) More... | |
TH2 * | fHistOversubMCClusters [5] |
!Over-subtracted energy / cluster energy (cluster MC energy fraction > 95%) More... | |
TH2 * | fHistOversubNonMCClusters [5] |
!Over-subtracted energy / cluster energy (cluster MC energy fraction < 5%) More... | |
TH2 * | fHistOversub [5] |
!Over-subtracted energy / cluster energy More... | |
![]() | |
PWG::Tools::AliYAMLConfiguration | fYAMLConfig |
Contains the YAML configuration used to configure the component. More... | |
Bool_t | fCreateHisto |
Flag to make some basic histograms. More... | |
Int_t | fRun |
! Run number More... | |
TString | fFilepass |
Input data pass number. More... | |
Bool_t | fGetPassFromFileName |
Get fFilepass from file name. More... | |
AliEmcalCorrectionEventManager | fEventManager |
Minimal task which inherits from AliAnalysisTaskSE and manages access to the event. More... | |
Bool_t | fEsdMode |
flag for ESD More... | |
AliMCEvent * | fMCEvent |
! MC More... | |
Double_t | fCent |
! Event centrality More... | |
Int_t | fNcentBins |
How many centrality bins (this member copied from AliAnalysisTaskEmcal) More... | |
Int_t | fCentBin |
! Event centrality bin More... | |
Int_t | fNbins |
No. of pt bins. More... | |
Double_t | fMinBinPt |
Min pt in histograms. More... | |
Double_t | fMaxBinPt |
Max pt in histograms. More... | |
Double_t | fVertex [3] |
! Event vertex More... | |
AliEMCALGeometry * | fGeom |
! Geometry object More... | |
Int_t | fMinMCLabel |
Minimum MC label value for the tracks/clusters being considered MC particles. More... | |
TObjArray | fClusterCollArray |
Cluster collection array. More... | |
TObjArray | fParticleCollArray |
Particle/track collection array. More... | |
AliVCaloCells * | fCaloCells |
! Pointer to CaloCells More... | |
AliEMCALRecoUtils * | fRecoUtils |
Pointer to RecoUtils. More... | |
TList * | fOutput |
! List of output histograms More... | |
TString | fBasePath |
Base folder path to get root files. More... | |
TString | fCustomBadChannelFilePath |
Custom path to bad channel map OADB file. More... | |
Private Member Functions | |
AliEmcalCorrectionClusterHadronicCorrection (const AliEmcalCorrectionClusterHadronicCorrection &) | |
AliEmcalCorrectionClusterHadronicCorrection & | operator= (const AliEmcalCorrectionClusterHadronicCorrection &) |
Static Private Attributes | |
static RegisterCorrectionComponent< AliEmcalCorrectionClusterHadronicCorrection > | reg |
Hadronic correction component in the EMCal correction framework.
Charged particles deposit some energy in the calorimeter. Most of the charged particle are hadrons, such as pions, kaons and protons. The hadronic response of the calorimeter has been studied in some details. Most of the high energetic particles ( > 1 GeV) only release a small amount of energy. These are usually called "minimum ionizing particles" (MIP). Occasionally hadrons may interact strongly with the nuclei of the material in the calorimeter and start a hadronic shower. In this case the energy deposition is much higher. High momentum muons are also MIP, but they never shower in the calorimeter. Finally electrons do shower in the calorimeter, in a way that is quite similar to a shower initiated by a photon.
All charged particles are measured in the tracking detectors (ITS+TPC+TOF). To avoid double counting their contribution to the jet energy flow, they need to be subtracted cluster-by-cluster. This is done by matching EMCal/DCal clusters with charged tracks and then subtracting a certain fraction of the matched tracks from the cluster energy. The most common choice is to subtract 100% of the momentum of the sum of the matched tracks.
The energy of the cluster after the hadronic correction can be obtained using the method cluster->GetHadCorrEnergy()
.
Based on code in AliHadCorrTask.
Definition at line 34 of file AliEmcalCorrectionClusterHadronicCorrection.h.
AliEmcalCorrectionClusterHadronicCorrection::AliEmcalCorrectionClusterHadronicCorrection | ( | ) |
Default constructor
Definition at line 27 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
|
virtual |
Destructor
Definition at line 84 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
|
private |
|
protected |
Apply the hadronic correction with all tracks.
Definition at line 774 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
Referenced by Run().
|
protected |
Apply the hadronic correction with one track only.
Definition at line 682 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
Referenced by Run().
|
protected |
Use cluster M02 value to determine how to correct cluster energy.
Definition at line 910 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
Referenced by ApplyHadCorrAllTracks().
|
protected |
Do the loop over matched tracks for the cluster.
Definition at line 571 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
Referenced by ApplyHadCorrAllTracks().
|
protected |
|
virtual |
Called before the first event to initialize the correction.
Reimplemented from AliEmcalCorrectionComponent.
Definition at line 247 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
|
protected |
Builds a map from all available tracks to their corresponding particle containers. Clusters in AODs store pointers to AliVTracks instead of the indices, which means that those tracks could only be matched back to their containers by searching through all of the containers for each track. This would be inefficient, so instead a map is built to find the correspondence once and then used to perform the lookup.
This function should be called for AODs, as it is unnecessary for ESDs!
Definition at line 317 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
Referenced by Run().
Get sigma in eta.
Definition at line 366 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
Referenced by ApplyHadCorrOneTrack(), and DoMatchedTracksLoop().
Get momentum bin.
Definition at line 338 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
Referenced by ApplyHadCorrOneTrack(), and DoMatchedTracksLoop().
|
protected |
Get phi mean.
Definition at line 375 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
Referenced by ApplyHadCorrOneTrack(), and DoMatchedTracksLoop().
|
protected |
Get phi sigma.
Definition at line 473 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
Referenced by ApplyHadCorrOneTrack(), and DoMatchedTracksLoop().
|
virtual |
Initialize and configure the component.
Reimplemented from AliEmcalCorrectionComponent.
Definition at line 91 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
|
private |
|
virtual |
Called for each event to process the event data.
Reimplemented from AliEmcalCorrectionComponent.
Definition at line 256 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
|
virtual |
Create run-independent objects for output. Called before running over events.
Reimplemented from AliEmcalCorrectionComponent.
Definition at line 114 of file AliEmcalCorrectionClusterHadronicCorrection.cxx.
|
protected |
! Mapping between index and cluster containers
Definition at line 72 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrAllTracks(), ApplyHadCorrOneTrack(), DoMatchedTracksLoop(), ExecOnce(), and Run().
|
protected |
Value to be used for constant subtraction (only applicable if using constant subtraction in M02 scheme)
Definition at line 68 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ComputeM02Subtraction(), and Initialize().
|
protected |
set the values fPhiMatch and fEtaMatch depending on the track momentum
Definition at line 61 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by DoMatchedTracksLoop(), and Initialize().
|
protected |
do not oversubtract energy from cluster (embedding only)
Definition at line 65 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrAllTracks(), and Initialize().
|
protected |
loop over tracks first
Definition at line 60 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrOneTrack(), DoMatchedTracksLoop(), and Initialize().
|
protected |
energy/cell that we cannot subtract from the clusters
Definition at line 63 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrAllTracks(), and Initialize().
|
protected |
eta match value (pp=0.025)
Definition at line 59 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrOneTrack(), DoMatchedTracksLoop(), and Initialize().
|
protected |
hadronic correction (fraction)
Definition at line 62 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by DoMatchedTracksLoop(), Initialize(), and Run().
|
protected |
!average energy of clusters after correction vs. centrality
Definition at line 88 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by Run(), and UserCreateOutputObjects().
|
protected |
!average energy of clusters before correction vs. centrality
Definition at line 87 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by Run(), and UserCreateOutputObjects().
|
protected |
!Over-subtracted energy / cluster energy with embedded track matches (non-embedded matches < 5%)
Definition at line 95 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!E/P vs. centrality
Definition at line 89 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrAllTracks(), ApplyHadCorrOneTrack(), and UserCreateOutputObjects().
|
protected |
!Esub vs. total momentum of matched tracks (only 1 match)
Definition at line 92 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!Esub/momentum of matched tracks vs. total momentum of matched tracks (only 1 match)
Definition at line 93 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!Esub/momentum of matched tracks vs. total momentum of matched tracks (all number of matches)
Definition at line 94 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!matching distance vs. E/P
Definition at line 84 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrOneTrack(), DoMatchedTracksLoop(), and UserCreateOutputObjects().
|
protected |
!deta vs. dphi of matched cluster-track pairs
Definition at line 78 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrOneTrack(), DoMatchedTracksLoop(), and UserCreateOutputObjects().
|
protected |
!deta vs. dphi of matched cluster-track pairs
Definition at line 79 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrOneTrack(), DoMatchedTracksLoop(), and UserCreateOutputObjects().
|
protected |
!deta vs. dphi of all cluster-track pairs (cl loop)
Definition at line 80 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrOneTrack(), DoMatchedTracksLoop(), and UserCreateOutputObjects().
|
protected |
!cluster energy vs. track momentum of matched pairs
Definition at line 81 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), ApplyHadCorrOneTrack(), and UserCreateOutputObjects().
|
protected |
!n cells vs. cluster energy
Definition at line 83 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!n clusters macthed to some track (tracks allowed to match more than one cluster)
Definition at line 91 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by UserCreateOutputObjects().
|
protected |
!n clusters matched to some track vs. centrality
Definition at line 86 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!n clusters vs. centrality
Definition at line 85 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by Run(), and UserCreateOutputObjects().
|
protected |
!n matches vs. centraity
Definition at line 90 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!n matches vs. cluster energy
Definition at line 82 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!Over-subtracted energy / cluster energy with non-embedded track matches (embedded matches < 5%)
Definition at line 96 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!Over-subtracted energy / cluster energy
Definition at line 99 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!Over-subtracted energy / cluster energy (cluster MC energy fraction > 95%)
Definition at line 97 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
!Over-subtracted energy / cluster energy (cluster MC energy fraction < 5%)
Definition at line 98 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by AliEmcalCorrectionClusterHadronicCorrection(), ApplyHadCorrAllTracks(), and UserCreateOutputObjects().
|
protected |
! Mapping between index and particle containers
Definition at line 73 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrAllTracks(), ApplyHadCorrOneTrack(), DoMatchedTracksLoop(), and ExecOnce().
|
protected |
phi match value (pp=0.050)
Definition at line 58 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrOneTrack(), DoMatchedTracksLoop(), and Initialize().
|
protected |
compute and plot oversubtracted energy from embedded/signal matches (embedding only)
Definition at line 64 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrAllTracks(), Initialize(), and UserCreateOutputObjects().
|
protected |
! Mapping between AliVTracks and their respective particle containers. Needed for AODs only. See GenerateTrackToContainerMap() for more information.
Definition at line 75 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrAllTracks(), ApplyHadCorrOneTrack(), DoMatchedTracksLoop(), and GenerateTrackToContainerMap().
|
protected |
Flag to perform constant rather than fractional subtract (only applicable if using M02 scheme)
Definition at line 67 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ComputeM02Subtraction(), and Initialize().
|
protected |
Flag to enable hadronic correction scheme using cluster M02 value.
Definition at line 66 of file AliEmcalCorrectionClusterHadronicCorrection.h.
Referenced by ApplyHadCorrAllTracks(), and Initialize().
|
staticprivate |
Definition at line 106 of file AliEmcalCorrectionClusterHadronicCorrection.h.