ATLAS Offline Software
Loading...
Searching...
No Matches
AtlasRoot::egammaEnergyCorrectionTool Class Reference

#include <egammaEnergyCorrectionTool.h>

Inheritance diagram for AtlasRoot::egammaEnergyCorrectionTool:

Public Types

typedef unsigned int RandomNumber

Public Member Functions

 egammaEnergyCorrectionTool ()
virtual ~egammaEnergyCorrectionTool ()
void setESModel (egEnergyCorr::ESModel val)
int initialize ()
void setFileName (const std::string &val)
void setRunNumber (long int runn=0)
void useStatErrorScaling (bool flag)
void use_temp_correction201215 (bool flag)
void use_temp_correction201516 (bool flag)
void use_uA2MeV_2015_first2weeks_correction (bool flag)
double applyMCCalibration (double eta, double ET, PATCore::ParticleType::Type ptype) const
double getCorrectedMomentum (PATCore::ParticleDataType::DataType dataType, PATCore::ParticleType::Type ptype, double momentum, double trk_eta, egEnergyCorr::Scale::Variation scaleVar=egEnergyCorr::Scale::None, double varSF=1.0) const
 take eta and uncorrected energy of electron, return corrected energy, apply given variation, for given particle type Note : energies in MeV This is the main method for users.
double getCorrectedEnergy (unsigned int runnumber, PATCore::ParticleDataType::DataType dataType, PATCore::ParticleType::Type ptype, double cl_eta, double cl_etaS2, double cl_etaCalo, double energy, double energyS2, double eraw, RandomNumber seed, egEnergyCorr::Scale::Variation scaleVar=egEnergyCorr::Scale::None, egEnergyCorr::Resolution::Variation resVar=egEnergyCorr::Resolution::None, egEnergyCorr::Resolution::resolutionType resType=egEnergyCorr::Resolution::SigmaEff90, double varSF=1.0) const
double resolution (double energy, double cl_eta, double cl_etaCalo, PATCore::ParticleType::Type ptype, bool withCT, bool fast, egEnergyCorr::Resolution::resolutionType resType=egEnergyCorr::Resolution::SigmaEff90) const
double getResolutionError (PATCore::ParticleDataType::DataType dataType, double energy, double eta, double etaCalo, PATCore::ParticleType::Type ptype, egEnergyCorr::Resolution::Variation value, egEnergyCorr::Resolution::resolutionType resType=egEnergyCorr::Resolution::SigmaEff90) const
void setApplyL2GainCorrection ()
void setApplyL2GainInterpolation ()
void setApplyLeakageCorrection (bool interpt=false)
void setADCTool (std::shared_ptr< LinearityADC > t)
const TAxis & get_ZeeStat_eta_axis () const
void setLevel (MSG::Level lvl)
 Change the current logging level.
Functions providing the same interface as AthMessaging
bool msgLvl (const MSG::Level lvl) const
 Test the output level of the object.
MsgStream & msg () const
 The standard message stream.
MsgStream & msg (const MSG::Level lvl) const
 The standard message stream.

Static Public Member Functions

static std::string variationName (egEnergyCorr::Scale::Variation &var)
static std::string variationName (egEnergyCorr::Resolution::Variation &var)

Private Member Functions

