AliPhysics  c7b8e89 (c7b8e89)
AliEmcalCorrectionClusterNonLinearityMCAfterburner Class Reference

Cluster energy non-linearity correction MC afterburner in the EMCal correction framework. More...

#include <AliEmcalCorrectionClusterNonLinearityMCAfterburner.h>

Inheritance diagram for AliEmcalCorrectionClusterNonLinearityMCAfterburner:

Public Types

enum  EMCAfterburnerMethod_t {
  kPCM_EMCal = 0, kEMCal_EMCal = 1, kPCM_EMCalFunctionRatio = 2, kEMCal_EMCalFunctionRatio = 3,
  kNoCorrection = 4
}
 

Public Member Functions

 AliEmcalCorrectionClusterNonLinearityMCAfterburner ()
 
virtual ~AliEmcalCorrectionClusterNonLinearityMCAfterburner ()
 
Bool_t Initialize ()
 
void UserCreateOutputObjects ()
 
Bool_t Run ()
 
- Public Member Functions inherited from AliEmcalCorrectionComponent
 AliEmcalCorrectionComponent ()
 
 AliEmcalCorrectionComponent (const char *name)
 
virtual ~AliEmcalCorrectionComponent ()
 
virtual void ExecOnce ()
 
virtual Bool_t UserNotify ()
 
virtual Bool_t CheckIfRunChanged ()
 
void GetEtaPhiDiff (const AliVTrack *t, const AliVCluster *v, Double_t &phidiff, Double_t &etadiff)
 
void UpdateCells ()
 
void GetPass ()
 
void FillCellQA (TH1F *h)
 
Int_t InitBadChannels ()
 
AliParticleContainerAddParticleContainer (const char *n)
 
AliTrackContainerAddTrackContainer (const char *n)
 
AliMCParticleContainerAddMCParticleContainer (const char *n)
 
AliClusterContainerAddClusterContainer (const char *n)
 
void AdoptParticleContainer (AliParticleContainer *cont)
 
void AdoptTrackContainer (AliTrackContainer *cont)
 
void AdoptMCParticleContainer (AliMCParticleContainer *cont)
 
void AdoptClusterContainer (AliClusterContainer *cont)
 
AliParticleContainerGetParticleContainer (Int_t i=0) const
 
AliParticleContainerGetParticleContainer (const char *name) const
 
AliClusterContainerGetClusterContainer (Int_t i=0) const
 
AliClusterContainerGetClusterContainer (const char *name) const
 
AliMCParticleContainerGetMCParticleContainer (Int_t i=0) const
 
AliMCParticleContainerGetMCParticleContainer (const char *name) const
 
AliTrackContainerGetTrackContainer (Int_t i=0) const
 
AliTrackContainerGetTrackContainer (const char *name) const
 
void RemoveParticleContainer (Int_t i=0)
 
void RemoveClusterContainer (Int_t i=0)
 
AliEMCALRecoUtilsGetRecoUtils () const
 
AliVCaloCells * GetCaloCells () const
 
TListGetOutputList () const
 
void SetCaloCells (AliVCaloCells *cells)
 
void SetRecoUtils (AliEMCALRecoUtils *ru)
 
void SetInputEvent (AliVEvent *event)
 
void SetMCEvent (AliMCEvent *mcevent)
 
void SetUsingInputEvent (bool b=true)
 
void SetEMCALGeometry (AliEMCALGeometry *geometry)
 
void SetCentralityBin (Int_t bin)
 
void SetCentrality (Double_t cent)
 
void SetNcentralityBins (Int_t n)
 
void SetVertex (Double_t *vertex)
 
void SetIsESD (Bool_t isESD)
 
void SetCustomBadChannels (TString customBC)
 
void SetYAMLConfiguration (PWG::Tools::AliYAMLConfiguration config)
 Set YAML Configuration. More...
 
template<typename T >
bool GetProperty (std::string propertyName, T &property, bool requiredProperty=true, std::string correctionName="")
 Retrieve property. More...
 

Static Public Attributes

static const std::map< std::string, AliEmcalCorrectionClusterNonLinearityMCAfterburner::EMCAfterburnerMethod_tfgkMCNonlinearityAfterburnerMethodMap
 Relates string to the MC non-linearity afterburner method enumeration for YAML configuration. More...
 