double getAlphaValue (long int runnumber, double cl_eta, double cl_etaS2, double cl_etaCalo, double energy, double energyS2, double eraw, PATCore::ParticleType::Type ptype=PATCore::ParticleType::Electron, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
double getAlphaUncertainty (long int runnumber, double cl_eta, double cl_etaS2, double cl_etaCalo, double energy, double energyS2, double eraw, PATCore::ParticleType::Type ptype=PATCore::ParticleType::Electron, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
double getSmearingCorrection (double eta, double etaCalo, double energy, RandomNumber seed, PATCore::ParticleType::Type ptype=PATCore::ParticleType::Electron, PATCore::ParticleDataType::DataType dataType=PATCore::ParticleDataType::Full, egEnergyCorr::Resolution::Variation value=egEnergyCorr::Resolution::Nominal, egEnergyCorr::Resolution::resolutionType resType=egEnergyCorr::Resolution::SigmaEff90) const
 smearing corrections
double applyAFtoG4 (double eta, double ptGeV, PATCore::ParticleType::Type ptype) const
 MC calibration corrections.
double applyFStoG4 (double eta) const
double dataConstantTerm (double eta) const
double dataConstantTermError (double eta) const
double dataConstantTermOFCError (double eta) const
double dataZPeakResolution (double cl_eta) const
double mcZPeakResolution (double cl_eta) const
double dataConstantTermCorError (double cl_eta) const
void resolutionError (double energy, double cl_eta, double &errUp, double &errDown) const
double getZeeMeanET (double cl_eta) const
double getAlphaZee (long int runnumber, double eta, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
double getE4Uncertainty (double eta) const
double getE4NonLinearity (double cl_eta, double meanE, PATCore::ParticleType::Type) const
double getWtots1Uncertainty (double cl_eta, double energy, PATCore::ParticleType::Type ptype) const
double getLayerUncertainty (int iLayer, double cl_eta, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
double getLayerNonLinearity (int iLayer, double cl_eta, double energy, PATCore::ParticleType::Type ptype) const
double getDeltaX (double cl_eta, egEnergyCorr::MaterialCategory imat, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal) const
double getAlphaMaterial (double cl_eta, egEnergyCorr::MaterialCategory imat, PATCore::ParticleType::Type ptype, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
double getMaterialEffect (egEnergyCorr::Geometry geo, PATCore::ParticleType::Type ptype, double cl_eta, double ET) const
double getMaterialNonLinearity (double cl_eta, double energy, egEnergyCorr::MaterialCategory imat, PATCore::ParticleType::Type ptype, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
double getAlphaLeakage (double cl_eta, PATCore::ParticleType::Type ptype, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
double getAlphaLeakage2D (double cl_eta, double et, PATCore::ParticleType::Type ptype, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
std::pair< double, double > getAlphaUncAlpha (const TH1 &hh, double cl_eta, double et, bool useInterp) const
double getAlphaConvSyst (double cl_eta, double energy, PATCore::ParticleType::Type ptype, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
double getAlphaPedestal (double cl_eta, double energy, double eraw, PATCore::ParticleType::Type ptype, bool isRef, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
double getLayerPedestal (double cl_eta, PATCore::ParticleType::Type ptype, int iLayer, egEnergyCorr::Scale::Variation var=egEnergyCorr::Scale::Nominal, double varSF=1.) const
double get_ZeeSyst (double eta) const
double get_OFCSyst (double eta) const
void getResolution_systematics (int particle_type, double energy, double eta, double etaCalo, int syst_mask, double &resolution, double &resolution_error, double &resolution_error_up, double &resolution_error_down, int resol_type=0, bool fast=false) const
 get resolution and its uncertainty)
double pileUpTerm (double energy, double eta, int particle_type) const
void initMessaging () const
 Initialize our message level and MessageSvc.

Static Private Member Functions

static double mcSamplingTerm (double cl_eta)
static double mcSamplingTermRelError (double cl_eta)
static double mcNoiseTerm (double cl_eta)
static double mcConstantTerm (double cl_eta)
static double fcn_sigma (double energy, double Cdata, double Cdata_er, double S, double S_er)
static bool isInCrack (double cl_eta)
static double nearestEtaBEC (double cl_eta)
static double getInterpolateConvSyst2D (const TH2 &conv_hist, double aeta, double ET)

Private Attributes

std::unique_ptr< egGain::GainToolm_gain_tool
std::unique_ptr< egGain::GainUncertaintym_gain_tool_run2
std::unique_ptr< egGain::GainUncertaintym_gain_tool_run3_extra
std::shared_ptr< LinearityADCm_ADCLinearity_tool
std::unique_ptr< eg_resolutionm_resolution_tool
std::unique_ptr< get_MaterialResolutionEffectm_getMaterialDelta
std::unique_ptr< e1hg_systematicsm_e1hg_tool
std::string m_rootFileName
unsigned int m_begRunNumber
unsigned int m_endRunNumber
unsigned int m_RunNumber
std::unique_ptr< TH1 > m_trkSyst
std::unique_ptr< TH1 > m_aPSNom
std::unique_ptr< TH1 > m_daPSCor
std::unique_ptr< TH1 > m_daPSb12
std::unique_ptr< TH1 > m_aS12Nom
std::unique_ptr< TH1 > m_daS12Cor
std::unique_ptr< TH1 > m_zeeNom
std::unique_ptr< TH1 > m_zeeNom_data2015
std::unique_ptr< TH1 > m_zeeNom_data2016
std::unique_ptr< TH1 > m_zeeNom_data2017
std::unique_ptr< TH1 > m_zeeNom_data2018
std::unique_ptr< TH1 > m_zeeNom_data2022
std::unique_ptr< TH1 > m_zeeNom_data2023
std::unique_ptr< TH1 > m_zeeNom_data2024
std::unique_ptr< const TH1 > m_zeeFwdk
std::unique_ptr< const TH1 > m_zeeFwdb
std::unique_ptr< TH1 > m_zeeSyst
std::unique_ptr< TH1 > m_zeeSystOFC
std::unique_ptr< TH1 > m_zeePhys
std::unique_ptr< TH1 > m_uA2MeV_2015_first2weeks_correction
std::unique_ptr< TProfile > m_meanZeeProfile
std::unique_ptr< TH1 > m_resNom
std::unique_ptr< TH1 > m_resSyst
std::unique_ptr< TH1 > m_resSystOFC
std::unique_ptr< TH1 > m_peakResData
std::unique_ptr< TH1 > m_peakResMC
std::unique_ptr< TH1 > m_dX_ID_Nom
std::unique_ptr< TH1 > m_dX_IPPS_Nom
std::unique_ptr< TH1 > m_dX_IPPS_LAr
std::unique_ptr< TH1 > m_dX_IPAcc_Nom
std::unique_ptr< TH1 > m_dX_IPAcc_G4
std::unique_ptr< TH1 > m_dX_IPAcc_LAr
std::unique_ptr< TH1 > m_dX_IPAcc_GL1
std::unique_ptr< TH1 > m_dX_PSAcc_Nom
std::unique_ptr< TH1 > m_dX_PSAcc_G4
std::unique_ptr< TH1 > m_dX_PSAcc_LAr
std::unique_ptr< TAxis > m_psElectronEtaBins
std::unique_ptr< TList > m_psElectronGraphs
std::unique_ptr< TAxis > m_psUnconvertedEtaBins
std::unique_ptr< TList > m_psUnconvertedGraphs
std::unique_ptr< TAxis > m_psConvertedEtaBins
std::unique_ptr< TList > m_psConvertedGraphs
std::unique_ptr< TAxis > m_E4ElectronEtaBins
std::unique_ptr< TList > m_E4ElectronGraphs
std::unique_ptr< TAxis > m_E4UnconvertedEtaBins
std::unique_ptr< TList > m_E4UnconvertedGraphs
std::unique_ptr< TAxis > m_E4ConvertedEtaBins
std::unique_ptr< TList > m_E4ConvertedGraphs
std::unique_ptr< TAxis > m_s12ElectronEtaBins
std::unique_ptr< TList > m_s12ElectronGraphs
std::unique_ptr< TAxis > m_s12UnconvertedEtaBins
std::unique_ptr< TList > m_s12UnconvertedGraphs
std::unique_ptr< TAxis > m_s12ConvertedEtaBins
std::unique_ptr< TList > m_s12ConvertedGraphs
std::unique_ptr< TAxis > m_EaccElectronEtaBins
std::unique_ptr< TList > m_EaccElectronGraphs
std::unique_ptr< TAxis > m_EaccUnconvertedEtaBins
std::unique_ptr< TList > m_EaccUnconvertedGraphs
std::unique_ptr< TAxis > m_EaccConvertedEtaBins
std::unique_ptr< TList > m_EaccConvertedGraphs
std::unique_ptr< TH1 > m_pedestalL0
std::unique_ptr< TH1 > m_pedestalL1
std::unique_ptr< TH1 > m_pedestalL2
std::unique_ptr< TH1 > m_pedestalL3
std::unique_ptr< TH1 > m_pedestals_es2017
std::unique_ptr< TH1 > m_convRadius
std::unique_ptr< TH1 > m_convFakeRate
std::unique_ptr< TH1 > m_convRecoEfficiency
std::unique_ptr< TH2 > m_convFakeRate_2D
std::unique_ptr< TH2 > m_convRecoEfficiency_2D
std::unique_ptr< TH1 > m_leakageConverted
std::unique_ptr< TH1 > m_leakageUnconverted
std::unique_ptr< TH1 > m_leakageElectron
std::unique_ptr< TH1 > m_zeeES2Profile
std::unique_ptr< TH2 > m_pp0_elec
std::unique_ptr< TH2 > m_pp0_unconv
std::unique_ptr< TH2 > m_pp0_conv
std::unique_ptr< TH1 > m_wstot_slope_A_data
std::unique_ptr< TH1 > m_wstot_slope_B_MC
std::unique_ptr< TH1 > m_wstot_pT_data_p0_electrons
std::unique_ptr< TH1 > m_wstot_pT_data_p1_electrons
std::unique_ptr< TH1 > m_wstot_pT_data_p0_unconverted_photons
std::unique_ptr< TH1 > m_wstot_pT_data_p1_unconverted_photons
std::unique_ptr< TH1 > m_wstot_pT_data_p0_converted_photons
std::unique_ptr< TH1 > m_wstot_pT_data_p1_converted_photons
std::unique_ptr< TH1 > m_wstot_pT_MC_p0_electrons
std::unique_ptr< TH1 > m_wstot_pT_MC_p1_electrons
std::unique_ptr< TH1 > m_wstot_pT_MC_p0_unconverted_photons
std::unique_ptr< TH1 > m_wstot_pT_MC_p1_unconverted_photons
std::unique_ptr< TH1 > m_wstot_pT_MC_p0_converted_photons
std::unique_ptr< TH1 > m_wstot_pT_MC_p1_converted_photons
std::vector< std::unique_ptr< TH1 > > m_matElectronScale
std::vector< std::unique_ptr< TH1 > > m_matUnconvertedScale
std::vector< std::unique_ptr< TH1 > > m_matConvertedScale
std::vector< std::unique_ptr< TH1 > > m_matElectronCstTerm
std::vector< std::unique_ptr< TH1 > > m_matX0Additions
std::unique_ptr< TAxis > m_matElectronEtaBins
std::vector< std::unique_ptr< TList > > m_matElectronGraphs
std::unique_ptr< TH2 > m_electronBias_ConfigA
std::unique_ptr< TH2 > m_electronBias_ConfigEpLp
std::unique_ptr< TH2 > m_electronBias_ConfigFpMX
std::unique_ptr< TH2 > m_electronBias_ConfigN
std::unique_ptr< TH2 > m_electronBias_ConfigIBL
std::unique_ptr< TH2 > m_electronBias_ConfigPP0
std::unique_ptr< TH2 > m_unconvertedBias_ConfigA
std::unique_ptr< TH2 > m_unconvertedBias_ConfigEpLp
std::unique_ptr< TH2 > m_unconvertedBias_ConfigFpMX
std::unique_ptr< TH2 > m_unconvertedBias_ConfigN
std::unique_ptr< TH2 > m_unconvertedBias_ConfigIBL
std::unique_ptr< TH2 > m_unconvertedBias_ConfigPP0
std::unique_ptr< TH2 > m_convertedBias_ConfigA
std::unique_ptr< TH2 > m_convertedBias_ConfigEpLp
std::unique_ptr< TH2 > m_convertedBias_ConfigFpMX
std::unique_ptr< TH2 > m_convertedBias_ConfigN
std::unique_ptr< TH2 > m_convertedBias_ConfigIBL
std::unique_ptr< TH2 > m_convertedBias_ConfigPP0
std::unique_ptr< TH1 > m_G4OverAFII_electron
std::unique_ptr< TH1 > m_G4OverAFII_converted
std::unique_ptr< TH1 > m_G4OverAFII_unconverted
std::unique_ptr< TH2 > m_G4OverAFII_electron_2D
std::unique_ptr< TH2 > m_G4OverAFII_converted_2D
std::unique_ptr< TH2 > m_G4OverAFII_unconverted_2D
std::unique_ptr< TH1 > m_G4OverFrSh
std::unique_ptr< TH2 > m_G4OverAFII_resolution_electron
std::unique_ptr< TH2 > m_G4OverAFII_resolution_unconverted
std::unique_ptr< TH2 > m_G4OverAFII_resolution_converted
std::unique_ptr< TH1 > m_G4OverAF_electron_scale_extra_sys
std::unique_ptr< TH1 > m_G4OverAF_converted_scale_extra_sys
std::unique_ptr< TH1 > m_G4OverAF_unconverted_scale_extra_sys
std::unique_ptr< TH1 > m_G4OverAF_electron_resolution_extra_sys
std::unique_ptr< TH1 > m_G4OverAF_converted_resolution_extra_sys
std::unique_ptr< TH1 > m_G4OverAF_unconverted_resolution_extra_sys
egEnergyCorr::ESModel m_esmodel
bool m_use_etaCalo_scales
bool m_applyPSCorrection
bool m_applyS12Correction
bool m_initialized
bool m_use_new_resolution_model
bool m_use_stat_error_scaling
bool m_useL2GainCorrection
bool m_useL2GainInterpolation
bool m_useLeakageCorrection
bool m_usepTInterpolationForLeakage
bool m_use_temp_correction201215
bool m_use_temp_correction201516
bool m_use_uA2MeV_2015_first2weeks_correction
std::string m_nm
 Message source name.
boost::thread_specific_ptr< MsgStream > m_msg_tls
 MsgStream instance (a std::cout like with print-out levels)
std::atomic< IMessageSvc * > m_imsg { nullptr }
 MessageSvc pointer.
std::atomic< MSG::Level > m_lvl { MSG::NIL }
 Current logging level.
std::atomic_flag m_initialized ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
 Messaging initialized (initMessaging)

Detailed Description

Definition at line 376 of file egammaEnergyCorrectionTool.h.

Member Typedef Documentation

◆ RandomNumber

Constructor & Destructor Documentation

◆ egammaEnergyCorrectionTool()

AtlasRoot::egammaEnergyCorrectionTool::egammaEnergyCorrectionTool ( )

Definition at line 181 of file egammaEnergyCorrectionTool.cxx.

◆ ~egammaEnergyCorrectionTool()

AtlasRoot::egammaEnergyCorrectionTool::~egammaEnergyCorrectionTool ( )
virtual

Definition at line 233 of file egammaEnergyCorrectionTool.cxx.

Member Function Documentation

◆ applyAFtoG4()

double AtlasRoot::egammaEnergyCorrectionTool::applyAFtoG4 ( double eta,
double ptGeV,
PATCore::ParticleType::Type ptype ) const
private

MC calibration corrections.

Definition at line 3116 of file egammaEnergyCorrectionTool.cxx.

◆ applyFStoG4()

double AtlasRoot::egammaEnergyCorrectionTool::applyFStoG4 ( double eta) const
private

Definition at line 3172 of file egammaEnergyCorrectionTool.cxx.

◆ applyMCCalibration()

double AtlasRoot::egammaEnergyCorrectionTool::applyMCCalibration ( double eta,
double ET,
PATCore::ParticleType::Type ptype ) const

Definition at line 3081 of file egammaEnergyCorrectionTool.cxx.

◆ dataConstantTerm()

double AtlasRoot::egammaEnergyCorrectionTool::dataConstantTerm ( double eta) const
private

Definition at line 2658 of file egammaEnergyCorrectionTool.cxx.

◆ dataConstantTermCorError()

double AtlasRoot::egammaEnergyCorrectionTool::dataConstantTermCorError ( double cl_eta) const
private

Definition at line 2688 of file egammaEnergyCorrectionTool.cxx.

◆ dataConstantTermError()

double AtlasRoot::egammaEnergyCorrectionTool::dataConstantTermError ( double eta) const
private

Definition at line 2662 of file egammaEnergyCorrectionTool.cxx.

◆ dataConstantTermOFCError()

double AtlasRoot::egammaEnergyCorrectionTool::dataConstantTermOFCError ( double eta) const
private

Definition at line 2666 of file egammaEnergyCorrectionTool.cxx.

◆ dataZPeakResolution()

double AtlasRoot::egammaEnergyCorrectionTool::dataZPeakResolution ( double cl_eta) const
private

Definition at line 2672 of file egammaEnergyCorrectionTool.cxx.

◆ fcn_sigma()

double AtlasRoot::egammaEnergyCorrectionTool::fcn_sigma ( double energy,
double Cdata,
double Cdata_er,
double S,
double S_er )
staticprivate

Definition at line 2994 of file egammaEnergyCorrectionTool.cxx.

◆ get_OFCSyst()

double AtlasRoot::egammaEnergyCorrectionTool::get_OFCSyst ( double eta) const
private

Definition at line 5402 of file egammaEnergyCorrectionTool.cxx.

◆ get_ZeeStat_eta_axis()

const TAxis & AtlasRoot::egammaEnergyCorrectionTool::get_ZeeStat_eta_axis ( ) const

Definition at line 5409 of file egammaEnergyCorrectionTool.cxx.

◆ get_ZeeSyst()

double AtlasRoot::egammaEnergyCorrectionTool::get_ZeeSyst ( double eta) const
private

Definition at line 5395 of file egammaEnergyCorrectionTool.cxx.

◆ getAlphaConvSyst()

double AtlasRoot::egammaEnergyCorrectionTool::getAlphaConvSyst ( double cl_eta,
double energy,
PATCore::ParticleType::Type ptype,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 4531 of file egammaEnergyCorrectionTool.cxx.

◆ getAlphaLeakage()

double AtlasRoot::egammaEnergyCorrectionTool::getAlphaLeakage ( double cl_eta,
PATCore::ParticleType::Type ptype,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 4373 of file egammaEnergyCorrectionTool.cxx.

◆ getAlphaLeakage2D()

double AtlasRoot::egammaEnergyCorrectionTool::getAlphaLeakage2D ( double cl_eta,
double et,
PATCore::ParticleType::Type ptype,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 4408 of file egammaEnergyCorrectionTool.cxx.

◆ getAlphaMaterial()

double AtlasRoot::egammaEnergyCorrectionTool::getAlphaMaterial ( double cl_eta,
egEnergyCorr::MaterialCategory imat,
PATCore::ParticleType::Type ptype,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 4041 of file egammaEnergyCorrectionTool.cxx.

◆ getAlphaPedestal()

double AtlasRoot::egammaEnergyCorrectionTool::getAlphaPedestal ( double cl_eta,
double energy,
double eraw,
PATCore::ParticleType::Type ptype,
bool isRef,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 4644 of file egammaEnergyCorrectionTool.cxx.

◆ getAlphaUncAlpha()

std::pair< double, double > AtlasRoot::egammaEnergyCorrectionTool::getAlphaUncAlpha ( const TH1 & hh,
double cl_eta,
double et,
bool useInterp ) const
private

Definition at line 4489 of file egammaEnergyCorrectionTool.cxx.

◆ getAlphaUncertainty()

double AtlasRoot::egammaEnergyCorrectionTool::getAlphaUncertainty ( long int runnumber,
double cl_eta,
double cl_etaS2,
double cl_etaCalo,
double energy,
double energyS2,
double eraw,
PATCore::ParticleType::Type ptype = PATCore::ParticleType::Electron,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 2480 of file egammaEnergyCorrectionTool.cxx.

◆ getAlphaValue()

double AtlasRoot::egammaEnergyCorrectionTool::getAlphaValue ( long int runnumber,
double cl_eta,
double cl_etaS2,
double cl_etaCalo,
double energy,
double energyS2,
double eraw,
PATCore::ParticleType::Type ptype = PATCore::ParticleType::Electron,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 1986 of file egammaEnergyCorrectionTool.cxx.

◆ getAlphaZee()

double AtlasRoot::egammaEnergyCorrectionTool::getAlphaZee ( long int runnumber,
double eta,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 3184 of file egammaEnergyCorrectionTool.cxx.

◆ getCorrectedEnergy()

double AtlasRoot::egammaEnergyCorrectionTool::getCorrectedEnergy ( unsigned int runnumber,
PATCore::ParticleDataType::DataType dataType,
PATCore::ParticleType::Type ptype,
double cl_eta,
double cl_etaS2,
double cl_etaCalo,
double energy,
double energyS2,
double eraw,
RandomNumber seed,
egEnergyCorr::Scale::Variation scaleVar = egEnergyCorr::Scale::None,
egEnergyCorr::Resolution::Variation resVar = egEnergyCorr::Resolution::None,
egEnergyCorr::Resolution::resolutionType resType = egEnergyCorr::Resolution::SigmaEff90,
double varSF = 1.0 ) const

Definition at line 1850 of file egammaEnergyCorrectionTool.cxx.

◆ getCorrectedMomentum()

double AtlasRoot::egammaEnergyCorrectionTool::getCorrectedMomentum ( PATCore::ParticleDataType::DataType dataType,
PATCore::ParticleType::Type ptype,
double momentum,
double trk_eta,
egEnergyCorr::Scale::Variation scaleVar = egEnergyCorr::Scale::None,
double varSF = 1.0 ) const

take eta and uncorrected energy of electron, return corrected energy, apply given variation, for given particle type Note : energies in MeV This is the main method for users.

It internally calls all other needed methods automatically

Definition at line 1825 of file egammaEnergyCorrectionTool.cxx.

◆ getDeltaX()

double AtlasRoot::egammaEnergyCorrectionTool::getDeltaX ( double cl_eta,
egEnergyCorr::MaterialCategory imat,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal ) const
private

Definition at line 3936 of file egammaEnergyCorrectionTool.cxx.

◆ getE4NonLinearity()

double AtlasRoot::egammaEnergyCorrectionTool::getE4NonLinearity ( double cl_eta,
double meanE,
PATCore::ParticleType::Type ptype ) const
private

Definition at line 3786 of file egammaEnergyCorrectionTool.cxx.

◆ getE4Uncertainty()

double AtlasRoot::egammaEnergyCorrectionTool::getE4Uncertainty ( double eta) const
private

Definition at line 3511 of file egammaEnergyCorrectionTool.cxx.

◆ getInterpolateConvSyst2D()

double AtlasRoot::egammaEnergyCorrectionTool::getInterpolateConvSyst2D ( const TH2 & conv_hist,
double aeta,
double ET )
staticprivate

Definition at line 4604 of file egammaEnergyCorrectionTool.cxx.

◆ getLayerNonLinearity()

double AtlasRoot::egammaEnergyCorrectionTool::getLayerNonLinearity ( int iLayer,
double cl_eta,
double energy,
PATCore::ParticleType::Type ptype ) const
private

Definition at line 3823 of file egammaEnergyCorrectionTool.cxx.

◆ getLayerPedestal()

double AtlasRoot::egammaEnergyCorrectionTool::getLayerPedestal ( double cl_eta,
PATCore::ParticleType::Type ptype,
int iLayer,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 4696 of file egammaEnergyCorrectionTool.cxx.

◆ getLayerUncertainty()

double AtlasRoot::egammaEnergyCorrectionTool::getLayerUncertainty ( int iLayer,
double cl_eta,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 3626 of file egammaEnergyCorrectionTool.cxx.

◆ getMaterialEffect()

double AtlasRoot::egammaEnergyCorrectionTool::getMaterialEffect ( egEnergyCorr::Geometry geo,
PATCore::ParticleType::Type ptype,
double cl_eta,
double ET ) const
private

Definition at line 4133 of file egammaEnergyCorrectionTool.cxx.

◆ getMaterialNonLinearity()

double AtlasRoot::egammaEnergyCorrectionTool::getMaterialNonLinearity ( double cl_eta,
double energy,
egEnergyCorr::MaterialCategory imat,
PATCore::ParticleType::Type ptype,
egEnergyCorr::Scale::Variation var = egEnergyCorr::Scale::Nominal,
double varSF = 1. ) const
private

Definition at line 4228 of file egammaEnergyCorrectionTool.cxx.

◆ getResolution_systematics()

void AtlasRoot::egammaEnergyCorrectionTool::getResolution_systematics ( int particle_type,
double energy,
double eta,
double etaCalo,
int syst_mask,
double & resolution,
double & resolution_error,
double & resolution_error_up,
double & resolution_error_down,
int resol_type = 0,
bool fast = false ) const
private

get resolution and its uncertainty)

particle type : 0=electron, 1=reco unconverted photon, 2=reco converted photon

energy = Energy in MeV

eta

syst_mask bit mask of systematics to consider (0x1 = smearing uncertainty, 0x2= intrisinc resolution uncertainty, 0x4 = ID material, 0x8 = PS-layer1 material, 0x10 = Material in barrel-endcap gap, 0x20 = Material in "cryo area", 0x40 = Pileup noise uncertainty)

Output : resolution = energy resolution in MeV

Output : resolution_error = uncertainty on energy resolution in MeV from the systematics included according to bit mask

resolution_type 0=gaussian core, 1= sigma eff 80%, 2 = sigma eff 90%

Definition at line 4797 of file egammaEnergyCorrectionTool.cxx.

◆ getResolutionError()

double AtlasRoot::egammaEnergyCorrectionTool::getResolutionError ( PATCore::ParticleDataType::DataType dataType,
double energy,
double eta,
double etaCalo,
PATCore::ParticleType::Type ptype,
egEnergyCorr::Resolution::Variation value,
egEnergyCorr::Resolution::resolutionType resType = egEnergyCorr::Resolution::SigmaEff90 ) const

Definition at line 2717 of file egammaEnergyCorrectionTool.cxx.

◆ getSmearingCorrection()

smearing corrections

Definition at line 3010 of file egammaEnergyCorrectionTool.cxx.

◆ getWtots1Uncertainty()

double AtlasRoot::egammaEnergyCorrectionTool::getWtots1Uncertainty ( double cl_eta,
double energy,
PATCore::ParticleType::Type ptype ) const
private

Definition at line 3548 of file egammaEnergyCorrectionTool.cxx.

◆ getZeeMeanET()

double AtlasRoot::egammaEnergyCorrectionTool::getZeeMeanET ( double cl_eta) const
private

Definition at line 2564 of file egammaEnergyCorrectionTool.cxx.

◆ initialize()

int AtlasRoot::egammaEnergyCorrectionTool::initialize ( )

Definition at line 238 of file egammaEnergyCorrectionTool.cxx.

264
265 auto load = [&rootFile](auto &ptr, const std::string & path){
266 ptr.reset(checked_own_cast<decltype(ptr.get())>(rootFile->Get(path.c_str())));
267 };
268 // Legacy numbers for 2010
271 load(m_aPSNom,"Scales/es2010/alphaPS_errTot");
272 load(m_aS12Nom, "Scales/es2010/alphaS12_errTot");
273 load(m_zeeNom, "Scales/es2010/alphaZee_errStat");
274 load(m_zeeSyst, "Scales/es2010/alphaZee_errSyst");
275 load(m_resNom, "Resolution/es2010/ctZee_errStat");
276 load(m_resSyst, "Resolution/es2010/ctZee_errSyst");
277 load(m_peakResData, "Resolution/es2010/resZee_Data");
278 load(m_peakResMC, "Resolution/es2010/resZee_MC");
279 m_begRunNumber = 152166;
280 m_endRunNumber = 170482;
281 // mc11c : faulty electron multiple scattering in G4; old geometry
282 // Precise Z scales, systematics otherwise as in 2010
283
284 } else if (m_esmodel == egEnergyCorr::es2011c) {
286 load(m_aPSNom, "Scales/es2011c/alphaPS_errTot");
287 load(m_aS12Nom, "Scales/es2011c/alphaS12_errTot");
288 load(m_zeeNom, "Scales/es2011c/alphaZee_errStat");
289 load(m_zeeSyst, "Scales/es2011c/alphaZee_errSyst");
290 load(m_resNom, "Resolution/es2011c/ctZee_errStat");
291 load(m_resSyst, "Resolution/es2011c/ctZee_errSyst");
292 load(m_peakResData, "Resolution/es2011c/resZee_Data");
293 load(m_peakResMC, "Resolution/es2011c/resZee_MC");
294
295 m_begRunNumber = 177531;
296 m_endRunNumber = 194382;
297
298 // mc11d : correct MSc in G4; new geometry
299 // Final Run1 calibration scheme
300 } else if (m_esmodel == egEnergyCorr::es2011d ||
304 m_resolution_tool = std::make_unique<eg_resolution>("run1");
305 load(m_aPSNom, "Scales/es2011d/alphaPS_uncor");
306 load(m_daPSCor, "Scales/es2011d/dalphaPS_cor");
307 load(m_aS12Nom, "Scales/es2011d/alphaS12_uncor");
308 load(m_daS12Cor, "Scales/es2011d/dalphaS12_cor");
309 load(m_trkSyst, "Scales/es2011d/momentum_errSyst");
310
312
313 load(m_zeeNom, "Scales/es2011d/alphaZee_errStat");
314 load(m_zeeSyst, "Scales/es2011d/alphaZee_errSyst");
315 load(m_resNom, "Resolution/es2011d/ctZee_errStat");
316 load(m_resSyst, "Resolution/es2011d/ctZee_errSyst");
317
319
320 load(m_zeeNom, "Scales/es2011dMedium/alphaZee_errStat");
321 load(m_zeeSyst, "Scales/es2011dMedium/alphaZee_errSyst");
322 load(m_zeePhys, "Scales/es2011dMedium/alphaZee_errPhys");
323 load(m_resNom, "Resolution/es2011dMedium/ctZee_errStat");
324 load(m_resSyst, "Resolution/es2011dMedium/ctZee_errSyst");
325
327
328 load(m_zeeNom, "Scales/es2011dTight/alphaZee_errStat");
329 load(m_zeeSyst, "Scales/es2011dTight/alphaZee_errSyst");
330 load(m_zeePhys, "Scales/es2011dTight/alphaZee_errPhys");
331 load(m_resNom, "Resolution/es2011dTight/ctZee_errStat");
332 load(m_resSyst, "Resolution/es2011dTight/ctZee_errSyst");
333 }
334
335 load(m_pedestalL0, "Pedestals/es2011d/pedestals_l0");
336 load(m_pedestalL1, "Pedestals/es2011d/pedestals_l1");
337 load(m_pedestalL2, "Pedestals/es2011d/pedestals_l2");
338 load(m_pedestalL3, "Pedestals/es2011d/pedestals_l3");
339
340 load(m_dX_ID_Nom, "Material/DX0_ConfigA");
341
342 load(m_dX_IPPS_Nom, "Material/Measured/DXerr_IPPS_NewG_errUncor");
343 load(m_dX_IPPS_LAr, "Material/Measured/DXerr_IPPS_NewG_errLAr");
344
345 load(m_dX_IPAcc_Nom, "Material/Measured/DXerr_IPAcc_NewG_errUncor");
346 load(m_dX_IPAcc_LAr, "Material/Measured/DXerr_IPAcc_NewG_errLAr");
347 load(m_dX_IPAcc_G4, "Material/Measured/DXerr_IPAcc_NewG_errG4");
348 load(m_dX_IPAcc_GL1, "Material/Measured/DXerr_IPAcc_NewG_errGL1");
349
350 load(m_dX_PSAcc_Nom, "Material/Measured/DXerr_PSAcc_NewG_errUncor");
351 load(m_dX_PSAcc_LAr, "Material/Measured/DXerr_PSAcc_NewG_errLAr");
352 load(m_dX_PSAcc_G4, "Material/Measured/DXerr_PSAcc_NewG_errG4");
353
354 load(m_convRadius, "Conversions/es2011d/convRadiusMigrations");
355 load(m_convFakeRate, "Conversions/es2011d/convFakeRate");
356 load(m_convRecoEfficiency, "Conversions/es2011d/convRecoEfficiency");
357
358 m_begRunNumber = 177531;
359 m_endRunNumber = 194382;
360
361 const std::string gain_filename1 = PathResolverFindCalibFile(
362 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
363 const std::string gain_filename2 = PathResolverFindCalibFile(
364 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
366 std::make_unique<egGain::GainTool>(gain_filename1, gain_filename2);
367
368 m_e1hg_tool = std::make_unique<e1hg_systematics>(
369 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
370 "e1hg_systematics_histos.root"));
371
372 // mc12a : crude MSc fix in G4; old geometry
373 // All systematics as in 2010.
374 } else if (m_esmodel == egEnergyCorr::es2012a) {
376 load(m_aPSNom, "Scales/es2012a/alphaPS_errTot");
377 load(m_aS12Nom, "Scales/es2012a/alphaS12_errTot");
378
379 load(m_zeeNom, "Scales/es2012a/alphaZee_errStat");
380 load(m_zeeSyst, "Scales/es2012a/alphaZee_errSyst");
381
382 load(m_resNom, "Resolution/es2012a/ctZee_errStat");
383 load(m_resSyst, "Resolution/es2012a/ctZee_errSyst");
384 load(m_peakResData, "Resolution/es2012a/resZee_Data");
385 load(m_peakResMC, "Resolution/es2012a/resZee_MC");
386
387 m_begRunNumber = 195847;
388 m_endRunNumber = 219365;
389
390 // mc12c : correct MSc in G4; new geometry
391 // Final Run1 calibration scheme
392 } else if (m_esmodel == egEnergyCorr::es2012c) {
394 m_resolution_tool = std::make_unique<eg_resolution>("run1");
395
396 load(m_aPSNom, "Scales/es2012c/alphaPS_uncor");
397 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
398 load(m_aS12Nom, "Scales/es2012c/alphaS12_uncor");
399 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
400
401 load(m_trkSyst, "Scales/es2012c/momentum_errSyst");
402
403 load(m_zeeNom, "Scales/es2012c/alphaZee_errStat");
404 load(m_zeeSyst, "Scales/es2012c/alphaZee_errSyst");
405
406 load(m_resNom, "Resolution/es2012c/ctZee_errStat");
407 load(m_resSyst, "Resolution/es2012c/ctZee_errSyst");
408
409 load(m_pedestalL0, "Pedestals/es2012c/pedestals_l0");
410 load(m_pedestalL1, "Pedestals/es2012c/pedestals_l1");
411 load(m_pedestalL2, "Pedestals/es2012c/pedestals_l2");
412 load(m_pedestalL3, "Pedestals/es2012c/pedestals_l3");
413
414 load(m_dX_ID_Nom, "Material/DX0_ConfigA");
415
416 load(m_dX_IPPS_Nom, "Material/Measured/DXerr_IPPS_NewG_errUncor");
417 load(m_dX_IPPS_LAr, "Material/Measured/DXerr_IPPS_NewG_errLAr");
418
419 load(m_dX_IPAcc_Nom, "Material/Measured/DXerr_IPAcc_NewG_errUncor");
420 load(m_dX_IPAcc_LAr, "Material/Measured/DXerr_IPAcc_NewG_errLAr");
421 load(m_dX_IPAcc_G4, "Material/Measured/DXerr_IPAcc_NewG_errG4");
422 load(m_dX_IPAcc_GL1, "Material/Measured/DXerr_IPAcc_NewG_errGL1");
423
424 load(m_dX_PSAcc_Nom, "Material/Measured/DXerr_PSAcc_NewG_errUncor");
425 load(m_dX_PSAcc_LAr, "Material/Measured/DXerr_PSAcc_NewG_errLAr");
426 load(m_dX_PSAcc_G4, "Material/Measured/DXerr_PSAcc_NewG_errG4");
427
428 load(m_convRadius, "Conversions/es2012c/convRadiusMigrations");
429 load(m_convFakeRate, "Conversions/es2012c/convFakeRate");
430 load(m_convRecoEfficiency, "Conversions/es2012c/convRecoEfficiency");
431
432 m_begRunNumber = 195847;
433 m_endRunNumber = 219365;
434
435 const std::string gain_filename1 = PathResolverFindCalibFile(
436 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
437 const std::string gain_filename2 = PathResolverFindCalibFile(
438 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
440 std::make_unique<egGain::GainTool>(gain_filename1, gain_filename2);
441
442 m_e1hg_tool = std::make_unique<e1hg_systematics>(
443 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
444 "e1hg_systematics_histos.root"));
445 } else if (m_esmodel == egEnergyCorr::es2012XX) {
448 m_resolution_tool = std::make_unique<eg_resolution>("run1");
449
450 load(m_aPSNom, "Scales/es2012c/alphaPS_uncor");
451 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
452 load(m_aS12Nom, "Scales/es2012c/alphaS12_uncor");
453 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
454
455 load(m_trkSyst, "Scales/es2012c/momentum_errSyst");
456
457 load(m_zeeNom, "Scales/es2015PRE/alphaZee_errStat");
458 load(m_zeeSyst, "Scales/es2012c/alphaZee_errSyst");
459
460 load(m_resNom, "Resolution/es2015PRE/ctZee_errStat");
461 load(m_resSyst, "Resolution/es2012c/ctZee_errSyst");
462
463 load(m_pedestalL0, "Pedestals/es2012c/pedestals_l0");
464 load(m_pedestalL1, "Pedestals/es2012c/pedestals_l1");
465 load(m_pedestalL2, "Pedestals/es2012c/pedestals_l2");
466 load(m_pedestalL3, "Pedestals/es2012c/pedestals_l3");
467
468 load(m_dX_ID_Nom, "Material/DX0_ConfigA");
469
470 load(m_dX_IPPS_Nom, "Material/Measured/DXerr_IPPS_NewG_errUncor");
471 load(m_dX_IPPS_LAr, "Material/Measured/DXerr_IPPS_NewG_errLAr");
472
473 load(m_dX_IPAcc_Nom, "Material/Measured/DXerr_IPAcc_NewG_errUncor");
474 load(m_dX_IPAcc_LAr, "Material/Measured/DXerr_IPAcc_NewG_errLAr");
475 load(m_dX_IPAcc_G4, "Material/Measured/DXerr_IPAcc_NewG_errG4");
476 load(m_dX_IPAcc_GL1, "Material/Measured/DXerr_IPAcc_NewG_errGL1");
477
478 load(m_dX_PSAcc_Nom, "Material/Measured/DXerr_PSAcc_NewG_errUncor");
479 load(m_dX_PSAcc_LAr, "Material/Measured/DXerr_PSAcc_NewG_errLAr");
480 load(m_dX_PSAcc_G4, "Material/Measured/DXerr_PSAcc_NewG_errG4");
481
482 load(m_convRadius, "Conversions/es2012c/convRadiusMigrations");
483 load(m_convFakeRate, "Conversions/es2012c/convFakeRate");
484 load(m_convRecoEfficiency, "Conversions/es2012c/convRecoEfficiency");
485
486 m_begRunNumber = 195847;
487 m_endRunNumber = 219365;
488
489 const std::string gain_filename1 = PathResolverFindCalibFile(
490 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
491 const std::string gain_filename2 = PathResolverFindCalibFile(
492 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
494 std::make_unique<egGain::GainTool>(gain_filename1, gain_filename2);
495
496 m_e1hg_tool = std::make_unique<e1hg_systematics>(
497 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
498 "e1hg_systematics_histos.root"));
499 } else if (m_esmodel == egEnergyCorr::es2015PRE or
503 m_resolution_tool = std::make_unique<eg_resolution>("run2_pre");
504
505 load(m_aPSNom, "Scales/es2012c/alphaPS_uncor");
506 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
507 load(m_aS12Nom, "Scales/es2012c/alphaS12_uncor");
508 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
509
510 load(m_trkSyst, "Scales/es2012c/momentum_errSyst");
511
512 load(m_zeeNom, "Scales/es2015PRE/alphaZee_errStat");
513 load(m_zeeSyst, "Scales/es2015PRE/alphaZee_errSyst");
514 load(m_uA2MeV_2015_first2weeks_correction, "Scales/es2015PRE/histo_uA2MeV_week12");
515
516 load(m_resNom, "Resolution/es2015PRE/ctZee_errStat");
517 load(m_resSyst, "Resolution/es2015PRE/ctZee_errSyst");
518
519 load(m_pedestalL0, "Pedestals/es2012c/pedestals_l0");
520 load(m_pedestalL1, "Pedestals/es2012c/pedestals_l1");
521 load(m_pedestalL2, "Pedestals/es2012c/pedestals_l2");
522 load(m_pedestalL3, "Pedestals/es2012c/pedestals_l3");
523
524 load(m_dX_ID_Nom, "Material/DX0_ConfigA");
525
526 load(m_dX_IPPS_Nom, "Material/Measured/DXerr_IPPS_NewG_errUncor");
527 load(m_dX_IPPS_LAr, "Material/Measured/DXerr_IPPS_NewG_errLAr");
528
529 load(m_dX_IPAcc_Nom, "Material/Measured/DXerr_IPAcc_NewG_errUncor");
530 load(m_dX_IPAcc_LAr, "Material/Measured/DXerr_IPAcc_NewG_errLAr");
531 load(m_dX_IPAcc_G4, "Material/Measured/DXerr_IPAcc_NewG_errG4");
532 load(m_dX_IPAcc_GL1, "Material/Measured/DXerr_IPAcc_NewG_errGL1");
533
534 load(m_dX_PSAcc_Nom, "Material/Measured/DXerr_PSAcc_NewG_errUncor");
535 load(m_dX_PSAcc_LAr, "Material/Measured/DXerr_PSAcc_NewG_errLAr");
536 load(m_dX_PSAcc_G4, "Material/Measured/DXerr_PSAcc_NewG_errG4");
537
538 load(m_convRadius, "Conversions/es2012c/convRadiusMigrations");
539 load(m_convFakeRate, "Conversions/es2012c/convFakeRate");
540 load(m_convRecoEfficiency, "Conversions/es2012c/convRecoEfficiency");
541
542 m_begRunNumber = 195847;
543 m_endRunNumber = 219365;
544
545 load(m_G4OverAFII_resolution_electron, "FastSim/es2015/el_full_fast_resolution");
546 load(m_G4OverAFII_resolution_unconverted, "FastSim/es2015/ph_unconv_full_fast_resolution");
547 load(m_G4OverAFII_resolution_converted, "FastSim/es2015/ph_conv_full_fast_resolution");
548
552
553 const std::string gain_filename1 = PathResolverFindCalibFile(
554 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
555 const std::string gain_filename2 = PathResolverFindCalibFile(
556 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
558 std::make_unique<egGain::GainTool>(gain_filename1, gain_filename2);
559
560 m_e1hg_tool = std::make_unique<e1hg_systematics>(
561 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
562 "e1hg_systematics_histos.root"));
567 m_resolution_tool = std::make_unique<eg_resolution>("run2_pre");
568
569 load(m_aPSNom, "Scales/es2012c/alphaPS_uncor");
570 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
571 load(m_aS12Nom, "Scales/es2012c/alphaS12_uncor");
572 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
573
574 load(m_trkSyst, "Scales/es2012c/momentum_errSyst");
575
576 load(m_zeeNom, "Scales/es2015PRE/alphaZee_errStat");
577 load(m_zeeSyst, "Scales/es2015PRE/alphaZee_errSyst");
578 load(m_uA2MeV_2015_first2weeks_correction, "Scales/es2015PRE/histo_uA2MeV_week12");
579
580 load(m_resNom, "Resolution/es2015PRE/ctZee_errStat");
581 load(m_resSyst, "Resolution/es2015PRE_res_improved/ctZee_errSyst");
582
583 load(m_pedestalL0, "Pedestals/es2012c/pedestals_l0");
584 load(m_pedestalL1, "Pedestals/es2012c/pedestals_l1");
585 load(m_pedestalL2, "Pedestals/es2012c/pedestals_l2");
586 load(m_pedestalL3, "Pedestals/es2012c/pedestals_l3");
587
588 load(m_dX_ID_Nom, "Material/DX0_ConfigA");
589
590 load(m_dX_IPPS_Nom, "Material/Measured/DXerr_IPPS_NewG_errUncor");
591 load(m_dX_IPPS_LAr, "Material/Measured/DXerr_IPPS_NewG_errLAr");
592
593 load(m_dX_IPAcc_Nom, "Material/Measured/DXerr_IPAcc_NewG_errUncor");
594 load(m_dX_IPAcc_LAr, "Material/Measured/DXerr_IPAcc_NewG_errLAr");
595 load(m_dX_IPAcc_G4, "Material/Measured/DXerr_IPAcc_NewG_errG4");
596 load(m_dX_IPAcc_GL1, "Material/Measured/DXerr_IPAcc_NewG_errGL1");
597
598 load(m_dX_PSAcc_Nom, "Material/Measured/DXerr_PSAcc_NewG_errUncor");
599 load(m_dX_PSAcc_LAr, "Material/Measured/DXerr_PSAcc_NewG_errLAr");
600 load(m_dX_PSAcc_G4, "Material/Measured/DXerr_PSAcc_NewG_errG4");
601
602 load(m_convRadius, "Conversions/es2012c/convRadiusMigrations");
603 load(m_convFakeRate, "Conversions/es2012c/convFakeRate");
604 load(m_convRecoEfficiency, "Conversions/es2012c/convRecoEfficiency");
605
606 m_begRunNumber = 195847;
607 m_endRunNumber = 219365;
608
609 load(m_G4OverAFII_resolution_electron, "FastSim/es2015/el_full_fast_resolution");
610 load(m_G4OverAFII_resolution_unconverted, "FastSim/es2015/ph_unconv_full_fast_resolution");
611 load(m_G4OverAFII_resolution_converted, "FastSim/es2015/ph_conv_full_fast_resolution");
612
616 const std::string gain_filename1 = PathResolverFindCalibFile(
617 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
618 const std::string gain_filename2 = PathResolverFindCalibFile(
619 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
621 std::make_unique<egGain::GainTool>(gain_filename1, gain_filename2);
622
623 m_e1hg_tool = std::make_unique<e1hg_systematics>(
624 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
625 "e1hg_systematics_histos.root"));
629 m_resolution_tool = std::make_unique<eg_resolution>("run2_pre");
630
631 load(m_aPSNom, "Scales/es2012c/alphaPS_uncor");
632 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
633 load(m_aS12Nom, "Scales/es2012c/alphaS12_uncor");
634 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
635
636 load(m_trkSyst, "Scales/es2012c/momentum_errSyst");
637
638 load(m_zeeNom, "Scales/es2015Summer/alphaZee_errStat");
639 load(m_zeeSyst, "Scales/es2015Summer/alphaZee_errSyst");
641
642 load(m_resNom, "Resolution/es2015Summer/ctZee_errStat");
643 load(m_resSyst, "Resolution/es2015Summer/ctZee_errSyst");
644
645 load(m_pedestalL0, "Pedestals/es2012c/pedestals_l0");
646 load(m_pedestalL1, "Pedestals/es2012c/pedestals_l1");
647 load(m_pedestalL2, "Pedestals/es2012c/pedestals_l2");
648 load(m_pedestalL3, "Pedestals/es2012c/pedestals_l3");
649
650 load(m_dX_ID_Nom, "Material/DX0_ConfigA");
651
652 load(m_dX_IPPS_Nom, "Material/Measured/DXerr_IPPS_NewG_errUncor");
653 load(m_dX_IPPS_LAr, "Material/Measured/DXerr_IPPS_NewG_errLAr");
654
655 load(m_dX_IPAcc_Nom, "Material/Measured/DXerr_IPAcc_NewG_errUncor");
656 load(m_dX_IPAcc_LAr, "Material/Measured/DXerr_IPAcc_NewG_errLAr");
657 load(m_dX_IPAcc_G4, "Material/Measured/DXerr_IPAcc_NewG_errG4");
658 load(m_dX_IPAcc_GL1, "Material/Measured/DXerr_IPAcc_NewG_errGL1");
659
660 load(m_dX_PSAcc_Nom, "Material/Measured/DXerr_PSAcc_NewG_errUncor");
661 load(m_dX_PSAcc_LAr, "Material/Measured/DXerr_PSAcc_NewG_errLAr");
662 load(m_dX_PSAcc_G4, "Material/Measured/DXerr_PSAcc_NewG_errG4");
663
664 load(m_convRadius, "Conversions/es2012c/convRadiusMigrations");
665 load(m_convFakeRate, "Conversions/es2012c/convFakeRate");
666 load(m_convRecoEfficiency, "Conversions/es2012c/convRecoEfficiency");
667
668 m_begRunNumber = 195847;
669 m_endRunNumber = 219365;
670
671 load(m_G4OverAFII_resolution_electron, "FastSim/es2015/el_full_fast_resolution");
672 load(m_G4OverAFII_resolution_unconverted, "FastSim/es2015/ph_unconv_full_fast_resolution");
673 load(m_G4OverAFII_resolution_converted, "FastSim/es2015/ph_conv_full_fast_resolution");
674
678
679 const std::string gain_filename1 = PathResolverFindCalibFile(
680 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
681 const std::string gain_filename2 = PathResolverFindCalibFile(
682 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
684 std::make_unique<egGain::GainTool>(gain_filename1, gain_filename2);
685
686 m_e1hg_tool = std::make_unique<e1hg_systematics>(
687 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
688 "e1hg_systematics_histos.root"));
689 m_use_temp_correction201215 = true; // for eta > 2.5
691 } else if (m_esmodel == egEnergyCorr::es2016PRE) {
694 m_resolution_tool = std::make_unique<eg_resolution>("run2_pre");
695
696 load(m_aPSNom, "Scales/es2012c/alphaPS_uncor");
697 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
698 load(m_aS12Nom, "Scales/es2012c/alphaS12_uncor");
699 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
700
701 load(m_trkSyst, "Scales/es2012c/momentum_errSyst");
702
703 load(m_zeeNom, "Scales/es2015Summer/alphaZee_errStat");
704 load(m_zeeSyst, "Scales/es2015Summer/alphaZee_errSyst");
705
706 load(m_resNom, "Resolution/es2015Summer/ctZee_errStat");
707 load(m_resSyst, "Resolution/es2015Summer/ctZee_errSyst");
708
709 load(m_pedestalL0, "Pedestals/es2012c/pedestals_l0");
710 load(m_pedestalL1, "Pedestals/es2012c/pedestals_l1");
711 load(m_pedestalL2, "Pedestals/es2012c/pedestals_l2");
712 load(m_pedestalL3, "Pedestals/es2012c/pedestals_l3");
713
714 load(m_dX_ID_Nom, "Material/DX0_ConfigA");
715
716 load(m_dX_IPPS_Nom, "Material/Measured/DXerr_IPPS_NewG_errUncor");
717 load(m_dX_IPPS_LAr, "Material/Measured/DXerr_IPPS_NewG_errLAr");
718
719 load(m_dX_IPAcc_Nom, "Material/Measured/DXerr_IPAcc_NewG_errUncor");
720 load(m_dX_IPAcc_LAr, "Material/Measured/DXerr_IPAcc_NewG_errLAr");
721 load(m_dX_IPAcc_G4, "Material/Measured/DXerr_IPAcc_NewG_errG4");
722 load(m_dX_IPAcc_GL1, "Material/Measured/DXerr_IPAcc_NewG_errGL1");
723
724 load(m_dX_PSAcc_Nom, "Material/Measured/DXerr_PSAcc_NewG_errUncor");
725 load(m_dX_PSAcc_LAr, "Material/Measured/DXerr_PSAcc_NewG_errLAr");
726 load(m_dX_PSAcc_G4, "Material/Measured/DXerr_PSAcc_NewG_errG4");
727
728 load(m_convRadius, "Conversions/es2012c/convRadiusMigrations");
729 load(m_convFakeRate, "Conversions/es2012c/convFakeRate");
730 load(m_convRecoEfficiency, "Conversions/es2012c/convRecoEfficiency");
731
732 m_begRunNumber = 195847;
733 m_endRunNumber = 219365;
734
735 load(m_G4OverAFII_resolution_electron, "FastSim/es2015/el_full_fast_resolution");
736 load(m_G4OverAFII_resolution_unconverted, "FastSim/es2015/ph_unconv_full_fast_resolution");
737 load(m_G4OverAFII_resolution_converted, "FastSim/es2015/ph_conv_full_fast_resolution");
738
742
743 const std::string gain_filename1 = PathResolverFindCalibFile(
744 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
745 const std::string gain_filename2 = PathResolverFindCalibFile(
746 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
748 std::make_unique<egGain::GainTool>(gain_filename1, gain_filename2);
749
750 m_e1hg_tool = std::make_unique<e1hg_systematics>(
751 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
752 "e1hg_systematics_histos.root"));
753
754 m_use_temp_correction201215 = true; // for eta > 2.5
756 } else if (m_esmodel == egEnergyCorr::es2017 or
771 m_esmodel == egEnergyCorr::es2024_Run3_v0) { // add release 21
772 // here for now
784 m_resolution_tool = std::make_unique<eg_resolution>("run2_R21_v1");
785 } else {
786 m_resolution_tool = std::make_unique<eg_resolution>("run2_pre");
787 }
788
796 load(m_aPSNom, "Scales/es2017_summer_final/alphaPS_uncor");
797 load(m_daPSb12, "Scales/es2017_summer_final/dalphaPS_b12");
798 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
799 load(m_aS12Nom, "Scales/es2017_summer_final/alphaS12_uncor");
800 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
802 load(m_aPSNom, "Scales/es2017_summer_final/alphaPS_uncor");
803 load(m_daPSb12, "Scales/es2017_summer_final/dalphaPS_b12");
804 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
805 load(m_aS12Nom, "Scales/es2018_R21_v1/alphaS12_uncor");
806 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
808 load(m_aPSNom, "Scales/es2023_R22_Run2_v0/alphaPS_uncor");
809 load(m_aS12Nom, "Scales/es2023_R22_Run2_v0/alphaS12_uncor");
812 // es2024_Run3_v0 has different central value but same systematic
813 load(m_aPSNom, "Scales/es2023_R22_Run2_v0/alphaPS_uncor");
814 load(m_aS12Nom, "Scales/es2023_R22_Run2_v1/hE1E2_emu_run2_rel21_v0_fix");
815 } else {
816 load(m_aPSNom, "Scales/es2012c/alphaPS_uncor");
817 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
818 load(m_aS12Nom, "Scales/es2012c/alphaS12_uncor");
819 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
820 }
821 load(m_trkSyst, "Scales/es2012c/momentum_errSyst");
822
824 load(m_zeeNom, "Scales/es2017/alphaZee_errStat_period_2016");
825 load(m_zeeNom_data2015, "Scales/es2017/alphaZee_errStat_period_2015");
828 load(m_zeeNom, "Scales/es2017_summer/alphaZee_errStat_period_2016");
829 load(m_zeeNom_data2015, "Scales/es2017_summer/alphaZee_errStat_period_2015");
831 load(m_zeeNom, "Scales/es2017_summer_final/alphaZee_errStat_period_2016");
832 load(m_zeeNom_data2015, "Scales/es2017_summer_final/alphaZee_errStat_period_2015");
833 } else if (m_esmodel == egEnergyCorr::es2015_5TeV) {
834 load(m_zeeNom, "Scales/es2015_5TeV/alphaZee_errStat_period_2015");
835 // Same histogram added twice for simplicity
836 load(m_zeeNom_data2015, "Scales/es2015_5TeV/alphaZee_errStat_period_2015");
838 load(m_zeeNom, "Scales/es2017_R21_v0/alphaZee_errStat_period_2017");
839 load(m_zeeNom_data2016, "Scales/es2017_R21_v0/alphaZee_errStat_period_2016");
840 load(m_zeeNom_data2015, "Scales/es2017_R21_v0/alphaZee_errStat_period_2015");
842 load(m_zeeNom, "Scales/es2017_R21_v1/alphaZee_errStat_period_2017");
843 load(m_zeeNom_data2016, "Scales/es2017_R21_v1/alphaZee_errStat_period_2016");
844 load(m_zeeNom_data2015, "Scales/es2017_R21_v1/alphaZee_errStat_period_2015");
845 m_zeeFwdk.reset(checked_own_cast<TH1*>(
846 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalk")));
847 m_zeeFwdb.reset(checked_own_cast<TH1*>(
848 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalb")));
850 load(m_zeeNom, "Scales/es2017_R21_ofc0_v1/alphaZee_errStat_period_2017");
851 load(m_zeeNom_data2016, "Scales/es2017_R21_ofc0_v1/alphaZee_errStat_period_2016");
852 load(m_zeeNom_data2015, "Scales/es2017_R21_ofc0_v1/alphaZee_errStat_period_2015");
853 load(m_zeeNom_data2018, "Scales/es2017_R21_ofc0_v1/alphaZee_errStat_period_2018");
854 m_zeeFwdk.reset(checked_own_cast<TH1*>(
855 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalk")));
856 m_zeeFwdb.reset(checked_own_cast<TH1*>(
857 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalb")));
859 load(m_zeeNom, "Scales/es2024_Run3_ofc0_v0/alphaZee_errStat");
860 m_zeeFwdk.reset(checked_own_cast<TH1*>(
861 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalk")));
862 m_zeeFwdb.reset(checked_own_cast<TH1*>(
863 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalb")));
865
866 load(m_zeeNom, "Scales/es2018_R21_v0/alphaZee_errStat_period_2018");
867 load(m_zeeNom_data2017, "Scales/es2018_R21_v0/alphaZee_errStat_period_2017");
868 load(m_zeeNom_data2016, "Scales/es2018_R21_v0/alphaZee_errStat_period_2016");
869 load(m_zeeNom_data2015, "Scales/es2018_R21_v0/alphaZee_errStat_period_2015");
870 m_zeeFwdk.reset(checked_own_cast<TH1*>(
871 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalk")));
872 m_zeeFwdb.reset(checked_own_cast<TH1*>(
873 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalb")));
875 m_zeeNom.reset(checked_own_cast<TH1*>(
876 rootFile->Get("Scales/es2018_R21_v1/alphaZee_errStat_period_2018")));
877 m_zeeNom_data2017.reset(checked_own_cast<TH1*>(
878 rootFile->Get("Scales/es2018_R21_v1/alphaZee_errStat_period_2017")));
879 m_zeeNom_data2016.reset(checked_own_cast<TH1*>(
880 rootFile->Get("Scales/es2018_R21_v1/alphaZee_errStat_period_2016")));
881 m_zeeNom_data2015.reset(checked_own_cast<TH1*>(
882 rootFile->Get("Scales/es2018_R21_v1/alphaZee_errStat_period_2015")));
883 // same as in v0 model
884 m_zeeFwdk.reset(checked_own_cast<TH1*>(
885 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalk")));
886 m_zeeFwdb.reset(checked_own_cast<TH1*>(
887 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalb")));
889 m_zeeNom.reset(checked_own_cast<TH1*>(
890 rootFile->Get("Scales/es2022_R22_PRE/alphaZee_errStat_period_2018")));
891 // same as in v0 model
892 m_zeeFwdk.reset(checked_own_cast<TH1*>(
893 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalk")));
894 m_zeeFwdb.reset(checked_own_cast<TH1*>(
895 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalb")));
897 m_zeeNom.reset(checked_own_cast<TH1*>(rootFile->Get(
898 "Scales/es2023_R22_Run2_v0/alphaZee_errStat_period_2018")));
899 m_zeeNom_data2017.reset(checked_own_cast<TH1*>(rootFile->Get(
900 "Scales/es2023_R22_Run2_v0/alphaZee_errStat_period_2017")));
901 m_zeeNom_data2016.reset(checked_own_cast<TH1*>(rootFile->Get(
902 "Scales/es2023_R22_Run2_v0/alphaZee_errStat_period_2016")));
903 m_zeeNom_data2015.reset(checked_own_cast<TH1*>(rootFile->Get(
904 "Scales/es2023_R22_Run2_v0/alphaZee_errStat_period_2015")));
905 // same as in v0 model
906 m_zeeFwdk.reset(checked_own_cast<TH1*>(
907 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalk")));
908 m_zeeFwdb.reset(checked_own_cast<TH1*>(
909 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalb")));
911 // based on fixed E1E2
912 m_zeeNom.reset(checked_own_cast<TH1*>(rootFile->Get(
913 "Scales/es2023_R22_Run2_v1/alphaZee_errStat_period_2018")));
914 m_zeeNom_data2017.reset(checked_own_cast<TH1*>(rootFile->Get(
915 "Scales/es2023_R22_Run2_v1/alphaZee_errStat_period_2017")));
916 m_zeeNom_data2016.reset(checked_own_cast<TH1*>(rootFile->Get(
917 "Scales/es2023_R22_Run2_v1/alphaZee_errStat_period_2016")));
918 m_zeeNom_data2015.reset(checked_own_cast<TH1*>(rootFile->Get(
919 "Scales/es2023_R22_Run2_v1/alphaZee_errStat_period_2015")));
920 // same as in v0 model
921 m_zeeFwdk.reset(checked_own_cast<TH1*>(
922 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalk")));
923 m_zeeFwdb.reset(checked_own_cast<TH1*>(
924 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalb")));
926 m_zeeNom.reset(checked_own_cast<TH1*>(
927 rootFile->Get("Scales/es2024_Run3_v0/alphaZee_errStat_period_2024")));
928 m_zeeNom_data2023.reset(checked_own_cast<TH1*>(
929 rootFile->Get("Scales/es2024_Run3_v0/alphaZee_errStat_period_2023")));
930 m_zeeNom_data2022.reset(checked_own_cast<TH1*>(
931 rootFile->Get("Scales/es2024_Run3_v0/alphaZee_errStat_period_2022")));
932 } else {
933 m_zeeNom.reset(checked_own_cast<TH1*>(
934 rootFile->Get("Scales/es2017_R21_PRE/alphaZee_errStat_period_2016")));
935 // SAME HISTO FOR 2015 FOR NOW
936 m_zeeNom_data2015.reset(checked_own_cast<TH1*>(
937 rootFile->Get("Scales/es2017_R21_PRE/alphaZee_errStat_period_2016")));
938 }
940 m_zeeSyst.reset(checked_own_cast<TH1*>(
941 rootFile->Get("Scales/es2017/alphaZee_errSyst")));
943 m_zeeSyst.reset(checked_own_cast<TH1*>(
944 rootFile->Get("Scales/es2017_summer_final/alphaZee_errSyst")));
945 } else if (m_esmodel == egEnergyCorr::es2015_5TeV) {
946 m_zeeSyst.reset(checked_own_cast<TH1*>(
947 rootFile->Get("Scales/es2015_5TeV/alphaZee_errSyst")));
949 m_zeeSyst.reset(checked_own_cast<TH1*>(
950 rootFile->Get("Scales/es2017_summer_final/alphaZee_errSyst")));
952 m_zeeSyst.reset(checked_own_cast<TH1*>(
953 rootFile->Get("Scales/es2017_R21_v1/alphaZee_errSyst")));
955 m_zeeSyst.reset(checked_own_cast<TH1*>(
956 rootFile->Get("Scales/es2017_R21_ofc0_v1/alphaZee_errSyst")));
958 m_zeeSyst.reset(checked_own_cast<TH1*>(
959 rootFile->Get("Scales/es2024_Run3_ofc0_v0/alphaZee_errSyst")));
961 m_zeeSyst.reset(checked_own_cast<TH1*>(
962 rootFile->Get("Scales/es2018_R21_v0/alphaZee_errSyst")));
967 m_zeeSyst.reset(checked_own_cast<TH1*>(
968 rootFile->Get("Scales/es2018_R21_v1/alphaZee_errSyst")));
970 m_zeeSyst.reset(checked_own_cast<TH1*>(
971 rootFile->Get("Scales/es2022_R22_PRE/alphaZee_errSyst")));
972 m_zeeSystOFC.reset(checked_own_cast<TH1*>(
973 rootFile->Get("Scales/es2022_R22_PRE/alphaZee_errOFCSyst")));
974 } else {
975 m_zeeSyst.reset(checked_own_cast<TH1*>(
976 rootFile->Get("Scales/es2017_summer/alphaZee_errSyst")));
977 }
978
981 m_resNom.reset(checked_own_cast<TH1*>(
982 rootFile->Get("Resolution/es2017/ctZee_errStat")));
986 m_resNom.reset(checked_own_cast<TH1*>(
987 rootFile->Get("Resolution/es2017_summer/ctZee_errStat")));
989 m_resNom.reset(checked_own_cast<TH1*>(
990 rootFile->Get("Resolution/es2017_summer_final/ctZee_errStat")));
992 m_resNom.reset(checked_own_cast<TH1*>(
993 rootFile->Get("Resolution/es2017_R21_v0/ctZee_errStat")));
995 m_resNom.reset(checked_own_cast<TH1*>(
996 rootFile->Get("Resolution/es2017_R21_v1/ctZee_errStat")));
998 m_resNom.reset(checked_own_cast<TH1*>(
999 rootFile->Get("Resolution/es2017_R21_ofc0_v1/ctZee_errStat")));
1001 // use same resolution smearing as run 2 ofc0 recommendation
1002 m_resNom.reset(checked_own_cast<TH1*>(
1003 rootFile->Get("Resolution/es2017_R21_ofc0_v1/ctZee_errStat")));
1004 } else if (m_esmodel == egEnergyCorr::es2018_R21_v0) {
1005 m_resNom.reset(checked_own_cast<TH1*>(
1006 rootFile->Get("Resolution/es2018_R21_v0/ctZee_errStat")));
1007 } else if (m_esmodel == egEnergyCorr::es2018_R21_v1) {
1008 m_resNom.reset(checked_own_cast<TH1*>(
1009 rootFile->Get("Resolution/es2018_R21_v1/ctZee_errStat")));
1011 m_resNom.reset(checked_own_cast<TH1*>(
1012 rootFile->Get("Resolution/es2022_R22_PRE/ctZee_errStat")));
1014 m_resNom.reset(checked_own_cast<TH1*>(
1015 rootFile->Get("Resolution/es2023_R22_Run2_v0/ctZee_errStat")));
1017 m_resNom.reset(checked_own_cast<TH1*>(
1018 rootFile->Get("Resolution/es2023_R22_Run2_v1/ctZee_errStat")));
1020 m_resNom.reset(checked_own_cast<TH1*>(
1021 rootFile->Get("Resolution/es2024_Run3_v0/ctZee_errStat")));
1022 } else {
1023 m_resNom.reset(checked_own_cast<TH1*>(
1024 rootFile->Get("Resolution/es2017_R21_PRE/ctZee_errStat")));
1025 }
1026
1028 m_resSyst.reset(checked_own_cast<TH1*>(
1029 rootFile->Get("Resolution/es2017/ctZee_errSyst")));
1031 m_resSyst.reset(checked_own_cast<TH1*>(
1032 rootFile->Get("Resolution/es2017_summer_final/ctZee_errSyst")));
1033 } else if (m_esmodel == egEnergyCorr::es2015_5TeV) {
1034 m_resSyst.reset(checked_own_cast<TH1*>(
1035 rootFile->Get("Resolution/es2015_5TeV/ctZee_errSyst")));
1036 } else if (m_esmodel == egEnergyCorr::es2017_R21_v0) {
1037 m_resSyst.reset(checked_own_cast<TH1*>(
1038 rootFile->Get("Resolution/es2017_summer_final/ctZee_errSyst")));
1039 } else if (m_esmodel == egEnergyCorr::es2017_R21_v1) {
1040 m_resSyst.reset(checked_own_cast<TH1*>(
1041 rootFile->Get("Resolution/es2017_R21_v1/ctZee_errSyst")));
1043 m_resSyst.reset(checked_own_cast<TH1*>(
1044 rootFile->Get("Resolution/es2017_R21_ofc0_v1/ctZee_errSyst")));
1046 // use same resolution smearing syst as run 2 ofc0 recommendataion
1047 m_resSyst.reset(checked_own_cast<TH1*>(
1048 rootFile->Get("Resolution/es2017_R21_ofc0_v1/ctZee_errSyst")));
1049 } else if (m_esmodel == egEnergyCorr::es2018_R21_v0) {
1050 m_resSyst.reset(checked_own_cast<TH1*>(
1051 rootFile->Get("Resolution/es2018_R21_v0/ctZee_errSyst")));
1052 } else if (m_esmodel == egEnergyCorr::es2018_R21_v1 ||
1056 m_resSyst.reset(checked_own_cast<TH1*>(
1057 rootFile->Get("Resolution/es2018_R21_v1/ctZee_errSyst")));
1059 m_resSyst.reset(checked_own_cast<TH1*>(
1060 rootFile->Get("Resolution/es2022_R22_PRE/ctZee_errSyst")));
1061 m_resSystOFC.reset(checked_own_cast<TH1*>(
1062 rootFile->Get("Resolution/es2022_R22_PRE/ctZee_errOFCSyst")));
1063 } else {
1064 m_resSyst.reset(checked_own_cast<TH1*>(
1065 rootFile->Get("Resolution/es2017_summer/ctZee_errSyst")));
1066 }
1067 // else{
1068 // m_resSyst.reset( checked_own_cast< TH1* >(
1069 // rootFile->Get("Resolution/es2017_summer_improved/ctZee_errSyst")));
1070 // }
1071
1072 m_pedestals_es2017.reset(
1073 checked_own_cast<TH1*>(rootFile->Get("Pedestals/es2017/pedestals")));
1074
1075 m_dX_ID_Nom.reset(
1076 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigA")));
1077
1078 m_dX_IPPS_Nom.reset(checked_own_cast<TH1*>(
1079 rootFile->Get("Material/Measured/DXerr_IPPS_NewG_errUncor")));
1080 m_dX_IPPS_LAr.reset(checked_own_cast<TH1*>(
1081 rootFile->Get("Material/Measured/DXerr_IPPS_NewG_errLAr")));
1082
1083 m_dX_IPAcc_Nom.reset(checked_own_cast<TH1*>(
1084 rootFile->Get("Material/Measured/DXerr_IPAcc_NewG_errUncor")));
1085 m_dX_IPAcc_LAr.reset(checked_own_cast<TH1*>(
1086 rootFile->Get("Material/Measured/DXerr_IPAcc_NewG_errLAr")));
1087 m_dX_IPAcc_G4.reset(checked_own_cast<TH1*>(
1088 rootFile->Get("Material/Measured/DXerr_IPAcc_NewG_errG4")));
1089 m_dX_IPAcc_GL1.reset(checked_own_cast<TH1*>(
1090 rootFile->Get("Material/Measured/DXerr_IPAcc_NewG_errGL1")));
1091
1092 m_dX_PSAcc_Nom.reset(checked_own_cast<TH1*>(
1093 rootFile->Get("Material/Measured/DXerr_PSAcc_NewG_errUncor")));
1094 m_dX_PSAcc_LAr.reset(checked_own_cast<TH1*>(
1095 rootFile->Get("Material/Measured/DXerr_PSAcc_NewG_errLAr")));
1096 m_dX_PSAcc_G4.reset(checked_own_cast<TH1*>(
1097 rootFile->Get("Material/Measured/DXerr_PSAcc_NewG_errG4")));
1098
1099 m_convRadius.reset(checked_own_cast<TH1*>(
1100 rootFile->Get("Conversions/es2012c/convRadiusMigrations")));
1102 m_convFakeRate.reset(checked_own_cast<TH1*>(
1103 rootFile->Get("Conversions/es2012c/convFakeRate")));
1104 m_convRecoEfficiency.reset(checked_own_cast<TH1*>(
1105 rootFile->Get("Conversions/es2012c/convRecoEfficiency")));
1108 m_convFakeRate_2D.reset(checked_own_cast<TH2*>(
1109 rootFile->Get("Conversions/es2023_R22_Run2_v0/convFakeRate")));
1110 m_convRecoEfficiency_2D.reset(checked_own_cast<TH2*>(
1111 rootFile->Get("Conversions/es2023_R22_Run2_v0/convRecoEfficiency")));
1113 m_convFakeRate_2D.reset(checked_own_cast<TH2*>(
1114 rootFile->Get("Conversions/es2024_Run3_v0/conv_energybias")));
1115 m_convRecoEfficiency_2D.reset(checked_own_cast<TH2*>(
1116 rootFile->Get("Conversions/es2024_Run3_v0/unconv_energybias")));
1117 } else {
1118 m_convFakeRate.reset(checked_own_cast<TH1*>(
1119 rootFile->Get("Conversions/es2017_summer/convFakeRate")));
1120 m_convRecoEfficiency.reset(checked_own_cast<TH1*>(
1121 rootFile->Get("Conversions/es2017_summer/convRecoEfficiency")));
1122 }
1123
1124 // TODO: change path when moving to calibarea
1125 // TODO: better package this somewhere
1126
1127 const std::string filename_pp0 = PathResolverFindCalibFile(
1128 "ElectronPhotonFourMomentumCorrection/v8/PP0sys.root");
1129
1130 TFile file_pp0(filename_pp0.c_str());
1131 m_pp0_elec.reset(checked_own_cast<TH2*>(file_pp0.Get("elec")));
1132 m_pp0_conv.reset(checked_own_cast<TH2*>(file_pp0.Get("conv")));
1133 m_pp0_unconv.reset(checked_own_cast<TH2*>(file_pp0.Get("unco")));
1134
1135 // similar case for wtots1
1136 const std::string filename_wstot = PathResolverFindCalibFile(
1137 "ElectronPhotonFourMomentumCorrection/v8/wstot_related_syst.root");
1138
1139 TFile file_wstot(filename_wstot.c_str());
1141 checked_own_cast<TH1*>(file_wstot.Get("A_data")));
1142 m_wstot_slope_B_MC.reset(checked_own_cast<TH1*>(file_wstot.Get("B_mc")));
1144 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_el_data_p0")));
1146 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_el_data_p1")));
1148 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_uc_data_p0")));
1150 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_uc_data_p1")));
1152 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_c_data_p0")));
1154 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_c_data_p1")));
1156 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_el_mc_p0")));
1158 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_el_mc_p1")));
1160 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_ph_uc_mc_p0")));
1162 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_ph_uc_mc_p1")));
1164 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_ph_c_mc_p0")));
1166 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_ph_c_mc_p1")));
1167
1168 m_begRunNumber = 252604;
1169 m_endRunNumber = 314199;
1170
1175 m_G4OverAFII_resolution_electron.reset(checked_own_cast<TH2*>(
1176 rootFile->Get("FastSim/es2017_v1/resol_Af2ToG4_elec_rel21")));
1177 m_G4OverAFII_resolution_unconverted.reset(checked_own_cast<TH2*>(
1178 rootFile->Get("FastSim/es2017_v1/resol_Af2ToG4_unco_rel21")));
1179 m_G4OverAFII_resolution_converted.reset(checked_own_cast<TH2*>(
1180 rootFile->Get("FastSim/es2017_v1/resol_Af2ToG4_conv_rel21")));
1181 }
1186 m_G4OverAFII_resolution_electron.reset(checked_own_cast<TH2*>(
1187 rootFile->Get("FastSim/es2023_R22_Run2_v1/resol_AF3ToG4_elec_rel22")));
1188 m_G4OverAFII_resolution_unconverted.reset(checked_own_cast<TH2*>(
1189 rootFile->Get("FastSim/es2023_R22_Run2_v1/resol_AF3ToG4_unco_rel22")));
1190 m_G4OverAFII_resolution_converted.reset(checked_own_cast<TH2*>(
1191 rootFile->Get("FastSim/es2023_R22_Run2_v1/resol_AF3ToG4_conv_rel22")));
1192 }
1194 m_G4OverAFII_resolution_electron.reset(checked_own_cast<TH2*>(
1195 rootFile->Get("FastSim/es2024_Run3_v0/resol_AF3ToG4_elec_mc23")));
1196 m_G4OverAFII_resolution_unconverted.reset(checked_own_cast<TH2*>(
1197 rootFile->Get("FastSim/es2024_Run3_v0/resol_AF3ToG4_unco_mc23")));
1198 m_G4OverAFII_resolution_converted.reset(checked_own_cast<TH2*>(
1199 rootFile->Get("FastSim/es2024_Run3_v0/resol_AF3ToG4_conv_mc23")));
1200 // extra systematic file for eta between 1.3 and 1.35 due to double Gaussian peak in Ereco/Etrue
1201 m_G4OverAF_electron_resolution_extra_sys.reset(checked_own_cast<TH1*>(
1202 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_resol_AF3ToG4_elec_mc23_1p3_1p35")));
1203 m_G4OverAF_converted_resolution_extra_sys.reset(checked_own_cast<TH1*>(
1204 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_resol_AF3ToG4_elec_mc23_1p3_1p35")));
1205 m_G4OverAF_unconverted_resolution_extra_sys.reset(checked_own_cast<TH1*>(
1206 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_resol_AF3ToG4_unconv_mc23_1p3_1p35")));
1207 }
1208 else {
1209 m_G4OverAFII_resolution_electron.reset(checked_own_cast<TH2*>(
1210 rootFile->Get("FastSim/es2017/el_full_fast_resolution")));
1211 m_G4OverAFII_resolution_unconverted.reset(checked_own_cast<TH2*>(
1212 rootFile->Get("FastSim/es2017/ph_unconv_full_fast_resolution")));
1213 m_G4OverAFII_resolution_converted.reset(checked_own_cast<TH2*>(
1214 rootFile->Get("FastSim/es2017/ph_conv_full_fast_resolution")));
1215 }
1219
1220 const std::string gain_filename1 = PathResolverFindCalibFile(
1221 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
1222 const std::string gain_filename2 = PathResolverFindCalibFile(
1223 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
1224 m_gain_tool = nullptr;
1225
1226 std::string gain_tool_run_2_filename;
1227 std::string gain_tool_run3_extra_filename;
1232 gain_tool_run_2_filename = PathResolverFindCalibFile(
1233 "ElectronPhotonFourMomentumCorrection/v11/"
1234 "gain_uncertainty_specialRun.root");
1237 m_esmodel == egEnergyCorr::es2024_Run3_v0) { // Run3: extra OFC NP will be added separatedly in different lines
1238 gain_tool_run_2_filename = PathResolverFindCalibFile(
1239 "ElectronPhotonFourMomentumCorrection/v29/"
1240 "gain_uncertainty_specialRun.root");
1242 gain_tool_run3_extra_filename = PathResolverFindCalibFile(
1243 "ElectronPhotonFourMomentumCorrection/v38/"
1244 "gain_uncertainty_specialRun.root");
1245 }
1246 } else {
1247 gain_tool_run_2_filename = PathResolverFindCalibFile(
1248 "ElectronPhotonFourMomentumCorrection/v14/"
1249 "gain_uncertainty_specialRun.root");
1250 }
1254 m_gain_tool_run2 = std::make_unique<egGain::GainUncertainty>(
1255 gain_tool_run_2_filename, true, "GainUncertainty",
1258 m_gain_tool_run3_extra = std::make_unique<egGain::GainUncertainty>(
1259 gain_tool_run3_extra_filename, true, "GainUncertainty",
1261 }
1262 } else {
1264 std::make_unique<egGain::GainUncertainty>(gain_tool_run_2_filename);
1265 }
1266
1267 m_gain_tool_run2->msg().setLevel(this->msg().level());
1268
1272 m_e1hg_tool = std::make_unique<e1hg_systematics>(
1273 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v29/"
1274 "e1hg_systematics_histos.root"));
1275 } else {
1276 m_e1hg_tool = std::make_unique<e1hg_systematics>(
1277 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
1278 "e1hg_systematics_histos.root"));
1279 }
1280
1285 m_resolution_tool = std::make_unique<eg_resolution>("run2_pre");
1286
1287 m_aPSNom.reset(checked_own_cast<TH1*>(
1288 rootFile->Get("Scales/es2015_day0/alphaPS_uncor"))); // old one
1289 m_daPSCor.reset(checked_own_cast<TH1*>(
1290 rootFile->Get("Scales/es2015_day0/dalphaPS_cor"))); // old one
1291 m_aS12Nom.reset(checked_own_cast<TH1*>(
1292 rootFile->Get("Scales/es2015_day0/alphaS12_uncor"))); // old one
1293 m_daS12Cor.reset(checked_own_cast<TH1*>(
1294 rootFile->Get("Scales/es2015_day0/dalphaS12_cor"))); // old one
1295
1296 m_trkSyst.reset(checked_own_cast<TH1*>(
1297 rootFile->Get("Scales/es2015_day0/momentum_errSyst"))); // old one
1298
1299 m_zeeNom.reset(checked_own_cast<TH1*>(
1300 rootFile->Get("Scales/es2015_day0/alphaZee_errStat"))); // old one
1301 m_zeeSyst.reset(checked_own_cast<TH1*>(
1302 rootFile->Get("Scales/es2015_day0/alphaZee_errSyst"))); // old one
1303
1304 m_resNom.reset(checked_own_cast<TH1*>(
1305 rootFile->Get("Resolution/es2012c/ctZee_errStat"))); // old one
1306 m_resSyst.reset(checked_own_cast<TH1*>(
1307 rootFile->Get("Resolution/es2012c/ctZee_errSyst"))); // old one
1308
1309 m_pedestalL0.reset(checked_own_cast<TH1*>(
1310 rootFile->Get("Pedestals/es2012c/pedestals_l0"))); // old one
1311 m_pedestalL1.reset(checked_own_cast<TH1*>(
1312 rootFile->Get("Pedestals/es2012c/pedestals_l1"))); // old one
1313 m_pedestalL2.reset(checked_own_cast<TH1*>(
1314 rootFile->Get("Pedestals/es2012c/pedestals_l2"))); // old one
1315 m_pedestalL3.reset(checked_own_cast<TH1*>(
1316 rootFile->Get("Pedestals/es2012c/pedestals_l3"))); // old one
1317
1318 m_dX_ID_Nom.reset(checked_own_cast<TH1*>(
1319 rootFile->Get("Material/DX0_ConfigA"))); // old one
1320
1321 m_dX_IPPS_Nom.reset(checked_own_cast<TH1*>(rootFile->Get(
1322 "Material/Measured/DXerr_IPPS_NewG_errUncor"))); // old one
1323 m_dX_IPPS_LAr.reset(checked_own_cast<TH1*>(
1324 rootFile->Get("Material/Measured/DXerr_IPPS_NewG_errLAr"))); // old one
1325
1326 m_dX_IPAcc_Nom.reset(checked_own_cast<TH1*>(rootFile->Get(
1327 "Material/Measured/DXerr_IPAcc_NewG_errUncor"))); // old one
1328 m_dX_IPAcc_LAr.reset(checked_own_cast<TH1*>(rootFile->Get(
1329 "Material/Measured/DXerr_IPAcc_NewG_errLAr"))); // old one
1330 m_dX_IPAcc_G4.reset(checked_own_cast<TH1*>(
1331 rootFile->Get("Material/Measured/DXerr_IPAcc_NewG_errG4"))); // old one
1332 m_dX_IPAcc_GL1.reset(checked_own_cast<TH1*>(rootFile->Get(
1333 "Material/Measured/DXerr_IPAcc_NewG_errGL1"))); // old one
1334
1335 m_dX_PSAcc_Nom.reset(checked_own_cast<TH1*>(rootFile->Get(
1336 "Material/Measured/DXerr_PSAcc_NewG_errUncor"))); // old one
1337 m_dX_PSAcc_LAr.reset(checked_own_cast<TH1*>(rootFile->Get(
1338 "Material/Measured/DXerr_PSAcc_NewG_errLAr"))); // old one
1339 m_dX_PSAcc_G4.reset(checked_own_cast<TH1*>(
1340 rootFile->Get("Material/Measured/DXerr_PSAcc_NewG_errG4"))); // old one
1341
1342 m_convRadius.reset(checked_own_cast<TH1*>(
1343 rootFile->Get("Conversions/es2012c/convRadiusMigrations"))); // old one
1344 m_convFakeRate.reset(checked_own_cast<TH1*>(
1345 rootFile->Get("Conversions/es2012c/convFakeRate"))); // old one
1346 m_convRecoEfficiency.reset(checked_own_cast<TH1*>(
1347 rootFile->Get("Conversions/es2012c/convRecoEfficiency"))); // old one
1348
1349 m_begRunNumber = 195847;
1350 m_endRunNumber = 219365;
1351
1352 const std::string gain_filename1 = PathResolverFindCalibFile(
1353 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
1354 const std::string gain_filename2 = PathResolverFindCalibFile(
1355 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
1356 m_gain_tool =
1357 std::make_unique<egGain::GainTool>(gain_filename1, gain_filename2);
1358
1359 m_e1hg_tool = std::make_unique<e1hg_systematics>(
1360 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
1361 "e1hg_systematics_histos.root"));
1362
1363 // If we are here, fail s :
1364
1365 } else if (m_esmodel == egEnergyCorr::UNDEFINED) {
1366 ATH_MSG_FATAL("ES model not initialized - Initialization fails");
1367 return 0;
1368 } else {
1369 ATH_MSG_FATAL("ES model not recognized - Initialization fails");
1370 return 0;
1371 }
1372
1392 // E4 systematics
1393 m_E4ElectronEtaBins.reset(checked_own_cast<TAxis*>(
1394 rootFile->Get("E4Recalibration/v4/electron_eta_axis")));
1395 m_E4ElectronGraphs.reset(
1396 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/v4/electron")));
1397 // for photons use the same as electrons
1398 m_E4UnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1399 rootFile->Get("E4Recalibration/v4/electron_eta_axis")));
1401 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/v4/electron")));
1402 m_E4ConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1403 rootFile->Get("E4Recalibration/v4/electron_eta_axis")));
1404 m_E4ConvertedGraphs.reset(
1405 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/v4/electron")));
1406 }
1408 // E4 systematics (sensitivity per particle type)
1409 m_E4ElectronEtaBins.reset(checked_own_cast<TAxis*>(
1410 rootFile->Get("E4Recalibration/es2024_Run3_v0/E4_eta_axis")));
1411 m_E4ElectronGraphs.reset(
1412 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/es2024_Run3_v0/electron_sensitivity")));
1413 m_E4UnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1414 rootFile->Get("E4Recalibration/es2024_Run3_v0/E4_eta_axis")));
1416 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/es2024_Run3_v0/unconv_photon_sensitivity")));
1417 m_E4ConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1418 rootFile->Get("E4Recalibration/es2024_Run3_v0/E4_eta_axis")));
1419 m_E4ConvertedGraphs.reset(
1420 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/es2024_Run3_v0/conv_photon_sensitivity")));
1421 }
1422
1423 // ... PS and S12 recalibration curves
1443
1444 m_psElectronEtaBins.reset(checked_own_cast<TAxis*>(
1445 rootFile->Get("PSRecalibration/es2015PRE/ElectronAxis")));
1446 m_psElectronGraphs.reset(checked_own_cast<TList*>(
1447 rootFile->Get("PSRecalibration/es2015PRE/ElectronBiasPS")));
1448 m_psUnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1449 rootFile->Get("PSRecalibration/es2015PRE/UnconvertedAxis")));
1450 m_psUnconvertedGraphs.reset(checked_own_cast<TList*>(
1451 rootFile->Get("PSRecalibration/es2015PRE/UnconvertedBiasPS")));
1452 m_psConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1453 rootFile->Get("PSRecalibration/es2015PRE/ConvertedAxis")));
1454 m_psConvertedGraphs.reset(checked_own_cast<TList*>(
1455 rootFile->Get("PSRecalibration/es2015PRE/ConvertedBiasPS")));
1456
1457 m_s12ElectronEtaBins.reset(checked_own_cast<TAxis*>(
1458 rootFile->Get("S1Recalibration/es2015PRE/ElectronAxis")));
1459 m_s12ElectronGraphs.reset(checked_own_cast<TList*>(
1460 rootFile->Get("S1Recalibration/es2015PRE/ElectronBiasS1")));
1461 m_s12UnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1462 rootFile->Get("S1Recalibration/es2015PRE/UnconvertedAxis")));
1463 m_s12UnconvertedGraphs.reset(checked_own_cast<TList*>(
1464 rootFile->Get("S1Recalibration/es2015PRE/UnconvertedBiasS1")));
1465 m_s12ConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1466 rootFile->Get("S1Recalibration/es2015PRE/ConvertedAxis")));
1467 m_s12ConvertedGraphs.reset(checked_own_cast<TList*>(
1468 rootFile->Get("S1Recalibration/es2015PRE/ConvertedBiasS1")));
1472 m_psElectronEtaBins.reset(checked_own_cast<TAxis*>(
1473 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/ElectronAxis")));
1474 m_psElectronGraphs.reset(checked_own_cast<TList*>(
1475 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/ElectronBiasPS")));
1476 m_psUnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1477 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/UnconvertedAxis")));
1478 m_psUnconvertedGraphs.reset(checked_own_cast<TList*>(
1479 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/UnconvertedBiasPS")));
1480 m_psConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1481 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/ConvertedAxis")));
1482 m_psConvertedGraphs.reset(checked_own_cast<TList*>(
1483 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/ConvertedBiasPS")));
1484
1485 m_s12ElectronEtaBins.reset(checked_own_cast<TAxis*>(
1486 rootFile->Get("S2Recalibration/ElectronAxis")));
1487 m_s12ElectronGraphs.reset(checked_own_cast<TList*>(
1488 rootFile->Get("S2Recalibration/ElectronBiasS2")));
1489 m_s12UnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1490 rootFile->Get("S2Recalibration/UnconvertedAxis")));
1491 m_s12UnconvertedGraphs.reset(checked_own_cast<TList*>(
1492 rootFile->Get("S2Recalibration/UnconvertedBiasS2")));
1493 m_s12ConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1494 rootFile->Get("S2Recalibration/ConvertedAxis")));
1495 m_s12ConvertedGraphs.reset(checked_own_cast<TList*>(
1496 rootFile->Get("S2Recalibration/ConvertedBiasS2")));
1497
1498 m_EaccElectronEtaBins.reset(checked_own_cast<TAxis*>(
1499 rootFile->Get("SaccRecalibration/ElectronAxis")));
1501 m_EaccElectronGraphs.reset(checked_own_cast<TList*>(
1502 rootFile->Get("SaccRecalibration/es2024_Run3_v0/ElectronBiasSacc")));
1503 }
1504 else {
1505 m_EaccElectronGraphs.reset(checked_own_cast<TList*>(
1506 rootFile->Get("SaccRecalibration/ElectronBiasSacc")));
1507 }
1508 m_EaccUnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1509 rootFile->Get("SaccRecalibration/UnconvertedAxis")));
1510 m_EaccUnconvertedGraphs.reset(checked_own_cast<TList*>(
1511 rootFile->Get("SaccRecalibration/UnconvertedBiasSacc")));
1512 m_EaccConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1513 rootFile->Get("SaccRecalibration/ConvertedAxis")));
1514 m_EaccConvertedGraphs.reset(checked_own_cast<TList*>(
1515 rootFile->Get("SaccRecalibration/ConvertedBiasSacc")));
1516 } else // run1
1517 {
1518 m_psElectronEtaBins.reset(checked_own_cast<TAxis*>(
1519 rootFile->Get("PSRecalibration/ElectronAxis")));
1520 m_psElectronGraphs.reset(checked_own_cast<TList*>(
1521 rootFile->Get("PSRecalibration/ElectronBiasPS")));
1522 m_psUnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1523 rootFile->Get("PSRecalibration/UnconvertedAxis")));
1524 m_psUnconvertedGraphs.reset(checked_own_cast<TList*>(
1525 rootFile->Get("PSRecalibration/UnconvertedBiasPS")));
1526 m_psConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1527 rootFile->Get("PSRecalibration/ConvertedAxis")));
1528 m_psConvertedGraphs.reset(checked_own_cast<TList*>(
1529 rootFile->Get("PSRecalibration/ConvertedBiasPS")));
1530
1531 m_s12ElectronEtaBins.reset(checked_own_cast<TAxis*>(
1532 rootFile->Get("S1Recalibration/ElectronAxis")));
1533 m_s12ElectronGraphs.reset(checked_own_cast<TList*>(
1534 rootFile->Get("S1Recalibration/ElectronBiasS1")));
1535 m_s12UnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1536 rootFile->Get("S1Recalibration/UnconvertedAxis")));
1537 m_s12UnconvertedGraphs.reset(checked_own_cast<TList*>(
1538 rootFile->Get("S1Recalibration/UnconvertedBiasS1")));
1539 m_s12ConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1540 rootFile->Get("S1Recalibration/ConvertedAxis")));
1541 m_s12ConvertedGraphs.reset(checked_own_cast<TList*>(
1542 rootFile->Get("S1Recalibration/ConvertedBiasS1")));
1543 }
1544
1545 // further inputs do not depend on year
1546
1547 // ... material distortions
1548 m_matUnconvertedScale.emplace_back(
1549 std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1550 rootFile->Get("Material/unconvertedBiasSubtracted_ConfigA"))));
1551 m_matUnconvertedScale.emplace_back(
1552 std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1553 rootFile->Get("Material/unconvertedBiasSubtracted_ConfigCpDp"))));
1554 m_matUnconvertedScale.emplace_back(
1555 std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1556 rootFile->Get("Material/unconvertedBiasSubtracted_ConfigEpLp"))));
1557 m_matUnconvertedScale.emplace_back(
1558 std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1559 rootFile->Get("Material/unconvertedBiasSubtracted_ConfigFpMX"))));
1560 m_matUnconvertedScale.emplace_back(
1561 std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1562 rootFile->Get("Material/unconvertedBiasSubtracted_ConfigGp"))));
1563
1564 m_matConvertedScale.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1565 rootFile->Get("Material/convertedBiasSubtracted_ConfigA"))));
1566 m_matConvertedScale.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1567 rootFile->Get("Material/convertedBiasSubtracted_ConfigCpDp"))));
1568 m_matConvertedScale.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1569 rootFile->Get("Material/convertedBiasSubtracted_ConfigEpLp"))));
1570 m_matConvertedScale.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1571 rootFile->Get("Material/convertedBiasSubtracted_ConfigFpMX"))));
1572 m_matConvertedScale.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1573 rootFile->Get("Material/convertedBiasSubtracted_ConfigGp"))));
1574
1575 m_matElectronCstTerm.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1576 rootFile->Get("Material/electronCstTerm_ConfigA"))));
1577 m_matElectronCstTerm.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1578 rootFile->Get("Material/electronCstTerm_ConfigCpDp"))));
1579 m_matElectronCstTerm.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1580 rootFile->Get("Material/electronCstTerm_ConfigEpLp"))));
1581 m_matElectronCstTerm.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1582 rootFile->Get("Material/electronCstTerm_ConfigFpMX"))));
1583 m_matElectronCstTerm.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1584 rootFile->Get("Material/electronCstTerm_ConfigGp"))));
1585
1595 // update dX0 plots for distorted geometry for case A, EL, FMX and N
1596 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1597 checked_own_cast<TH1*>(rootFile->Get("Material_rel21/DX0_ConfigA"))));
1598 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1599 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigCpDp"))));
1600 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1601 rootFile->Get("Material_rel21/DX0_ConfigEpLp"))));
1602 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1603 rootFile->Get("Material_rel21/DX0_ConfigFpMX"))));
1604 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1605 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigGp"))));
1606 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1607 checked_own_cast<TH1*>(rootFile->Get("Material_rel21/DX0_ConfigN"))));
1608 } else {
1609 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1610 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigA"))));
1611 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1612 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigCpDp"))));
1613 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1614 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigEpLp"))));
1615 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1616 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigFpMX"))));
1617 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1618 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigGp"))));
1619 }
1620
1622 checked_own_cast<TAxis*>(rootFile->Get("Material/LinearityEtaBins")));
1623 m_matElectronGraphs.emplace_back(
1624 std::unique_ptr<TList>(checked_own_cast<TList*>(
1625 rootFile->Get("Material/Linearity_Cluster_ConfigA"))));
1626 m_matElectronGraphs.emplace_back(
1627 std::unique_ptr<TList>(checked_own_cast<TList*>(
1628 rootFile->Get("Material/Linearity_Cluster_ConfigCpDp"))));
1629 m_matElectronGraphs.emplace_back(
1630 std::unique_ptr<TList>(checked_own_cast<TList*>(
1631 rootFile->Get("Material/Linearity_Cluster_ConfigEpLp"))));
1632 m_matElectronGraphs.emplace_back(
1633 std::unique_ptr<TList>(checked_own_cast<TList*>(
1634 rootFile->Get("Material/Linearity_Cluster_ConfigFpMX"))));
1635 m_matElectronGraphs.emplace_back(
1636 std::unique_ptr<TList>(checked_own_cast<TList*>(
1637 rootFile->Get("Material/Linearity_Cluster_ConfigGp"))));
1638 // ... new material distortions from release 21 parameterizations
1648 m_electronBias_ConfigA.reset(checked_own_cast<TH2*>(
1649 rootFile->Get("Material_rel21/electronBias_ConfigA")));
1650 m_electronBias_ConfigEpLp.reset(checked_own_cast<TH2*>(
1651 rootFile->Get("Material_rel21/electronBias_ConfigEpLp")));
1652 m_electronBias_ConfigFpMX.reset(checked_own_cast<TH2*>(
1653 rootFile->Get("Material_rel21/electronBias_ConfigFpMX")));
1654 m_electronBias_ConfigN.reset(checked_own_cast<TH2*>(
1655 rootFile->Get("Material_rel21/electronBias_ConfigN")));
1656 m_electronBias_ConfigIBL.reset(checked_own_cast<TH2*>(
1657 rootFile->Get("Material_rel21/electronBias_ConfigIBL")));
1658 m_electronBias_ConfigPP0.reset(checked_own_cast<TH2*>(
1659 rootFile->Get("Material_rel21/electronBias_ConfigPP0")));
1660 m_unconvertedBias_ConfigA.reset(checked_own_cast<TH2*>(
1661 rootFile->Get("Material_rel21/unconvertedBias_ConfigA")));
1662 m_unconvertedBias_ConfigEpLp.reset(checked_own_cast<TH2*>(
1663 rootFile->Get("Material_rel21/unconvertedBias_ConfigEpLp")));
1664 m_unconvertedBias_ConfigFpMX.reset(checked_own_cast<TH2*>(
1665 rootFile->Get("Material_rel21/unconvertedBias_ConfigFpMX")));
1666 m_unconvertedBias_ConfigN.reset(checked_own_cast<TH2*>(
1667 rootFile->Get("Material_rel21/unconvertedBias_ConfigN")));
1668 m_unconvertedBias_ConfigIBL.reset(checked_own_cast<TH2*>(
1669 rootFile->Get("Material_rel21/unconvertedBias_ConfigIBL")));
1670 m_unconvertedBias_ConfigPP0.reset(checked_own_cast<TH2*>(
1671 rootFile->Get("Material_rel21/unconvertedBias_ConfigPP0")));
1672 m_convertedBias_ConfigA.reset(checked_own_cast<TH2*>(
1673 rootFile->Get("Material_rel21/convertedBias_ConfigA")));
1674 m_convertedBias_ConfigEpLp.reset(checked_own_cast<TH2*>(
1675 rootFile->Get("Material_rel21/convertedBias_ConfigEpLp")));
1676 m_convertedBias_ConfigFpMX.reset(checked_own_cast<TH2*>(
1677 rootFile->Get("Material_rel21/convertedBias_ConfigFpMX")));
1678 m_convertedBias_ConfigN.reset(checked_own_cast<TH2*>(
1679 rootFile->Get("Material_rel21/convertedBias_ConfigN")));
1680 m_convertedBias_ConfigIBL.reset(checked_own_cast<TH2*>(
1681 rootFile->Get("Material_rel21/convertedBias_ConfigIBL")));
1682 m_convertedBias_ConfigPP0.reset(checked_own_cast<TH2*>(
1683 rootFile->Get("Material_rel21/convertedBias_ConfigPP0")));
1684 }
1685
1686 // ... Fastsim to Fullsim corrections
1687
1694
1695 m_G4OverAFII_electron.reset(checked_own_cast<TH1*>(
1696 rootFile->Get("FastSim/es2015/el_scale_full_fast_peak_gaussian")));
1697 m_G4OverAFII_unconverted.reset(checked_own_cast<TH1*>(rootFile->Get(
1698 "FastSim/es2015/ph_unconv_scale_full_fast_peak_gaussian")));
1699 m_G4OverAFII_converted.reset(checked_own_cast<TH1*>(
1700 rootFile->Get("FastSim/es2015/ph_conv_scale_full_fast_peak_gaussian")));
1701 } else if (m_esmodel == egEnergyCorr::es2017 or
1708 m_G4OverAFII_electron.reset(checked_own_cast<TH1*>(
1709 rootFile->Get("FastSim/es2017/el_scale_full_fast_peak_gaussian")));
1710 m_G4OverAFII_unconverted.reset(checked_own_cast<TH1*>(rootFile->Get(
1711 "FastSim/es2017/ph_unconv_scale_full_fast_peak_gaussian")));
1712 m_G4OverAFII_converted.reset(checked_own_cast<TH1*>(
1713 rootFile->Get("FastSim/es2017/ph_conv_scale_full_fast_peak_gaussian")));
1714 } else if (m_esmodel == egEnergyCorr::es2017_R21_v1 ||
1718 m_G4OverAFII_electron_2D.reset(checked_own_cast<TH2*>(
1719 rootFile->Get("FastSim/es2017_v1/scale_Af2ToG4_elec_rel21")));
1720 m_G4OverAFII_electron_2D->SetDirectory(nullptr);
1721 m_G4OverAFII_unconverted_2D.reset(checked_own_cast<TH2*>(
1722 rootFile->Get("FastSim/es2017_v1/scale_Af2ToG4_unco_rel21")));
1723 m_G4OverAFII_converted_2D.reset(checked_own_cast<TH2*>(
1724 rootFile->Get("FastSim/es2017_v1/scale_Af2ToG4_conv_rel21")));
1725 }
1730 m_G4OverAFII_electron_2D.reset(checked_own_cast<TH2*>(
1731 rootFile->Get("FastSim/es2023_R22_Run2_v1/scale_AF3ToG4_elec_rel22")));
1732 m_G4OverAFII_electron_2D->SetDirectory(nullptr);
1733 m_G4OverAFII_unconverted_2D.reset(checked_own_cast<TH2*>(
1734 rootFile->Get("FastSim/es2023_R22_Run2_v1/scale_AF3ToG4_unco_rel22")));
1735 m_G4OverAFII_converted_2D.reset(checked_own_cast<TH2*>(
1736 rootFile->Get("FastSim/es2023_R22_Run2_v1/scale_AF3ToG4_conv_rel22")));
1737 }
1739 m_G4OverAFII_electron_2D.reset(checked_own_cast<TH2*>(
1740 rootFile->Get("FastSim/es2024_Run3_v0/scale_AF3ToG4_elec_mc23")));
1741 m_G4OverAFII_electron_2D->SetDirectory(nullptr);
1742 m_G4OverAFII_unconverted_2D.reset(checked_own_cast<TH2*>(
1743 rootFile->Get("FastSim/es2024_Run3_v0/scale_AF3ToG4_unco_mc23")));
1744 m_G4OverAFII_converted_2D.reset(checked_own_cast<TH2*>(
1745 rootFile->Get("FastSim/es2024_Run3_v0/scale_AF3ToG4_conv_mc23")));
1746 // extra systematic file for eta between 1.3 and 1.35 due to double Gaussian peak in Ereco/Etrue
1747 m_G4OverAF_electron_scale_extra_sys.reset(checked_own_cast<TH1*>(
1748 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_scale_AF3ToG4_elec_mc23_1p3_1p35")));
1749 m_G4OverAF_converted_scale_extra_sys.reset(checked_own_cast<TH1*>(
1750 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_scale_AF3ToG4_elec_mc23_1p3_1p35")));
1751 m_G4OverAF_unconverted_scale_extra_sys.reset(checked_own_cast<TH1*>(
1752 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_scale_AF3ToG4_unconv_mc23_1p3_1p35")));
1753 }
1754 else { // run 1
1756 checked_own_cast<TH1*>(rootFile->Get("FastSim/hG4OverAF")));
1757 }
1758 m_G4OverFrSh.reset(
1759 checked_own_cast<TH1*>(rootFile->Get("FastSim/hG4OverFS")));
1760 // ... Leakage systematics
1761
1777 m_leakageConverted.reset(
1778 checked_own_cast<TH1*>(rootFile->Get("Leakage/LeakageDiffConverted")));
1779 m_leakageUnconverted.reset(checked_own_cast<TH1*>(
1780 rootFile->Get("Leakage/LeakageDiffUnconverted")));
1784 m_leakageConverted.reset(checked_own_cast<TH1*>(
1785 rootFile->Get("Leakage/es2017_summer/LeakageDiffConverted")));
1786 m_leakageUnconverted.reset(checked_own_cast<TH1*>(
1787 rootFile->Get("Leakage/es2017_summer/LeakageDiffUnconverted")));
1788 } else {
1789 m_leakageConverted.reset(checked_own_cast<TH1*>(
1790 rootFile->Get("Leakage/es2023_R22_Run2_v0/LeakageDiffConverted")));
1791 m_leakageUnconverted.reset(checked_own_cast<TH1*>(
1792 rootFile->Get("Leakage/es2023_R22_Run2_v0/LeakageDiffUnconverted")));
1793 m_leakageElectron.reset(checked_own_cast<TH1*>(
1794 rootFile->Get("Leakage/es2023_R22_Run2_v0/LeakageDiffElectron")));
1795 m_leakageElectron->SetDirectory(nullptr);
1796 }
1797 if (m_leakageConverted.get() && m_leakageUnconverted.get()) {
1798 m_leakageConverted->SetDirectory(nullptr);
1799 m_leakageUnconverted->SetDirectory(nullptr);
1800 } else {
1801 ATH_MSG_INFO("No leakage systematic uncertainty for ES model "
1802 << m_esmodel);
1803 }
1804
1805 // ... Zee S2 profile (needed for gain switch syst).
1806 m_zeeES2Profile.reset(
1807 checked_own_cast<TH1*>(rootFile->Get("ZeeEnergyProfiles/p2MC")));
1808 // mean Zee energy as function of eta
1810 m_meanZeeProfile.reset(checked_own_cast<TProfile*>(
1811 rootFile->Get("ZeeMeanET/es2024_Run3_v0/MC_eta_vs_et_profiled")));
1812 }
1813 // R22 Run 2
1814 else{
1815 m_meanZeeProfile.reset(checked_own_cast<TProfile*>(
1816 rootFile->Get("ZeeMeanET/MC_eta_vs_et_profiled")));
1817 }
1818 // OK, now we are all initialized and everything went fine
1819 m_initialized = true;
1820 return 1;
1821}
#define ATH_MSG_INFO(x)
std::vector< std::unique_ptr< TH1 > > m_matElectronCstTerm
MsgStream & msg() const
The standard message stream.
path
python interpreter configuration --------------------------------------—
Definition athena.py:128
void * ptr(T *p)
Definition SGImplSvc.cxx:74
load(f, use_proxy=1, key=None)

◆ initMessaging()

void AthMessaging::initMessaging ( ) const
privateinherited

Initialize our message level and MessageSvc.

This method should only be called once.

Definition at line 39 of file AthMessaging.cxx.

40{
42 // If user did not set an explicit level, set a default
43 if (m_lvl == MSG::NIL) {
44 m_lvl = m_imsg ?
45 static_cast<MSG::Level>( m_imsg.load()->outputLevel(m_nm) ) :
46 MSG::INFO;
47 }
48}
std::string m_nm
Message source name.
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
std::atomic< MSG::Level > m_lvl
Current logging level.
IMessageSvc * getMessageSvc(bool quiet=false)

◆ isInCrack()

bool AtlasRoot::egammaEnergyCorrectionTool::isInCrack ( double cl_eta)
staticprivate

Definition at line 4729 of file egammaEnergyCorrectionTool.cxx.

4729 {
4730
4731 return std::abs(cl_eta) >= 1.35 && std::abs(cl_eta) <= 1.55;
4732}

◆ mcConstantTerm()

double AtlasRoot::egammaEnergyCorrectionTool::mcConstantTerm ( double cl_eta)
staticprivate

Definition at line 2637 of file egammaEnergyCorrectionTool.cxx.

2637 {
2638
2639 double aeta = std::abs(cl_eta);
2640 double cst = 0.;
2641
2642 if (aeta < 0.6)
2643 cst = 0.005;
2644
2645 else if (aeta < 1.75)
2646 cst = 0.003;
2647
2648 else if (aeta < 2.5)
2649 cst = 0.0055 * (2.69 - aeta);
2650
2651 // cst = 0.005;
2652
2653 return cst;
2654}

◆ mcNoiseTerm()

double AtlasRoot::egammaEnergyCorrectionTool::mcNoiseTerm ( double cl_eta)
staticprivate

Definition at line 2618 of file egammaEnergyCorrectionTool.cxx.

2618 {
2619
2620 double aeta = std::abs(cl_eta);
2621 double noise = 0.;
2622
2623 double noise37[25] = {0.27, 0.27, 0.27, 0.27, 0.27, 0.26, 0.25, 0.23, 0.21,
2624 0.19, 0.17, 0.16, 0.15, 0.14, 0.27, 0.23, 0.17, 0.15,
2625 0.13, 0.10, 0.07, 0.06, 0.05, 0.04, 0.03};
2626
2627 int ieta = (int)(aeta / 0.1);
2628
2629 if (ieta >= 0 && ieta < 25)
2630 noise = noise37[ieta] * cosh(cl_eta); // the above parametrization is vs ET
2631
2632 return noise;
2633}

◆ mcSamplingTerm()

double AtlasRoot::egammaEnergyCorrectionTool::mcSamplingTerm ( double cl_eta)
staticprivate

Definition at line 2582 of file egammaEnergyCorrectionTool.cxx.

2582 {
2583
2584 double aeta = std::abs(cl_eta);
2585 double sampling = 0.;
2586
2587 if (aeta < 0.8)
2588 sampling = 0.091;
2589
2590 else if (aeta < 1.37)
2591 sampling = 0.036 + 0.130 * aeta;
2592
2593 else if (aeta < 1.52)
2594 sampling = 0.27;
2595
2596 else if (aeta < 2.0)
2597 sampling = 0.85 - 0.36 * aeta;
2598
2599 else if (aeta < 2.3)
2600 sampling = 0.16;
2601
2602 else if (aeta < 2.5)
2603 sampling = -1.05 + 0.52 * aeta;
2604
2605 return sampling;
2606}

◆ mcSamplingTermRelError()

double AtlasRoot::egammaEnergyCorrectionTool::mcSamplingTermRelError ( double cl_eta)
staticprivate

Definition at line 2610 of file egammaEnergyCorrectionTool.cxx.

2610 {
2611
2612 (void)cl_eta; // not used
2613 return 0.1; // when will this be improved?
2614}

◆ mcZPeakResolution()

double AtlasRoot::egammaEnergyCorrectionTool::mcZPeakResolution ( double cl_eta) const
private

Definition at line 2680 of file egammaEnergyCorrectionTool.cxx.

2680 {
2681
2682 return m_peakResMC->GetBinContent(
2683 std::as_const(*m_peakResMC).GetXaxis()->FindBin(cl_eta));
2684}

◆ msg() [1/2]

MsgStream & asg::AsgMessaging::msg ( ) const
inherited

The standard message stream.

Returns
A reference to the default message stream of this object.

Definition at line 49 of file AsgMessaging.cxx.

49 {
50#ifndef XAOD_STANDALONE
51 return ::AthMessaging::msg();
52#else // not XAOD_STANDALONE
53 return m_msg;
54#endif // not XAOD_STANDALONE
55 }

◆ msg() [2/2]

MsgStream & asg::AsgMessaging::msg ( const MSG::Level lvl) const
inherited

The standard message stream.

Parameters
lvlThe message level to set the stream to
Returns
A reference to the default message stream, set to level "lvl"

Definition at line 57 of file AsgMessaging.cxx.

57 {
58#ifndef XAOD_STANDALONE
59 return ::AthMessaging::msg( lvl );
60#else // not XAOD_STANDALONE
61 m_msg << lvl;
62 return m_msg;
63#endif // not XAOD_STANDALONE
64 }

◆ msgLvl()

bool asg::AsgMessaging::msgLvl ( const MSG::Level lvl) const
inherited

Test the output level of the object.

Parameters
lvlThe message level to test against
Returns
boolean Indicting if messages at given level will be printed
true If messages at level "lvl" will be printed

Definition at line 41 of file AsgMessaging.cxx.

41 {
42#ifndef XAOD_STANDALONE
43 return ::AthMessaging::msgLvl( lvl );
44#else // not XAOD_STANDALONE
45 return m_msg.msgLevel( lvl );
46#endif // not XAOD_STANDALONE
47 }

◆ nearestEtaBEC()

double AtlasRoot::egammaEnergyCorrectionTool::nearestEtaBEC ( double cl_eta)
staticprivate

Definition at line 4734 of file egammaEnergyCorrectionTool.cxx.

4734 {
4735
4736 double newEta = cl_eta;
4737
4738 if (!isInCrack(newEta))
4739 return newEta;
4740
4741 if (newEta >= 1.35 && newEta <= 1.45)
4742 newEta = 1.349;
4743 if (newEta >= 1.45 && newEta <= 1.55)
4744 newEta = 1.551;
4745
4746 if (newEta >= -1.55 && newEta <= -1.45)
4747 newEta = -1.551;
4748 if (newEta >= -1.45 && newEta <= -1.35)
4749 newEta = -1.349;
4750
4751 return newEta;
4752}

◆ pileUpTerm()

double AtlasRoot::egammaEnergyCorrectionTool::pileUpTerm ( double energy,
double eta,
int particle_type ) const
private

Definition at line 4754 of file egammaEnergyCorrectionTool.cxx.

4755 {
4756
4757 double pileupNoise;
4758
4759 // release 21 for <mu> =32 (combined 2015-2016-2017 dataset), pileup noise =
4760 // f(Et) for superclusters
4771 double avgmu = 32;
4774 avgmu = 34.;
4776 avgmu = 54.;
4777
4778 double et = energy / cosh(eta);
4779 if (et < 5000.)
4780 et = 5000.;
4781 if (et > 50000.)
4782 et = 50000.;
4783 pileupNoise = sqrt(avgmu) * (60. + 40. * log(et / 10000.) / log(5.));
4784 } else {
4785 // approximate pileup noise addition to the total noise in MeV for
4786 // <mu_data> (2012) = 20 converted photons and electrons
4787 pileupNoise = 240.;
4788 // unconverted photons, different values in barrel and end-cap
4789 if (particle_type == 1) {
4790 if (std::abs(eta) < 1.4)
4791 pileupNoise = 200.;
4792 }
4793 }
4794 return pileupNoise;
4795}

◆ resolution()

double AtlasRoot::egammaEnergyCorrectionTool::resolution ( double energy,
double cl_eta,
double cl_etaCalo,
PATCore::ParticleType::Type ptype,
bool withCT,
bool fast,
egEnergyCorr::Resolution::resolutionType resType = egEnergyCorr::Resolution::SigmaEff90 ) const

Definition at line 2866 of file egammaEnergyCorrectionTool.cxx.

2869 {
2870 int eg_resolution_ptype;
2872 eg_resolution_ptype = 0;
2874 eg_resolution_ptype = 1;
2876 eg_resolution_ptype = 2;
2877 else {
2878 ATH_MSG_FATAL("cannot understand particle type");
2879 return -1;
2880 }
2881
2882 double sig2 = 0.;
2883
2885 sig2 = pow(m_resolution_tool->getResolution(eg_resolution_ptype, energy,
2886 cl_eta, resType),
2887 2);
2888 const double et = energy / cosh(cl_eta);
2889 sig2 += pow(pileUpTerm(energy, cl_eta, eg_resolution_ptype) / et,
2890 2); // TODO: why et and not E?
2891 } else { // OLD model
2892
2893 double energyGeV = energy / GeV;
2894 double a = mcSamplingTerm(cl_eta);
2895 double b = mcNoiseTerm(cl_eta);
2896 double c = mcConstantTerm(cl_eta);
2897 sig2 = a * a / energyGeV + b * b / energyGeV / energyGeV + c * c;
2898 }
2899
2900 if (withCT and fast) {
2901 throw std::runtime_error(
2902 "It doesn't make sense to ask resolution fast sim + additional CT."
2903 " The resolution on data is FULL sim resolution + CT");
2904 }
2905
2906 if (fast and std::abs(cl_eta) < 2.5) {
2929
2930 double ratio_IQR_full_fast = 1.;
2931 const double ptGeV = energy / cosh(cl_eta) / 1E3;
2932
2942 //
2943 // for es2017_R21_v1, histograms contain directly values of
2944 // deltaSigma**2 of relative energy resolution (FulSim-FastSIm) so need
2945 // to subtract this value to get the sigma**2 of FastSim
2946 bool interpolate_eta = false;
2947 bool interpolate_pt = false;
2949 // interpolate_eta = true;
2950 interpolate_pt = true;
2951 }
2953 sig2 -= getValueHistAt(*m_G4OverAFII_resolution_electron, cl_eta,
2954 ptGeV, true, true, true, true,
2955 interpolate_eta, interpolate_pt);
2957 sig2 -= getValueHistAt(*m_G4OverAFII_resolution_unconverted, cl_eta,
2958 ptGeV, true, true, true, true,
2959 interpolate_eta, interpolate_pt);
2961 sig2 -= getValueHistAt(*m_G4OverAFII_resolution_converted, cl_eta,
2962 ptGeV, true, true, true, true,
2963 interpolate_eta, interpolate_pt);
2964 if (sig2 < 0.)
2965 sig2 = 0.;
2966 } else {
2967 if (ptype == PATCore::ParticleType::Electron) {
2968 ratio_IQR_full_fast = getValueHistAt(
2969 *m_G4OverAFII_resolution_electron, ptGeV, cl_eta, true, false);
2970 } else if (ptype == PATCore::ParticleType::UnconvertedPhoton) {
2971 ratio_IQR_full_fast = getValueHistAt(
2972 *m_G4OverAFII_resolution_unconverted, ptGeV, cl_eta, true, false);
2973 } else if (ptype == PATCore::ParticleType::ConvertedPhoton) {
2974 ratio_IQR_full_fast = getValueHistAt(
2975 *m_G4OverAFII_resolution_converted, ptGeV, cl_eta, true, false);
2976 }
2977
2978 sig2 /= ratio_IQR_full_fast * ratio_IQR_full_fast;
2979 }
2980 }
2981 }
2982
2983 // add the additional constant term from the Zee data/MC measurement
2984 if (withCT)
2985 sig2 += pow(
2986 dataConstantTerm(m_use_etaCalo_scales ? cl_etaCalo : cl_eta),
2987 2); // TODO: is it correct? Or should be += -c**2 + (c + deltac) ** 2 ?
2988
2989 return sqrt(sig2);
2990}
static Double_t a