Protected Member Functions

TString SummarizeMCProductions (TString namePeriod)
 
void InitNonLinearityParam (TString namePeriod, EMCAfterburnerMethod_t method)
 

Protected Attributes

TH1F * fEnergyDistBefore
 !energy distribution before More...
 
TH2FfEnergyTimeHistBefore
 !energy/time distribution before More...
 
TH1F * fEnergyDistAfter
 !energy distribution after More...
 
TH2FfEnergyTimeHistAfter
 !energy/time distribution after More...
 
Float_t fNLAfterburnerPara [9]
 Parameters for the non linearity function. More...
 
Int_t fNonLinearityAfterburnerFunction
 Type of function used for the non linearity afterburner correction. More...
 
EMCAfterburnerMethod_t fAfterburnerMethod
 The version of the non-linearity afterburner correction (0-3, see enum NonlinearityMCAfterburnerMethod), 4=no correction. More...
 
TString fMCPeriod
 The MC production name. More...
 
Bool_t fSetForceClusterE
 Only for backwards compatibility, force cluster->E() to be set to the cluster non-linearity corrected energy. Off by default. For the standard methods, see: http://alidoc.cern.ch/AliPhysics/master/READMEcontainers.html#emcalContainerClusterEnergyCorrections. More...
 
- Protected Attributes inherited from AliEmcalCorrectionComponent
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...
 
AliEMCALRecoUtilsfRecoUtils
 Pointer to RecoUtils. More...
 
TListfOutput
 ! 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

 AliEmcalCorrectionClusterNonLinearityMCAfterburner (const AliEmcalCorrectionClusterNonLinearityMCAfterburner &)
 
AliEmcalCorrectionClusterNonLinearityMCAfterburneroperator= (const AliEmcalCorrectionClusterNonLinearityMCAfterburner &)
 

Static Private Attributes

static RegisterCorrectionComponent< AliEmcalCorrectionClusterNonLinearityMCAfterburnerreg
 

Detailed Description

Cluster energy non-linearity correction MC afterburner in the EMCal correction framework.

Non-linearity correction to the MC cluster energy is necessary because the current non linearity is done for 50MeV cell threshold and all analyses use a 100MeV cell threshold for the clusterization. Thus, the MC need to be corrected in a second step

The energy of the cluster after the MC non-linearity correction can be retrieved using the method cluster->GetNonLinCorrEnergy().

Based on code in AliCaloPhotonCuts.cxx.

Author
15 active people originally in AliCaloPhotonCuts.cxx
Eliane Epple, Yale University, include the PCM aproach into the EMCal correction FW using correction components
Date
Nov 13, 2018

Definition at line 25 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Member Enumeration Documentation

MC Nonlinearity afterburner enum list of four possible ways of determining the parameters. Standard is kPCM_EMCal

Enumerator
kPCM_EMCal 

!This is determined by fitting the ratio of MC and Data pi0 mass position

kEMCal_EMCal 

!This is determined by fitting the ratio of MC and Data pi0 mass position

kPCM_EMCalFunctionRatio 

!This is determined by fitting MC and Data pi0 mass position respectivley and dividing the fits

kEMCal_EMCalFunctionRatio 

!This is determined by fitting MC and Data pi0 mass position respectivley and dividing the fits

kNoCorrection 

!Default

Definition at line 38 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Constructor & Destructor Documentation

AliEmcalCorrectionClusterNonLinearityMCAfterburner::AliEmcalCorrectionClusterNonLinearityMCAfterburner ( )

Default constructor

Definition at line 26 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.cxx.

AliEmcalCorrectionClusterNonLinearityMCAfterburner::~AliEmcalCorrectionClusterNonLinearityMCAfterburner ( )
virtual

Destructor

Definition at line 41 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.cxx.

AliEmcalCorrectionClusterNonLinearityMCAfterburner::AliEmcalCorrectionClusterNonLinearityMCAfterburner ( const AliEmcalCorrectionClusterNonLinearityMCAfterburner )
private

Member Function Documentation

Bool_t AliEmcalCorrectionClusterNonLinearityMCAfterburner::Initialize ( )
virtual

Initialize and configure the component.

Reimplemented from AliEmcalCorrectionComponent.