◆ resolutionError()

void AtlasRoot::egammaEnergyCorrectionTool::resolutionError ( double energy,
double cl_eta,
double & errUp,
double & errDown ) const
private

Definition at line 2827 of file egammaEnergyCorrectionTool.cxx.

2829 {
2830
2831 double Cdata = dataConstantTerm(cl_eta);
2832 double Cdata_cor = dataConstantTermCorError(cl_eta);
2833 double Cdata_err = dataConstantTermError(cl_eta);
2834
2835 double Cdata_unc = 0.;
2836 if (Cdata_err > Cdata_cor)
2837 Cdata_unc = sqrt(Cdata_err * Cdata_err - Cdata_cor * Cdata_cor);
2838 if (Cdata_unc < 0.001)
2839 Cdata_unc = 0.001; // preserve at least the stat error
2840
2841 double Smc = mcSamplingTerm(cl_eta);
2842 double Smc_err = mcSamplingTermRelError(cl_eta);
2843
2844 double central = fcn_sigma(energy, Cdata, 0., Smc, 0.);
2845
2846 double err1 = fcn_sigma(energy, Cdata, Cdata_unc, Smc, 0.) - central;
2847 double err2 = fcn_sigma(energy, Cdata, -Cdata_unc, Smc, 0.) - central;
2848 double err3 = fcn_sigma(energy, Cdata, -Cdata_cor, Smc, Smc_err) - central;
2849 double err4 = -err3;
2850
2851 errUp = 0;
2852 if (err1 > 0)
2853 errUp = sqrt(errUp * errUp + err1 * err1);
2854 if (err2 > 0)
2855 errUp = sqrt(errUp * errUp + err2 * err2);
2856 if (err3 > 0)
2857 errUp = sqrt(errUp * errUp + err3 * err3);
2858 if (err4 > 0)
2859 errUp = sqrt(errUp * errUp + err4 * err4);
2860
2861 errDown = -errUp;
2862}
static double fcn_sigma(double energy, double Cdata, double Cdata_er, double S, double S_er)

◆ setADCTool()

void AtlasRoot::egammaEnergyCorrectionTool::setADCTool ( std::shared_ptr< LinearityADC > t)
inline

◆ setApplyL2GainCorrection()

void AtlasRoot::egammaEnergyCorrectionTool::setApplyL2GainCorrection ( )
inline

Definition at line 459 of file egammaEnergyCorrectionTool.h.

459{ m_useL2GainCorrection = true; }

◆ setApplyL2GainInterpolation()

void AtlasRoot::egammaEnergyCorrectionTool::setApplyL2GainInterpolation ( )
inline

Definition at line 460 of file egammaEnergyCorrectionTool.h.

460{ m_useL2GainInterpolation = true; }

◆ setApplyLeakageCorrection()

void AtlasRoot::egammaEnergyCorrectionTool::setApplyLeakageCorrection ( bool interpt = false)
inline

Definition at line 463 of file egammaEnergyCorrectionTool.h.

463 {
466 }

◆ setESModel()

void AtlasRoot::egammaEnergyCorrectionTool::setESModel ( egEnergyCorr::ESModel val)
inline

◆ setFileName()

void AtlasRoot::egammaEnergyCorrectionTool::setFileName ( const std::string & val)
inline

Definition at line 397 of file egammaEnergyCorrectionTool.h.