Definition at line 48 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.cxx.

void AliEmcalCorrectionClusterNonLinearityMCAfterburner::InitNonLinearityParam ( TString  namePeriod,
EMCAfterburnerMethod_t  method 
)
protected

Definition at line 364 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.cxx.

Referenced by Initialize().

AliEmcalCorrectionClusterNonLinearityMCAfterburner& AliEmcalCorrectionClusterNonLinearityMCAfterburner::operator= ( const AliEmcalCorrectionClusterNonLinearityMCAfterburner )
private
Bool_t AliEmcalCorrectionClusterNonLinearityMCAfterburner::Run ( )
virtual

Called for each event to process the event data.

Reimplemented from AliEmcalCorrectionComponent.

Definition at line 93 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.cxx.

TString AliEmcalCorrectionClusterNonLinearityMCAfterburner::SummarizeMCProductions ( TString  namePeriod)
protected

Definition at line 187 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.cxx.

Referenced by Initialize().

void AliEmcalCorrectionClusterNonLinearityMCAfterburner::UserCreateOutputObjects ( )
virtual

Create run-independent objects for output. Called before running over events.

Reimplemented from AliEmcalCorrectionComponent.

Definition at line 70 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.cxx.

Member Data Documentation

EMCAfterburnerMethod_t AliEmcalCorrectionClusterNonLinearityMCAfterburner::fAfterburnerMethod
protected

The version of the non-linearity afterburner correction (0-3, see enum NonlinearityMCAfterburnerMethod), 4=no correction.

Definition at line 62 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Referenced by Initialize().

TH1F* AliEmcalCorrectionClusterNonLinearityMCAfterburner::fEnergyDistAfter
protected

!energy distribution after

Definition at line 57 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Referenced by Run(), and UserCreateOutputObjects().

TH1F* AliEmcalCorrectionClusterNonLinearityMCAfterburner::fEnergyDistBefore
protected

!energy distribution before

Definition at line 55 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Referenced by Run(), and UserCreateOutputObjects().

TH2F* AliEmcalCorrectionClusterNonLinearityMCAfterburner::fEnergyTimeHistAfter
protected

!energy/time distribution after

Definition at line 58 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Referenced by Run(), and UserCreateOutputObjects().

TH2F* AliEmcalCorrectionClusterNonLinearityMCAfterburner::fEnergyTimeHistBefore
protected

!energy/time distribution before

Definition at line 56 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Referenced by Run(), and UserCreateOutputObjects().

const std::map< std::string, AliEmcalCorrectionClusterNonLinearityMCAfterburner::EMCAfterburnerMethod_t > AliEmcalCorrectionClusterNonLinearityMCAfterburner::fgkMCNonlinearityAfterburnerMethodMap
static
Initial value:

Relates string to the MC non-linearity afterburner method enumeration for YAML configuration.

!

Definition at line 47 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Referenced by Initialize().

TString AliEmcalCorrectionClusterNonLinearityMCAfterburner::fMCPeriod
protected

The MC production name.

Definition at line 63 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Referenced by Initialize().

Float_t AliEmcalCorrectionClusterNonLinearityMCAfterburner::fNLAfterburnerPara[9]
protected

Parameters for the non linearity function.

Definition at line 59 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Referenced by InitNonLinearityParam(), and Run().

Int_t AliEmcalCorrectionClusterNonLinearityMCAfterburner::fNonLinearityAfterburnerFunction
protected

Type of function used for the non linearity afterburner correction.

Definition at line 60 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Referenced by InitNonLinearityParam(), and Run().

Bool_t AliEmcalCorrectionClusterNonLinearityMCAfterburner::fSetForceClusterE
protected

Only for backwards compatibility, force cluster->E() to be set to the cluster non-linearity corrected energy. Off by default. For the standard methods, see: http://alidoc.cern.ch/AliPhysics/master/READMEcontainers.html#emcalContainerClusterEnergyCorrections.

Definition at line 64 of file AliEmcalCorrectionClusterNonLinearityMCAfterburner.h.

Referenced by Initialize(), and Run().

RegisterCorrectionComponent< AliEmcalCorrectionClusterNonLinearityMCAfterburner > AliEmcalCorrectionClusterNonLinearityMCAfterburner::reg
staticprivate

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