397{ m_rootFileName = val; }

◆ setLevel()

void AthMessaging::setLevel ( MSG::Level lvl)
inherited

Change the current logging level.

Use this rather than msg().setLevel() for proper operation with MT.

Definition at line 28 of file AthMessaging.cxx.

29{
30 m_lvl = lvl;
31}

◆ setRunNumber()

void AtlasRoot::egammaEnergyCorrectionTool::setRunNumber ( long int runn = 0)
inline

Definition at line 400 of file egammaEnergyCorrectionTool.h.

400{ m_RunNumber = runn; }

◆ use_temp_correction201215()

void AtlasRoot::egammaEnergyCorrectionTool::use_temp_correction201215 ( bool flag)
inline

Definition at line 404 of file egammaEnergyCorrectionTool.h.

404 {
406 }
bool flag
Definition master.py:29

◆ use_temp_correction201516()

void AtlasRoot::egammaEnergyCorrectionTool::use_temp_correction201516 ( bool flag)
inline

Definition at line 407 of file egammaEnergyCorrectionTool.h.

407 {
409 }

◆ use_uA2MeV_2015_first2weeks_correction()

void AtlasRoot::egammaEnergyCorrectionTool::use_uA2MeV_2015_first2weeks_correction ( bool flag)
inline

Definition at line 410 of file egammaEnergyCorrectionTool.h.

◆ useStatErrorScaling()

void AtlasRoot::egammaEnergyCorrectionTool::useStatErrorScaling ( bool flag)
inline

Definition at line 402 of file egammaEnergyCorrectionTool.h.

◆ variationName() [1/2]

string AtlasRoot::egammaEnergyCorrectionTool::variationName ( egEnergyCorr::Resolution::Variation & var)
static

Definition at line 5333 of file egammaEnergyCorrectionTool.cxx.

5334 {
5335 switch (var) {
5337 return "Resolution::None";
5339 return "Resolution::Nominal";
5341 return "Resolution::AllDown";
5343 return "Resolution::AllUp";
5345 return "Resolution::ZSmearingUp";
5347 return "Resolution::ZSmearingDown";
5349 return "Resolution::SamplingTermUp";
5351 return "Resolution::SamplingTermDown";
5353 return "Resolution::MaterialUp";
5355 return "Resolution::MaterialDown";
5357 return "Resolution::MaterialUp";
5359 return "Resolution::MaterialDown";
5361 return "Resolution::MaterialUp";
5363 return "Resolution::MaterialDown";
5365 return "Resolution::MaterialUp";
5367 return "Resolution::MaterialDown";
5369 return "Resolution::PileUpUp";
5371 return "Resolution::PileUpDown";
5373 return "Resolution::MaterialPP0Up";
5375 return "Resolution::MaterialPP0Down";
5377 return "Resolution::MaterialIBLUp";
5379 return "Resolution::MaterialIBLDown";
5381 return "Resolution::afUp";
5383 return "Resolution::afDown";
5385 return "Resolution::OFCUp";
5387 return "Resolution::OFCDown";
5389 return "LastResolutionVariation";
5390 default:
5391 return "Resolution::Unknown";
5392 }
5393}

◆ variationName() [2/2]

string AtlasRoot::egammaEnergyCorrectionTool::variationName ( egEnergyCorr::Scale::Variation & var)
static

Definition at line 5135 of file egammaEnergyCorrectionTool.cxx.

5136 {
5137 switch (var) {
5139 return "None";
5141 return "Nominal";
5143 return "topoClusterThresUp";
5145 return "topoClusterThresDown";
5147 return "MomentumUp";
5149 return "MomentumDown";
5151 return "ZeeStatUp";
5153 return "ZeeStatDown";
5155 return "ZeeSystUp";
5157 return "ZeeSystDown";
5159 return "ZeePhysUp";
5161 return "ZeePhysDown";
5163 return "ZeeAllUp";
5165 return "ZeeAllDown";
5167 return "LArCalibUp";
5169 return "LArCalibDown";
5171 return "LArUnconvCalibUp";
5173 return "LArUnconvCalibDown";
5175 return "LArElecCalibUp";
5177 return "LArElecCalibDown";
5179 return "LArCalibExtra2015PreUp";
5181 return "LArCalibExtra2015PreDown";
5183 return "LArElecUnconvUp";
5185 return "LArElecUnconvDown";
5187 return "G4Up";
5189 return "G4Down";
5191 return "PSUp";
5193 return "PSDown";
5195 return "PSb12Up";
5197 return "PSb12Down";
5199 return "S12Up";
5201 return "S12Down";
5203 return "S12ExtraLastEtaBinRun2Up";
5205 return "S12ExtraLastEtaBinRun2Down";
5207 return "MatIDUp";
5209 return "MatIDDown";
5211 return "MatCryoUp";
5213 return "MatCryoDown";
5215 return "MatCaloUp";
5217 return "MatCaloDown";
5219 return "L1GainUp";
5221 return "L1GainDown";
5223 return "L2GainUp";
5225 return "L2GainDown";
5227 return "L2LowGainDown";
5229 return "L2LowGainUp";
5231 return "L2MediumGainDown";
5233 return "L2MediumGainUp";
5235 return "ADCLinUp";
5237 return "ADCLinDown";
5239 return "LeakageElecUp";
5241 return "LeakageElecDown";
5243 return "ConvRecoUp";
5245 return "ConvRecoDown";
5247 return "afUp";
5249 return "afDown";
5251 return "LeakageUnconvUp";
5253 return "LeakageUnconvDown";
5255 return "LeakageConvUp";
5257 return "LeakageConvDown";
5259 return "ConvEfficiencyUp";
5261 return "ConvEfficiencyDown";
5263 return "ConvFakeRateUp";
5265 return "ConvFakeRateDown";
5267 return "ConvRadiusUp";
5269 return "ConvRadiusDown";
5271 return "PedestalUp";
5273 return "PedestalDown";
5275 return "AllUp";
5277 return "AllDown";
5279 return "AllCorrelatedUp";
5281 return "AllCorrelatedDown";
5283 return "LArTemperature2015PreUp";
5285 return "LArTemperature2015PreDown";
5287 return "LArTemperature2016PreUp";
5289 return "LArTemperature2016PreDown";
5291 return "E4ScintillatorUp";
5293 return "E4ScintillatorDown";
5295 return "MatPP0Up";
5297 return "MatPP0Down";
5299 return "Wtots1Up";
5301 return "Wtots1Down";
5303 return "LastScaleVariation";
5305 return "OFCUp";
5307 return "OFCDown";
5309 return "EXTRARUN3PREUp";
5311 return "EXTRARUN3PREDown";
5313 return "PSEXTRARUN3Up";
5315 return "PSEXTRARUN3Down";
5317 return "S12EXTRARUN3Up";
5319 return "S12EXTRARUN3Down";
5321 return "L2MediumGainEXTRARUN3Up";
5323 return "L2MediumGainEXTRARUN3Down";
5325 return "L2LowGainEXTRARUN3Up";
5327 return "L2LowGainEXTRARUN3Down";
5328 default:
5329 return "Unknown";
5330 }
5331}

Member Data Documentation

◆ ATLAS_THREAD_SAFE

std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
mutableprivateinherited

Messaging initialized (initMessaging)

Definition at line 141 of file AthMessaging.h.

◆ m_ADCLinearity_tool

std::shared_ptr<LinearityADC> AtlasRoot::egammaEnergyCorrectionTool::m_ADCLinearity_tool
private

Definition at line 479 of file egammaEnergyCorrectionTool.h.

◆ m_applyPSCorrection

bool AtlasRoot::egammaEnergyCorrectionTool::m_applyPSCorrection
private

Definition at line 826 of file egammaEnergyCorrectionTool.h.

◆ m_applyS12Correction

bool AtlasRoot::egammaEnergyCorrectionTool::m_applyS12Correction
private

Definition at line 827 of file egammaEnergyCorrectionTool.h.

◆ m_aPSNom

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_aPSNom
private

Definition at line 651 of file egammaEnergyCorrectionTool.h.

◆ m_aS12Nom

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_aS12Nom
private

Definition at line 654 of file egammaEnergyCorrectionTool.h.

◆ m_begRunNumber

unsigned int AtlasRoot::egammaEnergyCorrectionTool::m_begRunNumber
private

Definition at line 645 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigA

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_convertedBias_ConfigA
private

Definition at line 788 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigEpLp

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_convertedBias_ConfigEpLp
private

Definition at line 789 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigFpMX

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_convertedBias_ConfigFpMX
private

Definition at line 790 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigIBL

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_convertedBias_ConfigIBL
private

Definition at line 792 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigN

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_convertedBias_ConfigN
private

Definition at line 791 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigPP0

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_convertedBias_ConfigPP0
private

Definition at line 793 of file egammaEnergyCorrectionTool.h.

◆ m_convFakeRate

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_convFakeRate
private

Definition at line 731 of file egammaEnergyCorrectionTool.h.

◆ m_convFakeRate_2D

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_convFakeRate_2D
private

Definition at line 733 of file egammaEnergyCorrectionTool.h.

◆ m_convRadius

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_convRadius
private

Definition at line 730 of file egammaEnergyCorrectionTool.h.

◆ m_convRecoEfficiency

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_convRecoEfficiency
private

Definition at line 732 of file egammaEnergyCorrectionTool.h.

◆ m_convRecoEfficiency_2D

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_convRecoEfficiency_2D
private

Definition at line 734 of file egammaEnergyCorrectionTool.h.

◆ m_daPSb12

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_daPSb12
private

Definition at line 653 of file egammaEnergyCorrectionTool.h.

◆ m_daPSCor

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_daPSCor
private

Definition at line 652 of file egammaEnergyCorrectionTool.h.

◆ m_daS12Cor

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_daS12Cor
private

Definition at line 655 of file egammaEnergyCorrectionTool.h.

◆ m_dX_ID_Nom

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_dX_ID_Nom
private

Definition at line 681 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPAcc_G4

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_dX_IPAcc_G4
private

Definition at line 687 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPAcc_GL1

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_dX_IPAcc_GL1
private

Definition at line 689 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPAcc_LAr

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_dX_IPAcc_LAr
private

Definition at line 688 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPAcc_Nom

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_dX_IPAcc_Nom
private

Definition at line 686 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPPS_LAr

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_dX_IPPS_LAr
private

Definition at line 684 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPPS_Nom

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_dX_IPPS_Nom
private

Definition at line 683 of file egammaEnergyCorrectionTool.h.

◆ m_dX_PSAcc_G4

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_dX_PSAcc_G4
private

Definition at line 692 of file egammaEnergyCorrectionTool.h.

◆ m_dX_PSAcc_LAr

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_dX_PSAcc_LAr
private

Definition at line 693 of file egammaEnergyCorrectionTool.h.

◆ m_dX_PSAcc_Nom

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_dX_PSAcc_Nom
private

Definition at line 691 of file egammaEnergyCorrectionTool.h.

◆ m_e1hg_tool

std::unique_ptr<e1hg_systematics> AtlasRoot::egammaEnergyCorrectionTool::m_e1hg_tool
private

Definition at line 482 of file egammaEnergyCorrectionTool.h.

◆ m_E4ConvertedEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_E4ConvertedEtaBins
private

Definition at line 706 of file egammaEnergyCorrectionTool.h.

◆ m_E4ConvertedGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_E4ConvertedGraphs
private

Definition at line 707 of file egammaEnergyCorrectionTool.h.

◆ m_E4ElectronEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_E4ElectronEtaBins
private

Definition at line 702 of file egammaEnergyCorrectionTool.h.

◆ m_E4ElectronGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_E4ElectronGraphs
private

Definition at line 703 of file egammaEnergyCorrectionTool.h.

◆ m_E4UnconvertedEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_E4UnconvertedEtaBins
private

Definition at line 704 of file egammaEnergyCorrectionTool.h.

◆ m_E4UnconvertedGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_E4UnconvertedGraphs
private

Definition at line 705 of file egammaEnergyCorrectionTool.h.

◆ m_EaccConvertedEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_EaccConvertedEtaBins
private

Definition at line 720 of file egammaEnergyCorrectionTool.h.

◆ m_EaccConvertedGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_EaccConvertedGraphs
private

Definition at line 721 of file egammaEnergyCorrectionTool.h.

◆ m_EaccElectronEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_EaccElectronEtaBins
private

Definition at line 716 of file egammaEnergyCorrectionTool.h.

◆ m_EaccElectronGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_EaccElectronGraphs
private

Definition at line 717 of file egammaEnergyCorrectionTool.h.

◆ m_EaccUnconvertedEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_EaccUnconvertedEtaBins
private

Definition at line 718 of file egammaEnergyCorrectionTool.h.

◆ m_EaccUnconvertedGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_EaccUnconvertedGraphs
private

Definition at line 719 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigA

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_electronBias_ConfigA
private

Definition at line 776 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigEpLp

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_electronBias_ConfigEpLp
private

Definition at line 777 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigFpMX

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_electronBias_ConfigFpMX
private

Definition at line 778 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigIBL

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_electronBias_ConfigIBL
private

Definition at line 780 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigN

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_electronBias_ConfigN
private

Definition at line 779 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigPP0

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_electronBias_ConfigPP0
private

Definition at line 781 of file egammaEnergyCorrectionTool.h.

◆ m_endRunNumber

unsigned int AtlasRoot::egammaEnergyCorrectionTool::m_endRunNumber
private

Definition at line 646 of file egammaEnergyCorrectionTool.h.

◆ m_esmodel

egEnergyCorr::ESModel AtlasRoot::egammaEnergyCorrectionTool::m_esmodel
private

Definition at line 819 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAF_converted_resolution_extra_sys

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAF_converted_resolution_extra_sys
private

Definition at line 814 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAF_converted_scale_extra_sys

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAF_converted_scale_extra_sys
private

Definition at line 811 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAF_electron_resolution_extra_sys

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAF_electron_resolution_extra_sys
private

Definition at line 813 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAF_electron_scale_extra_sys

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAF_electron_scale_extra_sys
private

Definition at line 810 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAF_unconverted_resolution_extra_sys

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAF_unconverted_resolution_extra_sys
private

Definition at line 815 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAF_unconverted_scale_extra_sys

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAF_unconverted_scale_extra_sys
private

Definition at line 812 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_converted

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAFII_converted
private

Definition at line 798 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_converted_2D

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAFII_converted_2D
private

Definition at line 801 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_electron

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAFII_electron
private

Definition at line 797 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_electron_2D

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAFII_electron_2D
private

Definition at line 800 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_resolution_converted

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAFII_resolution_converted
private

Definition at line 807 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_resolution_electron

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAFII_resolution_electron
private

Definition at line 805 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_resolution_unconverted

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAFII_resolution_unconverted
private

Definition at line 806 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_unconverted

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAFII_unconverted
private

Definition at line 799 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_unconverted_2D

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverAFII_unconverted_2D
private

Definition at line 802 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverFrSh

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_G4OverFrSh
private

Definition at line 803 of file egammaEnergyCorrectionTool.h.

◆ m_gain_tool

std::unique_ptr<egGain::GainTool> AtlasRoot::egammaEnergyCorrectionTool::m_gain_tool
private

Definition at line 474 of file egammaEnergyCorrectionTool.h.

◆ m_gain_tool_run2

std::unique_ptr<egGain::GainUncertainty> AtlasRoot::egammaEnergyCorrectionTool::m_gain_tool_run2
private

Definition at line 476 of file egammaEnergyCorrectionTool.h.

◆ m_gain_tool_run3_extra

std::unique_ptr<egGain::GainUncertainty> AtlasRoot::egammaEnergyCorrectionTool::m_gain_tool_run3_extra
private

Definition at line 478 of file egammaEnergyCorrectionTool.h.

◆ m_getMaterialDelta

std::unique_ptr<get_MaterialResolutionEffect> AtlasRoot::egammaEnergyCorrectionTool::m_getMaterialDelta
private

Definition at line 481 of file egammaEnergyCorrectionTool.h.

◆ m_imsg

std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr }
mutableprivateinherited

MessageSvc pointer.

Definition at line 135 of file AthMessaging.h.

135{ nullptr };

◆ m_initialized

bool AtlasRoot::egammaEnergyCorrectionTool::m_initialized
private

Definition at line 829 of file egammaEnergyCorrectionTool.h.

◆ m_leakageConverted

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_leakageConverted
private

Definition at line 736 of file egammaEnergyCorrectionTool.h.

◆ m_leakageElectron

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_leakageElectron
private

Definition at line 738 of file egammaEnergyCorrectionTool.h.

◆ m_leakageUnconverted

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_leakageUnconverted
private

Definition at line 737 of file egammaEnergyCorrectionTool.h.

◆ m_lvl

std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL }
mutableprivateinherited

Current logging level.

Definition at line 138 of file AthMessaging.h.

138{ MSG::NIL };

◆ m_matConvertedScale

std::vector<std::unique_ptr<TH1> > AtlasRoot::egammaEnergyCorrectionTool::m_matConvertedScale
private

Definition at line 765 of file egammaEnergyCorrectionTool.h.

◆ m_matElectronCstTerm

std::vector<std::unique_ptr<TH1> > AtlasRoot::egammaEnergyCorrectionTool::m_matElectronCstTerm
private

Definition at line 766 of file egammaEnergyCorrectionTool.h.

◆ m_matElectronEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_matElectronEtaBins
private

Definition at line 771 of file egammaEnergyCorrectionTool.h.

◆ m_matElectronGraphs

std::vector<std::unique_ptr<TList> > AtlasRoot::egammaEnergyCorrectionTool::m_matElectronGraphs
private

Definition at line 772 of file egammaEnergyCorrectionTool.h.

◆ m_matElectronScale

std::vector<std::unique_ptr<TH1> > AtlasRoot::egammaEnergyCorrectionTool::m_matElectronScale
private

Definition at line 763 of file egammaEnergyCorrectionTool.h.

◆ m_matUnconvertedScale

std::vector<std::unique_ptr<TH1> > AtlasRoot::egammaEnergyCorrectionTool::m_matUnconvertedScale
private

Definition at line 764 of file egammaEnergyCorrectionTool.h.

◆ m_matX0Additions

std::vector<std::unique_ptr<TH1> > AtlasRoot::egammaEnergyCorrectionTool::m_matX0Additions
private

Definition at line 767 of file egammaEnergyCorrectionTool.h.

◆ m_meanZeeProfile

std::unique_ptr<TProfile> AtlasRoot::egammaEnergyCorrectionTool::m_meanZeeProfile
private

Definition at line 673 of file egammaEnergyCorrectionTool.h.

◆ m_msg_tls

boost::thread_specific_ptr<MsgStream> AthMessaging::m_msg_tls
mutableprivateinherited

MsgStream instance (a std::cout like with print-out levels)

Definition at line 132 of file AthMessaging.h.

◆ m_nm

std::string AthMessaging::m_nm
privateinherited

Message source name.

Definition at line 129 of file AthMessaging.h.

◆ m_peakResData

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_peakResData
private

Definition at line 678 of file egammaEnergyCorrectionTool.h.

◆ m_peakResMC

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_peakResMC
private

Definition at line 679 of file egammaEnergyCorrectionTool.h.

◆ m_pedestalL0

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_pedestalL0
private

Definition at line 723 of file egammaEnergyCorrectionTool.h.

◆ m_pedestalL1

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_pedestalL1
private

Definition at line 724 of file egammaEnergyCorrectionTool.h.

◆ m_pedestalL2

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_pedestalL2
private

Definition at line 725 of file egammaEnergyCorrectionTool.h.

◆ m_pedestalL3

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_pedestalL3
private

Definition at line 726 of file egammaEnergyCorrectionTool.h.

◆ m_pedestals_es2017

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_pedestals_es2017
private

Definition at line 728 of file egammaEnergyCorrectionTool.h.

◆ m_pp0_conv

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_pp0_conv
private

Definition at line 744 of file egammaEnergyCorrectionTool.h.

◆ m_pp0_elec

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_pp0_elec
private

Definition at line 742 of file egammaEnergyCorrectionTool.h.

◆ m_pp0_unconv

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_pp0_unconv
private

Definition at line 743 of file egammaEnergyCorrectionTool.h.

◆ m_psConvertedEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_psConvertedEtaBins
private

Definition at line 699 of file egammaEnergyCorrectionTool.h.

◆ m_psConvertedGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_psConvertedGraphs
private

Definition at line 700 of file egammaEnergyCorrectionTool.h.

◆ m_psElectronEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_psElectronEtaBins
private

Definition at line 695 of file egammaEnergyCorrectionTool.h.

◆ m_psElectronGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_psElectronGraphs
private

Definition at line 696 of file egammaEnergyCorrectionTool.h.

◆ m_psUnconvertedEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_psUnconvertedEtaBins
private

Definition at line 697 of file egammaEnergyCorrectionTool.h.

◆ m_psUnconvertedGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_psUnconvertedGraphs
private

Definition at line 698 of file egammaEnergyCorrectionTool.h.

◆ m_resNom

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_resNom
private

Definition at line 675 of file egammaEnergyCorrectionTool.h.

◆ m_resolution_tool

std::unique_ptr<eg_resolution> AtlasRoot::egammaEnergyCorrectionTool::m_resolution_tool
private

Definition at line 480 of file egammaEnergyCorrectionTool.h.

◆ m_resSyst

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_resSyst
private

Definition at line 676 of file egammaEnergyCorrectionTool.h.

◆ m_resSystOFC

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_resSystOFC
private

Definition at line 677 of file egammaEnergyCorrectionTool.h.

◆ m_rootFileName

std::string AtlasRoot::egammaEnergyCorrectionTool::m_rootFileName
private

Definition at line 643 of file egammaEnergyCorrectionTool.h.

◆ m_RunNumber

unsigned int AtlasRoot::egammaEnergyCorrectionTool::m_RunNumber
private

Definition at line 647 of file egammaEnergyCorrectionTool.h.

◆ m_s12ConvertedEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_s12ConvertedEtaBins
private

Definition at line 713 of file egammaEnergyCorrectionTool.h.

◆ m_s12ConvertedGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_s12ConvertedGraphs
private

Definition at line 714 of file egammaEnergyCorrectionTool.h.

◆ m_s12ElectronEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_s12ElectronEtaBins
private

Definition at line 709 of file egammaEnergyCorrectionTool.h.

◆ m_s12ElectronGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_s12ElectronGraphs
private

Definition at line 710 of file egammaEnergyCorrectionTool.h.

◆ m_s12UnconvertedEtaBins

std::unique_ptr<TAxis> AtlasRoot::egammaEnergyCorrectionTool::m_s12UnconvertedEtaBins
private

Definition at line 711 of file egammaEnergyCorrectionTool.h.

◆ m_s12UnconvertedGraphs

std::unique_ptr<TList> AtlasRoot::egammaEnergyCorrectionTool::m_s12UnconvertedGraphs
private

Definition at line 712 of file egammaEnergyCorrectionTool.h.

◆ m_trkSyst

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_trkSyst
private

Definition at line 649 of file egammaEnergyCorrectionTool.h.

◆ m_uA2MeV_2015_first2weeks_correction

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_uA2MeV_2015_first2weeks_correction
private

Definition at line 672 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigA

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_unconvertedBias_ConfigA
private

Definition at line 782 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigEpLp

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_unconvertedBias_ConfigEpLp
private

Definition at line 783 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigFpMX

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_unconvertedBias_ConfigFpMX
private

Definition at line 784 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigIBL

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_unconvertedBias_ConfigIBL
private

Definition at line 786 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigN

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_unconvertedBias_ConfigN
private

Definition at line 785 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigPP0

std::unique_ptr<TH2> AtlasRoot::egammaEnergyCorrectionTool::m_unconvertedBias_ConfigPP0
private

Definition at line 787 of file egammaEnergyCorrectionTool.h.

◆ m_use_etaCalo_scales

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_etaCalo_scales
private

Definition at line 823 of file egammaEnergyCorrectionTool.h.

◆ m_use_new_resolution_model

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_new_resolution_model
private

Definition at line 830 of file egammaEnergyCorrectionTool.h.

◆ m_use_stat_error_scaling

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_stat_error_scaling
private

Definition at line 831 of file egammaEnergyCorrectionTool.h.

◆ m_use_temp_correction201215

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_temp_correction201215
private

Definition at line 838 of file egammaEnergyCorrectionTool.h.

◆ m_use_temp_correction201516

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_temp_correction201516
private

Definition at line 839 of file egammaEnergyCorrectionTool.h.

◆ m_use_uA2MeV_2015_first2weeks_correction

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_uA2MeV_2015_first2weeks_correction
private

Definition at line 840 of file egammaEnergyCorrectionTool.h.

◆ m_useL2GainCorrection

bool AtlasRoot::egammaEnergyCorrectionTool::m_useL2GainCorrection
private

Definition at line 833 of file egammaEnergyCorrectionTool.h.

◆ m_useL2GainInterpolation

bool AtlasRoot::egammaEnergyCorrectionTool::m_useL2GainInterpolation
private

Definition at line 834 of file egammaEnergyCorrectionTool.h.

◆ m_useLeakageCorrection

bool AtlasRoot::egammaEnergyCorrectionTool::m_useLeakageCorrection
private

Definition at line 835 of file egammaEnergyCorrectionTool.h.

◆ m_usepTInterpolationForLeakage

bool AtlasRoot::egammaEnergyCorrectionTool::m_usepTInterpolationForLeakage
private

Definition at line 836 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_data_p0_converted_photons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_data_p0_converted_photons
private

Definition at line 752 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_data_p0_electrons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_data_p0_electrons
private

Definition at line 748 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_data_p0_unconverted_photons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_data_p0_unconverted_photons
private

Definition at line 750 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_data_p1_converted_photons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_data_p1_converted_photons
private

Definition at line 753 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_data_p1_electrons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_data_p1_electrons
private

Definition at line 749 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_data_p1_unconverted_photons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_data_p1_unconverted_photons
private

Definition at line 751 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_MC_p0_converted_photons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_MC_p0_converted_photons
private

Definition at line 758 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_MC_p0_electrons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_MC_p0_electrons
private

Definition at line 754 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_MC_p0_unconverted_photons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_MC_p0_unconverted_photons
private

Definition at line 756 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_MC_p1_converted_photons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_MC_p1_converted_photons
private

Definition at line 759 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_MC_p1_electrons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_MC_p1_electrons
private

Definition at line 755 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_pT_MC_p1_unconverted_photons

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_pT_MC_p1_unconverted_photons
private

Definition at line 757 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_slope_A_data

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_slope_A_data
private

Definition at line 746 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_slope_B_MC

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_wstot_slope_B_MC
private

Definition at line 747 of file egammaEnergyCorrectionTool.h.

◆ m_zeeES2Profile

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeES2Profile
private

Definition at line 740 of file egammaEnergyCorrectionTool.h.

◆ m_zeeFwdb

std::unique_ptr<const TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeFwdb
private

Definition at line 667 of file egammaEnergyCorrectionTool.h.

◆ m_zeeFwdk

std::unique_ptr<const TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeFwdk
private

Definition at line 666 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeNom
private

Definition at line 657 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2015

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeNom_data2015
private

Definition at line 658 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2016

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeNom_data2016
private

Definition at line 659 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2017

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeNom_data2017
private

Definition at line 660 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2018

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeNom_data2018
private

Definition at line 661 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2022

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeNom_data2022
private

Definition at line 662 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2023

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeNom_data2023
private

Definition at line 663 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2024

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeNom_data2024
private

Definition at line 664 of file egammaEnergyCorrectionTool.h.

◆ m_zeePhys

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeePhys
private

Definition at line 671 of file egammaEnergyCorrectionTool.h.

◆ m_zeeSyst

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeSyst
private

Definition at line 669 of file egammaEnergyCorrectionTool.h.

◆ m_zeeSystOFC

std::unique_ptr<TH1> AtlasRoot::egammaEnergyCorrectionTool::m_zeeSystOFC
private

Definition at line 670 of file egammaEnergyCorrectionTool.h.


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