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 377 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 3117 of file egammaEnergyCorrectionTool.cxx.

◆ applyFStoG4()

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

Definition at line 3173 of file egammaEnergyCorrectionTool.cxx.

◆ applyMCCalibration()

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

Definition at line 3082 of file egammaEnergyCorrectionTool.cxx.

◆ dataConstantTerm()

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

Definition at line 2659 of file egammaEnergyCorrectionTool.cxx.

◆ dataConstantTermCorError()

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

Definition at line 2689 of file egammaEnergyCorrectionTool.cxx.

◆ dataConstantTermError()

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

Definition at line 2663 of file egammaEnergyCorrectionTool.cxx.

◆ dataConstantTermOFCError()

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

Definition at line 2667 of file egammaEnergyCorrectionTool.cxx.

◆ dataZPeakResolution()

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

Definition at line 2673 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 2995 of file egammaEnergyCorrectionTool.cxx.

◆ get_OFCSyst()

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

Definition at line 5403 of file egammaEnergyCorrectionTool.cxx.

◆ get_ZeeStat_eta_axis()

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

Definition at line 5410 of file egammaEnergyCorrectionTool.cxx.

◆ get_ZeeSyst()

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

Definition at line 5396 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 4532 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 4374 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 4409 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 4042 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 4645 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 4490 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 2481 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 1987 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 3185 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 1851 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 1826 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 3937 of file egammaEnergyCorrectionTool.cxx.

◆ getE4NonLinearity()

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

Definition at line 3787 of file egammaEnergyCorrectionTool.cxx.

◆ getE4Uncertainty()

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

Definition at line 3512 of file egammaEnergyCorrectionTool.cxx.

◆ getInterpolateConvSyst2D()

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

Definition at line 4605 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 3824 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 4697 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 3627 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 4134 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 4229 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 4798 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 2718 of file egammaEnergyCorrectionTool.cxx.

◆ getSmearingCorrection()

smearing corrections

Definition at line 3011 of file egammaEnergyCorrectionTool.cxx.

◆ getWtots1Uncertainty()

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

Definition at line 3549 of file egammaEnergyCorrectionTool.cxx.

◆ getZeeMeanET()

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

Definition at line 2565 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
772 m_esmodel == egEnergyCorr::es2025_Run3_GNN_v0) { // add release 21
773 // here for now
785 m_resolution_tool = std::make_unique<eg_resolution>("run2_R21_v1");
786 } else {
787 m_resolution_tool = std::make_unique<eg_resolution>("run2_pre");
788 }
789
797 load(m_aPSNom, "Scales/es2017_summer_final/alphaPS_uncor");
798 load(m_daPSb12, "Scales/es2017_summer_final/dalphaPS_b12");
799 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
800 load(m_aS12Nom, "Scales/es2017_summer_final/alphaS12_uncor");
801 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
803 load(m_aPSNom, "Scales/es2017_summer_final/alphaPS_uncor");
804 load(m_daPSb12, "Scales/es2017_summer_final/dalphaPS_b12");
805 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
806 load(m_aS12Nom, "Scales/es2018_R21_v1/alphaS12_uncor");
807 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
809 load(m_aPSNom, "Scales/es2023_R22_Run2_v0/alphaPS_uncor");
810 load(m_aS12Nom, "Scales/es2023_R22_Run2_v0/alphaS12_uncor");
813 // es2024_Run3_v0 has different central value but same systematic
814 load(m_aPSNom, "Scales/es2023_R22_Run2_v0/alphaPS_uncor");
815 load(m_aS12Nom, "Scales/es2023_R22_Run2_v1/hE1E2_emu_run2_rel21_v0_fix");
816 } else {
817 load(m_aPSNom, "Scales/es2012c/alphaPS_uncor");
818 load(m_daPSCor, "Scales/es2012c/dalphaPS_cor");
819 load(m_aS12Nom, "Scales/es2012c/alphaS12_uncor");
820 load(m_daS12Cor, "Scales/es2012c/dalphaS12_cor");
821 }
822 load(m_trkSyst, "Scales/es2012c/momentum_errSyst");
823
825 load(m_zeeNom, "Scales/es2017/alphaZee_errStat_period_2016");
826 load(m_zeeNom_data2015, "Scales/es2017/alphaZee_errStat_period_2015");
829 load(m_zeeNom, "Scales/es2017_summer/alphaZee_errStat_period_2016");
830 load(m_zeeNom_data2015, "Scales/es2017_summer/alphaZee_errStat_period_2015");
832 load(m_zeeNom, "Scales/es2017_summer_final/alphaZee_errStat_period_2016");
833 load(m_zeeNom_data2015, "Scales/es2017_summer_final/alphaZee_errStat_period_2015");
834 } else if (m_esmodel == egEnergyCorr::es2015_5TeV) {
835 load(m_zeeNom, "Scales/es2015_5TeV/alphaZee_errStat_period_2015");
836 // Same histogram added twice for simplicity
837 load(m_zeeNom_data2015, "Scales/es2015_5TeV/alphaZee_errStat_period_2015");
839 load(m_zeeNom, "Scales/es2017_R21_v0/alphaZee_errStat_period_2017");
840 load(m_zeeNom_data2016, "Scales/es2017_R21_v0/alphaZee_errStat_period_2016");
841 load(m_zeeNom_data2015, "Scales/es2017_R21_v0/alphaZee_errStat_period_2015");
843 load(m_zeeNom, "Scales/es2017_R21_v1/alphaZee_errStat_period_2017");
844 load(m_zeeNom_data2016, "Scales/es2017_R21_v1/alphaZee_errStat_period_2016");
845 load(m_zeeNom_data2015, "Scales/es2017_R21_v1/alphaZee_errStat_period_2015");
846 m_zeeFwdk.reset(checked_own_cast<TH1*>(
847 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalk")));
848 m_zeeFwdb.reset(checked_own_cast<TH1*>(
849 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalb")));
851 load(m_zeeNom, "Scales/es2017_R21_ofc0_v1/alphaZee_errStat_period_2017");
852 load(m_zeeNom_data2016, "Scales/es2017_R21_ofc0_v1/alphaZee_errStat_period_2016");
853 load(m_zeeNom_data2015, "Scales/es2017_R21_ofc0_v1/alphaZee_errStat_period_2015");
854 load(m_zeeNom_data2018, "Scales/es2017_R21_ofc0_v1/alphaZee_errStat_period_2018");
855 m_zeeFwdk.reset(checked_own_cast<TH1*>(
856 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalk")));
857 m_zeeFwdb.reset(checked_own_cast<TH1*>(
858 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalb")));
860 load(m_zeeNom, "Scales/es2024_Run3_ofc0_v0/alphaZee_errStat");
861 m_zeeFwdk.reset(checked_own_cast<TH1*>(
862 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalk")));
863 m_zeeFwdb.reset(checked_own_cast<TH1*>(
864 rootFile->Get("Scales/es2017_R21_v1/alphaFwd_Finalb")));
866
867 load(m_zeeNom, "Scales/es2018_R21_v0/alphaZee_errStat_period_2018");
868 load(m_zeeNom_data2017, "Scales/es2018_R21_v0/alphaZee_errStat_period_2017");
869 load(m_zeeNom_data2016, "Scales/es2018_R21_v0/alphaZee_errStat_period_2016");
870 load(m_zeeNom_data2015, "Scales/es2018_R21_v0/alphaZee_errStat_period_2015");
871 m_zeeFwdk.reset(checked_own_cast<TH1*>(
872 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalk")));
873 m_zeeFwdb.reset(checked_own_cast<TH1*>(
874 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalb")));
876 m_zeeNom.reset(checked_own_cast<TH1*>(
877 rootFile->Get("Scales/es2018_R21_v1/alphaZee_errStat_period_2018")));
878 m_zeeNom_data2017.reset(checked_own_cast<TH1*>(
879 rootFile->Get("Scales/es2018_R21_v1/alphaZee_errStat_period_2017")));
880 m_zeeNom_data2016.reset(checked_own_cast<TH1*>(
881 rootFile->Get("Scales/es2018_R21_v1/alphaZee_errStat_period_2016")));
882 m_zeeNom_data2015.reset(checked_own_cast<TH1*>(
883 rootFile->Get("Scales/es2018_R21_v1/alphaZee_errStat_period_2015")));
884 // same as in v0 model
885 m_zeeFwdk.reset(checked_own_cast<TH1*>(
886 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalk")));
887 m_zeeFwdb.reset(checked_own_cast<TH1*>(
888 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalb")));
890 m_zeeNom.reset(checked_own_cast<TH1*>(
891 rootFile->Get("Scales/es2022_R22_PRE/alphaZee_errStat_period_2018")));
892 // same as in v0 model
893 m_zeeFwdk.reset(checked_own_cast<TH1*>(
894 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalk")));
895 m_zeeFwdb.reset(checked_own_cast<TH1*>(
896 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalb")));
898 m_zeeNom.reset(checked_own_cast<TH1*>(rootFile->Get(
899 "Scales/es2023_R22_Run2_v0/alphaZee_errStat_period_2018")));
900 m_zeeNom_data2017.reset(checked_own_cast<TH1*>(rootFile->Get(
901 "Scales/es2023_R22_Run2_v0/alphaZee_errStat_period_2017")));
902 m_zeeNom_data2016.reset(checked_own_cast<TH1*>(rootFile->Get(
903 "Scales/es2023_R22_Run2_v0/alphaZee_errStat_period_2016")));
904 m_zeeNom_data2015.reset(checked_own_cast<TH1*>(rootFile->Get(
905 "Scales/es2023_R22_Run2_v0/alphaZee_errStat_period_2015")));
906 // same as in v0 model
907 m_zeeFwdk.reset(checked_own_cast<TH1*>(
908 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalk")));
909 m_zeeFwdb.reset(checked_own_cast<TH1*>(
910 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalb")));
912 // based on fixed E1E2
913 m_zeeNom.reset(checked_own_cast<TH1*>(rootFile->Get(
914 "Scales/es2023_R22_Run2_v1/alphaZee_errStat_period_2018")));
915 m_zeeNom_data2017.reset(checked_own_cast<TH1*>(rootFile->Get(
916 "Scales/es2023_R22_Run2_v1/alphaZee_errStat_period_2017")));
917 m_zeeNom_data2016.reset(checked_own_cast<TH1*>(rootFile->Get(
918 "Scales/es2023_R22_Run2_v1/alphaZee_errStat_period_2016")));
919 m_zeeNom_data2015.reset(checked_own_cast<TH1*>(rootFile->Get(
920 "Scales/es2023_R22_Run2_v1/alphaZee_errStat_period_2015")));
921 // same as in v0 model
922 m_zeeFwdk.reset(checked_own_cast<TH1*>(
923 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalk")));
924 m_zeeFwdb.reset(checked_own_cast<TH1*>(
925 rootFile->Get("Scales/es2018_R21_v0/alphaFwd_Finalb")));
927 m_zeeNom.reset(checked_own_cast<TH1*>(
928 rootFile->Get("Scales/es2024_Run3_v0/alphaZee_errStat_period_2024")));
929 m_zeeNom_data2023.reset(checked_own_cast<TH1*>(
930 rootFile->Get("Scales/es2024_Run3_v0/alphaZee_errStat_period_2023")));
931 m_zeeNom_data2022.reset(checked_own_cast<TH1*>(
932 rootFile->Get("Scales/es2024_Run3_v0/alphaZee_errStat_period_2022")));
933 } else {
934 m_zeeNom.reset(checked_own_cast<TH1*>(
935 rootFile->Get("Scales/es2017_R21_PRE/alphaZee_errStat_period_2016")));
936 // SAME HISTO FOR 2015 FOR NOW
937 m_zeeNom_data2015.reset(checked_own_cast<TH1*>(
938 rootFile->Get("Scales/es2017_R21_PRE/alphaZee_errStat_period_2016")));
939 }
941 m_zeeSyst.reset(checked_own_cast<TH1*>(
942 rootFile->Get("Scales/es2017/alphaZee_errSyst")));
944 m_zeeSyst.reset(checked_own_cast<TH1*>(
945 rootFile->Get("Scales/es2017_summer_final/alphaZee_errSyst")));
946 } else if (m_esmodel == egEnergyCorr::es2015_5TeV) {
947 m_zeeSyst.reset(checked_own_cast<TH1*>(
948 rootFile->Get("Scales/es2015_5TeV/alphaZee_errSyst")));
950 m_zeeSyst.reset(checked_own_cast<TH1*>(
951 rootFile->Get("Scales/es2017_summer_final/alphaZee_errSyst")));
953 m_zeeSyst.reset(checked_own_cast<TH1*>(
954 rootFile->Get("Scales/es2017_R21_v1/alphaZee_errSyst")));
956 m_zeeSyst.reset(checked_own_cast<TH1*>(
957 rootFile->Get("Scales/es2017_R21_ofc0_v1/alphaZee_errSyst")));
959 m_zeeSyst.reset(checked_own_cast<TH1*>(
960 rootFile->Get("Scales/es2024_Run3_ofc0_v0/alphaZee_errSyst")));
962 m_zeeSyst.reset(checked_own_cast<TH1*>(
963 rootFile->Get("Scales/es2018_R21_v0/alphaZee_errSyst")));
968 m_zeeSyst.reset(checked_own_cast<TH1*>(
969 rootFile->Get("Scales/es2018_R21_v1/alphaZee_errSyst")));
971 m_zeeSyst.reset(checked_own_cast<TH1*>(
972 rootFile->Get("Scales/es2022_R22_PRE/alphaZee_errSyst")));
973 m_zeeSystOFC.reset(checked_own_cast<TH1*>(
974 rootFile->Get("Scales/es2022_R22_PRE/alphaZee_errOFCSyst")));
975 } else {
976 m_zeeSyst.reset(checked_own_cast<TH1*>(
977 rootFile->Get("Scales/es2017_summer/alphaZee_errSyst")));
978 }
979
982 m_resNom.reset(checked_own_cast<TH1*>(
983 rootFile->Get("Resolution/es2017/ctZee_errStat")));
987 m_resNom.reset(checked_own_cast<TH1*>(
988 rootFile->Get("Resolution/es2017_summer/ctZee_errStat")));
990 m_resNom.reset(checked_own_cast<TH1*>(
991 rootFile->Get("Resolution/es2017_summer_final/ctZee_errStat")));
993 m_resNom.reset(checked_own_cast<TH1*>(
994 rootFile->Get("Resolution/es2017_R21_v0/ctZee_errStat")));
996 m_resNom.reset(checked_own_cast<TH1*>(
997 rootFile->Get("Resolution/es2017_R21_v1/ctZee_errStat")));
999 m_resNom.reset(checked_own_cast<TH1*>(
1000 rootFile->Get("Resolution/es2017_R21_ofc0_v1/ctZee_errStat")));
1002 // use same resolution smearing as run 2 ofc0 recommendation
1003 m_resNom.reset(checked_own_cast<TH1*>(
1004 rootFile->Get("Resolution/es2017_R21_ofc0_v1/ctZee_errStat")));
1005 } else if (m_esmodel == egEnergyCorr::es2018_R21_v0) {
1006 m_resNom.reset(checked_own_cast<TH1*>(
1007 rootFile->Get("Resolution/es2018_R21_v0/ctZee_errStat")));
1008 } else if (m_esmodel == egEnergyCorr::es2018_R21_v1) {
1009 m_resNom.reset(checked_own_cast<TH1*>(
1010 rootFile->Get("Resolution/es2018_R21_v1/ctZee_errStat")));
1012 m_resNom.reset(checked_own_cast<TH1*>(
1013 rootFile->Get("Resolution/es2022_R22_PRE/ctZee_errStat")));
1015 m_resNom.reset(checked_own_cast<TH1*>(
1016 rootFile->Get("Resolution/es2023_R22_Run2_v0/ctZee_errStat")));
1018 m_resNom.reset(checked_own_cast<TH1*>(
1019 rootFile->Get("Resolution/es2023_R22_Run2_v1/ctZee_errStat")));
1021 m_resNom.reset(checked_own_cast<TH1*>(
1022 rootFile->Get("Resolution/es2024_Run3_v0/ctZee_errStat")));
1023 } else {
1024 m_resNom.reset(checked_own_cast<TH1*>(
1025 rootFile->Get("Resolution/es2017_R21_PRE/ctZee_errStat")));
1026 }
1027
1029 m_resSyst.reset(checked_own_cast<TH1*>(
1030 rootFile->Get("Resolution/es2017/ctZee_errSyst")));
1032 m_resSyst.reset(checked_own_cast<TH1*>(
1033 rootFile->Get("Resolution/es2017_summer_final/ctZee_errSyst")));
1034 } else if (m_esmodel == egEnergyCorr::es2015_5TeV) {
1035 m_resSyst.reset(checked_own_cast<TH1*>(
1036 rootFile->Get("Resolution/es2015_5TeV/ctZee_errSyst")));
1037 } else if (m_esmodel == egEnergyCorr::es2017_R21_v0) {
1038 m_resSyst.reset(checked_own_cast<TH1*>(
1039 rootFile->Get("Resolution/es2017_summer_final/ctZee_errSyst")));
1040 } else if (m_esmodel == egEnergyCorr::es2017_R21_v1) {
1041 m_resSyst.reset(checked_own_cast<TH1*>(
1042 rootFile->Get("Resolution/es2017_R21_v1/ctZee_errSyst")));
1044 m_resSyst.reset(checked_own_cast<TH1*>(
1045 rootFile->Get("Resolution/es2017_R21_ofc0_v1/ctZee_errSyst")));
1047 // use same resolution smearing syst as run 2 ofc0 recommendataion
1048 m_resSyst.reset(checked_own_cast<TH1*>(
1049 rootFile->Get("Resolution/es2017_R21_ofc0_v1/ctZee_errSyst")));
1050 } else if (m_esmodel == egEnergyCorr::es2018_R21_v0) {
1051 m_resSyst.reset(checked_own_cast<TH1*>(
1052 rootFile->Get("Resolution/es2018_R21_v0/ctZee_errSyst")));
1053 } else if (m_esmodel == egEnergyCorr::es2018_R21_v1 ||
1057 m_resSyst.reset(checked_own_cast<TH1*>(
1058 rootFile->Get("Resolution/es2018_R21_v1/ctZee_errSyst")));
1060 m_resSyst.reset(checked_own_cast<TH1*>(
1061 rootFile->Get("Resolution/es2022_R22_PRE/ctZee_errSyst")));
1062 m_resSystOFC.reset(checked_own_cast<TH1*>(
1063 rootFile->Get("Resolution/es2022_R22_PRE/ctZee_errOFCSyst")));
1064 } else {
1065 m_resSyst.reset(checked_own_cast<TH1*>(
1066 rootFile->Get("Resolution/es2017_summer/ctZee_errSyst")));
1067 }
1068 // else{
1069 // m_resSyst.reset( checked_own_cast< TH1* >(
1070 // rootFile->Get("Resolution/es2017_summer_improved/ctZee_errSyst")));
1071 // }
1072
1073 m_pedestals_es2017.reset(
1074 checked_own_cast<TH1*>(rootFile->Get("Pedestals/es2017/pedestals")));
1075
1076 m_dX_ID_Nom.reset(
1077 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigA")));
1078
1079 m_dX_IPPS_Nom.reset(checked_own_cast<TH1*>(
1080 rootFile->Get("Material/Measured/DXerr_IPPS_NewG_errUncor")));
1081 m_dX_IPPS_LAr.reset(checked_own_cast<TH1*>(
1082 rootFile->Get("Material/Measured/DXerr_IPPS_NewG_errLAr")));
1083
1084 m_dX_IPAcc_Nom.reset(checked_own_cast<TH1*>(
1085 rootFile->Get("Material/Measured/DXerr_IPAcc_NewG_errUncor")));
1086 m_dX_IPAcc_LAr.reset(checked_own_cast<TH1*>(
1087 rootFile->Get("Material/Measured/DXerr_IPAcc_NewG_errLAr")));
1088 m_dX_IPAcc_G4.reset(checked_own_cast<TH1*>(
1089 rootFile->Get("Material/Measured/DXerr_IPAcc_NewG_errG4")));
1090 m_dX_IPAcc_GL1.reset(checked_own_cast<TH1*>(
1091 rootFile->Get("Material/Measured/DXerr_IPAcc_NewG_errGL1")));
1092
1093 m_dX_PSAcc_Nom.reset(checked_own_cast<TH1*>(
1094 rootFile->Get("Material/Measured/DXerr_PSAcc_NewG_errUncor")));
1095 m_dX_PSAcc_LAr.reset(checked_own_cast<TH1*>(
1096 rootFile->Get("Material/Measured/DXerr_PSAcc_NewG_errLAr")));
1097 m_dX_PSAcc_G4.reset(checked_own_cast<TH1*>(
1098 rootFile->Get("Material/Measured/DXerr_PSAcc_NewG_errG4")));
1099
1100 m_convRadius.reset(checked_own_cast<TH1*>(
1101 rootFile->Get("Conversions/es2012c/convRadiusMigrations")));
1103 m_convFakeRate.reset(checked_own_cast<TH1*>(
1104 rootFile->Get("Conversions/es2012c/convFakeRate")));
1105 m_convRecoEfficiency.reset(checked_own_cast<TH1*>(
1106 rootFile->Get("Conversions/es2012c/convRecoEfficiency")));
1109 m_convFakeRate_2D.reset(checked_own_cast<TH2*>(
1110 rootFile->Get("Conversions/es2023_R22_Run2_v0/convFakeRate")));
1111 m_convRecoEfficiency_2D.reset(checked_own_cast<TH2*>(
1112 rootFile->Get("Conversions/es2023_R22_Run2_v0/convRecoEfficiency")));
1114 m_convFakeRate_2D.reset(checked_own_cast<TH2*>(
1115 rootFile->Get("Conversions/es2024_Run3_v0/conv_energybias")));
1116 m_convRecoEfficiency_2D.reset(checked_own_cast<TH2*>(
1117 rootFile->Get("Conversions/es2024_Run3_v0/unconv_energybias")));
1118 } else {
1119 m_convFakeRate.reset(checked_own_cast<TH1*>(
1120 rootFile->Get("Conversions/es2017_summer/convFakeRate")));
1121 m_convRecoEfficiency.reset(checked_own_cast<TH1*>(
1122 rootFile->Get("Conversions/es2017_summer/convRecoEfficiency")));
1123 }
1124
1125 // TODO: change path when moving to calibarea
1126 // TODO: better package this somewhere
1127
1128 const std::string filename_pp0 = PathResolverFindCalibFile(
1129 "ElectronPhotonFourMomentumCorrection/v8/PP0sys.root");
1130
1131 TFile file_pp0(filename_pp0.c_str());
1132 m_pp0_elec.reset(checked_own_cast<TH2*>(file_pp0.Get("elec")));
1133 m_pp0_conv.reset(checked_own_cast<TH2*>(file_pp0.Get("conv")));
1134 m_pp0_unconv.reset(checked_own_cast<TH2*>(file_pp0.Get("unco")));
1135
1136 // similar case for wtots1
1137 const std::string filename_wstot = PathResolverFindCalibFile(
1138 "ElectronPhotonFourMomentumCorrection/v8/wstot_related_syst.root");
1139
1140 TFile file_wstot(filename_wstot.c_str());
1142 checked_own_cast<TH1*>(file_wstot.Get("A_data")));
1143 m_wstot_slope_B_MC.reset(checked_own_cast<TH1*>(file_wstot.Get("B_mc")));
1145 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_el_data_p0")));
1147 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_el_data_p1")));
1149 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_uc_data_p0")));
1151 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_uc_data_p1")));
1153 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_c_data_p0")));
1155 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_c_data_p1")));
1157 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_el_mc_p0")));
1159 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_el_mc_p1")));
1161 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_ph_uc_mc_p0")));
1163 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_ph_uc_mc_p1")));
1165 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_ph_c_mc_p0")));
1167 checked_own_cast<TH1*>(file_wstot.Get("wstot_pT_ph_c_mc_p1")));
1168
1169 m_begRunNumber = 252604;
1170 m_endRunNumber = 314199;
1171
1176 m_G4OverAFII_resolution_electron.reset(checked_own_cast<TH2*>(
1177 rootFile->Get("FastSim/es2017_v1/resol_Af2ToG4_elec_rel21")));
1178 m_G4OverAFII_resolution_unconverted.reset(checked_own_cast<TH2*>(
1179 rootFile->Get("FastSim/es2017_v1/resol_Af2ToG4_unco_rel21")));
1180 m_G4OverAFII_resolution_converted.reset(checked_own_cast<TH2*>(
1181 rootFile->Get("FastSim/es2017_v1/resol_Af2ToG4_conv_rel21")));
1182 }
1187 m_G4OverAFII_resolution_electron.reset(checked_own_cast<TH2*>(
1188 rootFile->Get("FastSim/es2023_R22_Run2_v1/resol_AF3ToG4_elec_rel22")));
1189 m_G4OverAFII_resolution_unconverted.reset(checked_own_cast<TH2*>(
1190 rootFile->Get("FastSim/es2023_R22_Run2_v1/resol_AF3ToG4_unco_rel22")));
1191 m_G4OverAFII_resolution_converted.reset(checked_own_cast<TH2*>(
1192 rootFile->Get("FastSim/es2023_R22_Run2_v1/resol_AF3ToG4_conv_rel22")));
1193 }
1195 m_G4OverAFII_resolution_electron.reset(checked_own_cast<TH2*>(
1196 rootFile->Get("FastSim/es2024_Run3_v0/resol_AF3ToG4_elec_mc23")));
1197 m_G4OverAFII_resolution_unconverted.reset(checked_own_cast<TH2*>(
1198 rootFile->Get("FastSim/es2024_Run3_v0/resol_AF3ToG4_unco_mc23")));
1199 m_G4OverAFII_resolution_converted.reset(checked_own_cast<TH2*>(
1200 rootFile->Get("FastSim/es2024_Run3_v0/resol_AF3ToG4_conv_mc23")));
1201 // extra systematic file for eta between 1.3 and 1.35 due to double Gaussian peak in Ereco/Etrue
1202 m_G4OverAF_electron_resolution_extra_sys.reset(checked_own_cast<TH1*>(
1203 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_resol_AF3ToG4_elec_mc23_1p3_1p35")));
1204 m_G4OverAF_converted_resolution_extra_sys.reset(checked_own_cast<TH1*>(
1205 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_resol_AF3ToG4_elec_mc23_1p3_1p35")));
1206 m_G4OverAF_unconverted_resolution_extra_sys.reset(checked_own_cast<TH1*>(
1207 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_resol_AF3ToG4_unconv_mc23_1p3_1p35")));
1208 }
1209 else {
1210 m_G4OverAFII_resolution_electron.reset(checked_own_cast<TH2*>(
1211 rootFile->Get("FastSim/es2017/el_full_fast_resolution")));
1212 m_G4OverAFII_resolution_unconverted.reset(checked_own_cast<TH2*>(
1213 rootFile->Get("FastSim/es2017/ph_unconv_full_fast_resolution")));
1214 m_G4OverAFII_resolution_converted.reset(checked_own_cast<TH2*>(
1215 rootFile->Get("FastSim/es2017/ph_conv_full_fast_resolution")));
1216 }
1220
1221 const std::string gain_filename1 = PathResolverFindCalibFile(
1222 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
1223 const std::string gain_filename2 = PathResolverFindCalibFile(
1224 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
1225 m_gain_tool = nullptr;
1226
1227 std::string gain_tool_run_2_filename;
1228 std::string gain_tool_run3_extra_filename;
1233 gain_tool_run_2_filename = PathResolverFindCalibFile(
1234 "ElectronPhotonFourMomentumCorrection/v11/"
1235 "gain_uncertainty_specialRun.root");
1238 m_esmodel == egEnergyCorr::es2024_Run3_v0) { // Run3: extra OFC NP will be added separatedly in different lines
1239 gain_tool_run_2_filename = PathResolverFindCalibFile(
1240 "ElectronPhotonFourMomentumCorrection/v29/"
1241 "gain_uncertainty_specialRun.root");
1243 gain_tool_run3_extra_filename = PathResolverFindCalibFile(
1244 "ElectronPhotonFourMomentumCorrection/v38/"
1245 "gain_uncertainty_specialRun.root");
1246 }
1247 } else {
1248 gain_tool_run_2_filename = PathResolverFindCalibFile(
1249 "ElectronPhotonFourMomentumCorrection/v14/"
1250 "gain_uncertainty_specialRun.root");
1251 }
1255 m_gain_tool_run2 = std::make_unique<egGain::GainUncertainty>(
1256 gain_tool_run_2_filename, true, "GainUncertainty",
1259 m_gain_tool_run3_extra = std::make_unique<egGain::GainUncertainty>(
1260 gain_tool_run3_extra_filename, true, "GainUncertainty",
1262 }
1263 } else {
1265 std::make_unique<egGain::GainUncertainty>(gain_tool_run_2_filename);
1266 }
1267
1268 m_gain_tool_run2->msg().setLevel(this->msg().level());
1269
1273 m_e1hg_tool = std::make_unique<e1hg_systematics>(
1274 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v29/"
1275 "e1hg_systematics_histos.root"));
1276 } else {
1277 m_e1hg_tool = std::make_unique<e1hg_systematics>(
1278 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
1279 "e1hg_systematics_histos.root"));
1280 }
1281
1286 m_resolution_tool = std::make_unique<eg_resolution>("run2_pre");
1287
1288 m_aPSNom.reset(checked_own_cast<TH1*>(
1289 rootFile->Get("Scales/es2015_day0/alphaPS_uncor"))); // old one
1290 m_daPSCor.reset(checked_own_cast<TH1*>(
1291 rootFile->Get("Scales/es2015_day0/dalphaPS_cor"))); // old one
1292 m_aS12Nom.reset(checked_own_cast<TH1*>(
1293 rootFile->Get("Scales/es2015_day0/alphaS12_uncor"))); // old one
1294 m_daS12Cor.reset(checked_own_cast<TH1*>(
1295 rootFile->Get("Scales/es2015_day0/dalphaS12_cor"))); // old one
1296
1297 m_trkSyst.reset(checked_own_cast<TH1*>(
1298 rootFile->Get("Scales/es2015_day0/momentum_errSyst"))); // old one
1299
1300 m_zeeNom.reset(checked_own_cast<TH1*>(
1301 rootFile->Get("Scales/es2015_day0/alphaZee_errStat"))); // old one
1302 m_zeeSyst.reset(checked_own_cast<TH1*>(
1303 rootFile->Get("Scales/es2015_day0/alphaZee_errSyst"))); // old one
1304
1305 m_resNom.reset(checked_own_cast<TH1*>(
1306 rootFile->Get("Resolution/es2012c/ctZee_errStat"))); // old one
1307 m_resSyst.reset(checked_own_cast<TH1*>(
1308 rootFile->Get("Resolution/es2012c/ctZee_errSyst"))); // old one
1309
1310 m_pedestalL0.reset(checked_own_cast<TH1*>(
1311 rootFile->Get("Pedestals/es2012c/pedestals_l0"))); // old one
1312 m_pedestalL1.reset(checked_own_cast<TH1*>(
1313 rootFile->Get("Pedestals/es2012c/pedestals_l1"))); // old one
1314 m_pedestalL2.reset(checked_own_cast<TH1*>(
1315 rootFile->Get("Pedestals/es2012c/pedestals_l2"))); // old one
1316 m_pedestalL3.reset(checked_own_cast<TH1*>(
1317 rootFile->Get("Pedestals/es2012c/pedestals_l3"))); // old one
1318
1319 m_dX_ID_Nom.reset(checked_own_cast<TH1*>(
1320 rootFile->Get("Material/DX0_ConfigA"))); // old one
1321
1322 m_dX_IPPS_Nom.reset(checked_own_cast<TH1*>(rootFile->Get(
1323 "Material/Measured/DXerr_IPPS_NewG_errUncor"))); // old one
1324 m_dX_IPPS_LAr.reset(checked_own_cast<TH1*>(
1325 rootFile->Get("Material/Measured/DXerr_IPPS_NewG_errLAr"))); // old one
1326
1327 m_dX_IPAcc_Nom.reset(checked_own_cast<TH1*>(rootFile->Get(
1328 "Material/Measured/DXerr_IPAcc_NewG_errUncor"))); // old one
1329 m_dX_IPAcc_LAr.reset(checked_own_cast<TH1*>(rootFile->Get(
1330 "Material/Measured/DXerr_IPAcc_NewG_errLAr"))); // old one
1331 m_dX_IPAcc_G4.reset(checked_own_cast<TH1*>(
1332 rootFile->Get("Material/Measured/DXerr_IPAcc_NewG_errG4"))); // old one
1333 m_dX_IPAcc_GL1.reset(checked_own_cast<TH1*>(rootFile->Get(
1334 "Material/Measured/DXerr_IPAcc_NewG_errGL1"))); // old one
1335
1336 m_dX_PSAcc_Nom.reset(checked_own_cast<TH1*>(rootFile->Get(
1337 "Material/Measured/DXerr_PSAcc_NewG_errUncor"))); // old one
1338 m_dX_PSAcc_LAr.reset(checked_own_cast<TH1*>(rootFile->Get(
1339 "Material/Measured/DXerr_PSAcc_NewG_errLAr"))); // old one
1340 m_dX_PSAcc_G4.reset(checked_own_cast<TH1*>(
1341 rootFile->Get("Material/Measured/DXerr_PSAcc_NewG_errG4"))); // old one
1342
1343 m_convRadius.reset(checked_own_cast<TH1*>(
1344 rootFile->Get("Conversions/es2012c/convRadiusMigrations"))); // old one
1345 m_convFakeRate.reset(checked_own_cast<TH1*>(
1346 rootFile->Get("Conversions/es2012c/convFakeRate"))); // old one
1347 m_convRecoEfficiency.reset(checked_own_cast<TH1*>(
1348 rootFile->Get("Conversions/es2012c/convRecoEfficiency"))); // old one
1349
1350 m_begRunNumber = 195847;
1351 m_endRunNumber = 219365;
1352
1353 const std::string gain_filename1 = PathResolverFindCalibFile(
1354 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
1355 const std::string gain_filename2 = PathResolverFindCalibFile(
1356 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
1357 m_gain_tool =
1358 std::make_unique<egGain::GainTool>(gain_filename1, gain_filename2);
1359
1360 m_e1hg_tool = std::make_unique<e1hg_systematics>(
1361 PathResolverFindCalibFile("ElectronPhotonFourMomentumCorrection/v8/"
1362 "e1hg_systematics_histos.root"));
1363
1364 // If we are here, fail s :
1365
1366 } else if (m_esmodel == egEnergyCorr::UNDEFINED) {
1367 ATH_MSG_FATAL("ES model not initialized - Initialization fails");
1368 return 0;
1369 } else {
1370 ATH_MSG_FATAL("ES model not recognized - Initialization fails");
1371 return 0;
1372 }
1373
1393 // E4 systematics
1394 m_E4ElectronEtaBins.reset(checked_own_cast<TAxis*>(
1395 rootFile->Get("E4Recalibration/v4/electron_eta_axis")));
1396 m_E4ElectronGraphs.reset(
1397 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/v4/electron")));
1398 // for photons use the same as electrons
1399 m_E4UnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1400 rootFile->Get("E4Recalibration/v4/electron_eta_axis")));
1402 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/v4/electron")));
1403 m_E4ConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1404 rootFile->Get("E4Recalibration/v4/electron_eta_axis")));
1405 m_E4ConvertedGraphs.reset(
1406 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/v4/electron")));
1407 }
1409 // E4 systematics (sensitivity per particle type)
1410 m_E4ElectronEtaBins.reset(checked_own_cast<TAxis*>(
1411 rootFile->Get("E4Recalibration/es2024_Run3_v0/E4_eta_axis")));
1412 m_E4ElectronGraphs.reset(
1413 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/es2024_Run3_v0/electron_sensitivity")));
1414 m_E4UnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1415 rootFile->Get("E4Recalibration/es2024_Run3_v0/E4_eta_axis")));
1417 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/es2024_Run3_v0/unconv_photon_sensitivity")));
1418 m_E4ConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1419 rootFile->Get("E4Recalibration/es2024_Run3_v0/E4_eta_axis")));
1420 m_E4ConvertedGraphs.reset(
1421 checked_own_cast<TList*>(rootFile->Get("E4Recalibration/es2024_Run3_v0/conv_photon_sensitivity")));
1422 }
1423
1424 // ... PS and S12 recalibration curves
1444
1445 m_psElectronEtaBins.reset(checked_own_cast<TAxis*>(
1446 rootFile->Get("PSRecalibration/es2015PRE/ElectronAxis")));
1447 m_psElectronGraphs.reset(checked_own_cast<TList*>(
1448 rootFile->Get("PSRecalibration/es2015PRE/ElectronBiasPS")));
1449 m_psUnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1450 rootFile->Get("PSRecalibration/es2015PRE/UnconvertedAxis")));
1451 m_psUnconvertedGraphs.reset(checked_own_cast<TList*>(
1452 rootFile->Get("PSRecalibration/es2015PRE/UnconvertedBiasPS")));
1453 m_psConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1454 rootFile->Get("PSRecalibration/es2015PRE/ConvertedAxis")));
1455 m_psConvertedGraphs.reset(checked_own_cast<TList*>(
1456 rootFile->Get("PSRecalibration/es2015PRE/ConvertedBiasPS")));
1457
1458 m_s12ElectronEtaBins.reset(checked_own_cast<TAxis*>(
1459 rootFile->Get("S1Recalibration/es2015PRE/ElectronAxis")));
1460 m_s12ElectronGraphs.reset(checked_own_cast<TList*>(
1461 rootFile->Get("S1Recalibration/es2015PRE/ElectronBiasS1")));
1462 m_s12UnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1463 rootFile->Get("S1Recalibration/es2015PRE/UnconvertedAxis")));
1464 m_s12UnconvertedGraphs.reset(checked_own_cast<TList*>(
1465 rootFile->Get("S1Recalibration/es2015PRE/UnconvertedBiasS1")));
1466 m_s12ConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1467 rootFile->Get("S1Recalibration/es2015PRE/ConvertedAxis")));
1468 m_s12ConvertedGraphs.reset(checked_own_cast<TList*>(
1469 rootFile->Get("S1Recalibration/es2015PRE/ConvertedBiasS1")));
1473 m_psElectronEtaBins.reset(checked_own_cast<TAxis*>(
1474 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/ElectronAxis")));
1475 m_psElectronGraphs.reset(checked_own_cast<TList*>(
1476 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/ElectronBiasPS")));
1477 m_psUnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1478 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/UnconvertedAxis")));
1479 m_psUnconvertedGraphs.reset(checked_own_cast<TList*>(
1480 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/UnconvertedBiasPS")));
1481 m_psConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1482 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/ConvertedAxis")));
1483 m_psConvertedGraphs.reset(checked_own_cast<TList*>(
1484 rootFile->Get("PSRecalibration/es2023_R22_Run2_v0/ConvertedBiasPS")));
1485
1486 m_s12ElectronEtaBins.reset(checked_own_cast<TAxis*>(
1487 rootFile->Get("S2Recalibration/ElectronAxis")));
1488 m_s12ElectronGraphs.reset(checked_own_cast<TList*>(
1489 rootFile->Get("S2Recalibration/ElectronBiasS2")));
1490 m_s12UnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1491 rootFile->Get("S2Recalibration/UnconvertedAxis")));
1492 m_s12UnconvertedGraphs.reset(checked_own_cast<TList*>(
1493 rootFile->Get("S2Recalibration/UnconvertedBiasS2")));
1494 m_s12ConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1495 rootFile->Get("S2Recalibration/ConvertedAxis")));
1496 m_s12ConvertedGraphs.reset(checked_own_cast<TList*>(
1497 rootFile->Get("S2Recalibration/ConvertedBiasS2")));
1498
1499 m_EaccElectronEtaBins.reset(checked_own_cast<TAxis*>(
1500 rootFile->Get("SaccRecalibration/ElectronAxis")));
1502 m_EaccElectronGraphs.reset(checked_own_cast<TList*>(
1503 rootFile->Get("SaccRecalibration/es2024_Run3_v0/ElectronBiasSacc")));
1504 }
1505 else {
1506 m_EaccElectronGraphs.reset(checked_own_cast<TList*>(
1507 rootFile->Get("SaccRecalibration/ElectronBiasSacc")));
1508 }
1509 m_EaccUnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1510 rootFile->Get("SaccRecalibration/UnconvertedAxis")));
1511 m_EaccUnconvertedGraphs.reset(checked_own_cast<TList*>(
1512 rootFile->Get("SaccRecalibration/UnconvertedBiasSacc")));
1513 m_EaccConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1514 rootFile->Get("SaccRecalibration/ConvertedAxis")));
1515 m_EaccConvertedGraphs.reset(checked_own_cast<TList*>(
1516 rootFile->Get("SaccRecalibration/ConvertedBiasSacc")));
1517 } else // run1
1518 {
1519 m_psElectronEtaBins.reset(checked_own_cast<TAxis*>(
1520 rootFile->Get("PSRecalibration/ElectronAxis")));
1521 m_psElectronGraphs.reset(checked_own_cast<TList*>(
1522 rootFile->Get("PSRecalibration/ElectronBiasPS")));
1523 m_psUnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1524 rootFile->Get("PSRecalibration/UnconvertedAxis")));
1525 m_psUnconvertedGraphs.reset(checked_own_cast<TList*>(
1526 rootFile->Get("PSRecalibration/UnconvertedBiasPS")));
1527 m_psConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1528 rootFile->Get("PSRecalibration/ConvertedAxis")));
1529 m_psConvertedGraphs.reset(checked_own_cast<TList*>(
1530 rootFile->Get("PSRecalibration/ConvertedBiasPS")));
1531
1532 m_s12ElectronEtaBins.reset(checked_own_cast<TAxis*>(
1533 rootFile->Get("S1Recalibration/ElectronAxis")));
1534 m_s12ElectronGraphs.reset(checked_own_cast<TList*>(
1535 rootFile->Get("S1Recalibration/ElectronBiasS1")));
1536 m_s12UnconvertedEtaBins.reset(checked_own_cast<TAxis*>(
1537 rootFile->Get("S1Recalibration/UnconvertedAxis")));
1538 m_s12UnconvertedGraphs.reset(checked_own_cast<TList*>(
1539 rootFile->Get("S1Recalibration/UnconvertedBiasS1")));
1540 m_s12ConvertedEtaBins.reset(checked_own_cast<TAxis*>(
1541 rootFile->Get("S1Recalibration/ConvertedAxis")));
1542 m_s12ConvertedGraphs.reset(checked_own_cast<TList*>(
1543 rootFile->Get("S1Recalibration/ConvertedBiasS1")));
1544 }
1545
1546 // further inputs do not depend on year
1547
1548 // ... material distortions
1549 m_matUnconvertedScale.emplace_back(
1550 std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1551 rootFile->Get("Material/unconvertedBiasSubtracted_ConfigA"))));
1552 m_matUnconvertedScale.emplace_back(
1553 std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1554 rootFile->Get("Material/unconvertedBiasSubtracted_ConfigCpDp"))));
1555 m_matUnconvertedScale.emplace_back(
1556 std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1557 rootFile->Get("Material/unconvertedBiasSubtracted_ConfigEpLp"))));
1558 m_matUnconvertedScale.emplace_back(
1559 std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1560 rootFile->Get("Material/unconvertedBiasSubtracted_ConfigFpMX"))));
1561 m_matUnconvertedScale.emplace_back(
1562 std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1563 rootFile->Get("Material/unconvertedBiasSubtracted_ConfigGp"))));
1564
1565 m_matConvertedScale.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1566 rootFile->Get("Material/convertedBiasSubtracted_ConfigA"))));
1567 m_matConvertedScale.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1568 rootFile->Get("Material/convertedBiasSubtracted_ConfigCpDp"))));
1569 m_matConvertedScale.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1570 rootFile->Get("Material/convertedBiasSubtracted_ConfigEpLp"))));
1571 m_matConvertedScale.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1572 rootFile->Get("Material/convertedBiasSubtracted_ConfigFpMX"))));
1573 m_matConvertedScale.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1574 rootFile->Get("Material/convertedBiasSubtracted_ConfigGp"))));
1575
1576 m_matElectronCstTerm.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1577 rootFile->Get("Material/electronCstTerm_ConfigA"))));
1578 m_matElectronCstTerm.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1579 rootFile->Get("Material/electronCstTerm_ConfigCpDp"))));
1580 m_matElectronCstTerm.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1581 rootFile->Get("Material/electronCstTerm_ConfigEpLp"))));
1582 m_matElectronCstTerm.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1583 rootFile->Get("Material/electronCstTerm_ConfigFpMX"))));
1584 m_matElectronCstTerm.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1585 rootFile->Get("Material/electronCstTerm_ConfigGp"))));
1586
1596 // update dX0 plots for distorted geometry for case A, EL, FMX and N
1597 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1598 checked_own_cast<TH1*>(rootFile->Get("Material_rel21/DX0_ConfigA"))));
1599 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1600 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigCpDp"))));
1601 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1602 rootFile->Get("Material_rel21/DX0_ConfigEpLp"))));
1603 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(checked_own_cast<TH1*>(
1604 rootFile->Get("Material_rel21/DX0_ConfigFpMX"))));
1605 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1606 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigGp"))));
1607 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1608 checked_own_cast<TH1*>(rootFile->Get("Material_rel21/DX0_ConfigN"))));
1609 } else {
1610 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1611 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigA"))));
1612 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1613 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigCpDp"))));
1614 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1615 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigEpLp"))));
1616 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1617 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigFpMX"))));
1618 m_matX0Additions.emplace_back(std::unique_ptr<TH1>(
1619 checked_own_cast<TH1*>(rootFile->Get("Material/DX0_ConfigGp"))));
1620 }
1621
1623 checked_own_cast<TAxis*>(rootFile->Get("Material/LinearityEtaBins")));
1624 m_matElectronGraphs.emplace_back(
1625 std::unique_ptr<TList>(checked_own_cast<TList*>(
1626 rootFile->Get("Material/Linearity_Cluster_ConfigA"))));
1627 m_matElectronGraphs.emplace_back(
1628 std::unique_ptr<TList>(checked_own_cast<TList*>(
1629 rootFile->Get("Material/Linearity_Cluster_ConfigCpDp"))));
1630 m_matElectronGraphs.emplace_back(
1631 std::unique_ptr<TList>(checked_own_cast<TList*>(
1632 rootFile->Get("Material/Linearity_Cluster_ConfigEpLp"))));
1633 m_matElectronGraphs.emplace_back(
1634 std::unique_ptr<TList>(checked_own_cast<TList*>(
1635 rootFile->Get("Material/Linearity_Cluster_ConfigFpMX"))));
1636 m_matElectronGraphs.emplace_back(
1637 std::unique_ptr<TList>(checked_own_cast<TList*>(
1638 rootFile->Get("Material/Linearity_Cluster_ConfigGp"))));
1639 // ... new material distortions from release 21 parameterizations
1649 m_electronBias_ConfigA.reset(checked_own_cast<TH2*>(
1650 rootFile->Get("Material_rel21/electronBias_ConfigA")));
1651 m_electronBias_ConfigEpLp.reset(checked_own_cast<TH2*>(
1652 rootFile->Get("Material_rel21/electronBias_ConfigEpLp")));
1653 m_electronBias_ConfigFpMX.reset(checked_own_cast<TH2*>(
1654 rootFile->Get("Material_rel21/electronBias_ConfigFpMX")));
1655 m_electronBias_ConfigN.reset(checked_own_cast<TH2*>(
1656 rootFile->Get("Material_rel21/electronBias_ConfigN")));
1657 m_electronBias_ConfigIBL.reset(checked_own_cast<TH2*>(
1658 rootFile->Get("Material_rel21/electronBias_ConfigIBL")));
1659 m_electronBias_ConfigPP0.reset(checked_own_cast<TH2*>(
1660 rootFile->Get("Material_rel21/electronBias_ConfigPP0")));
1661 m_unconvertedBias_ConfigA.reset(checked_own_cast<TH2*>(
1662 rootFile->Get("Material_rel21/unconvertedBias_ConfigA")));
1663 m_unconvertedBias_ConfigEpLp.reset(checked_own_cast<TH2*>(
1664 rootFile->Get("Material_rel21/unconvertedBias_ConfigEpLp")));
1665 m_unconvertedBias_ConfigFpMX.reset(checked_own_cast<TH2*>(
1666 rootFile->Get("Material_rel21/unconvertedBias_ConfigFpMX")));
1667 m_unconvertedBias_ConfigN.reset(checked_own_cast<TH2*>(
1668 rootFile->Get("Material_rel21/unconvertedBias_ConfigN")));
1669 m_unconvertedBias_ConfigIBL.reset(checked_own_cast<TH2*>(
1670 rootFile->Get("Material_rel21/unconvertedBias_ConfigIBL")));
1671 m_unconvertedBias_ConfigPP0.reset(checked_own_cast<TH2*>(
1672 rootFile->Get("Material_rel21/unconvertedBias_ConfigPP0")));
1673 m_convertedBias_ConfigA.reset(checked_own_cast<TH2*>(
1674 rootFile->Get("Material_rel21/convertedBias_ConfigA")));
1675 m_convertedBias_ConfigEpLp.reset(checked_own_cast<TH2*>(
1676 rootFile->Get("Material_rel21/convertedBias_ConfigEpLp")));
1677 m_convertedBias_ConfigFpMX.reset(checked_own_cast<TH2*>(
1678 rootFile->Get("Material_rel21/convertedBias_ConfigFpMX")));
1679 m_convertedBias_ConfigN.reset(checked_own_cast<TH2*>(
1680 rootFile->Get("Material_rel21/convertedBias_ConfigN")));
1681 m_convertedBias_ConfigIBL.reset(checked_own_cast<TH2*>(
1682 rootFile->Get("Material_rel21/convertedBias_ConfigIBL")));
1683 m_convertedBias_ConfigPP0.reset(checked_own_cast<TH2*>(
1684 rootFile->Get("Material_rel21/convertedBias_ConfigPP0")));
1685 }
1686
1687 // ... Fastsim to Fullsim corrections
1688
1695
1696 m_G4OverAFII_electron.reset(checked_own_cast<TH1*>(
1697 rootFile->Get("FastSim/es2015/el_scale_full_fast_peak_gaussian")));
1698 m_G4OverAFII_unconverted.reset(checked_own_cast<TH1*>(rootFile->Get(
1699 "FastSim/es2015/ph_unconv_scale_full_fast_peak_gaussian")));
1700 m_G4OverAFII_converted.reset(checked_own_cast<TH1*>(
1701 rootFile->Get("FastSim/es2015/ph_conv_scale_full_fast_peak_gaussian")));
1702 } else if (m_esmodel == egEnergyCorr::es2017 or
1709 m_G4OverAFII_electron.reset(checked_own_cast<TH1*>(
1710 rootFile->Get("FastSim/es2017/el_scale_full_fast_peak_gaussian")));
1711 m_G4OverAFII_unconverted.reset(checked_own_cast<TH1*>(rootFile->Get(
1712 "FastSim/es2017/ph_unconv_scale_full_fast_peak_gaussian")));
1713 m_G4OverAFII_converted.reset(checked_own_cast<TH1*>(
1714 rootFile->Get("FastSim/es2017/ph_conv_scale_full_fast_peak_gaussian")));
1715 } else if (m_esmodel == egEnergyCorr::es2017_R21_v1 ||
1719 m_G4OverAFII_electron_2D.reset(checked_own_cast<TH2*>(
1720 rootFile->Get("FastSim/es2017_v1/scale_Af2ToG4_elec_rel21")));
1721 m_G4OverAFII_electron_2D->SetDirectory(nullptr);
1722 m_G4OverAFII_unconverted_2D.reset(checked_own_cast<TH2*>(
1723 rootFile->Get("FastSim/es2017_v1/scale_Af2ToG4_unco_rel21")));
1724 m_G4OverAFII_converted_2D.reset(checked_own_cast<TH2*>(
1725 rootFile->Get("FastSim/es2017_v1/scale_Af2ToG4_conv_rel21")));
1726 }
1731 m_G4OverAFII_electron_2D.reset(checked_own_cast<TH2*>(
1732 rootFile->Get("FastSim/es2023_R22_Run2_v1/scale_AF3ToG4_elec_rel22")));
1733 m_G4OverAFII_electron_2D->SetDirectory(nullptr);
1734 m_G4OverAFII_unconverted_2D.reset(checked_own_cast<TH2*>(
1735 rootFile->Get("FastSim/es2023_R22_Run2_v1/scale_AF3ToG4_unco_rel22")));
1736 m_G4OverAFII_converted_2D.reset(checked_own_cast<TH2*>(
1737 rootFile->Get("FastSim/es2023_R22_Run2_v1/scale_AF3ToG4_conv_rel22")));
1738 }
1740 m_G4OverAFII_electron_2D.reset(checked_own_cast<TH2*>(
1741 rootFile->Get("FastSim/es2024_Run3_v0/scale_AF3ToG4_elec_mc23")));
1742 m_G4OverAFII_electron_2D->SetDirectory(nullptr);
1743 m_G4OverAFII_unconverted_2D.reset(checked_own_cast<TH2*>(
1744 rootFile->Get("FastSim/es2024_Run3_v0/scale_AF3ToG4_unco_mc23")));
1745 m_G4OverAFII_converted_2D.reset(checked_own_cast<TH2*>(
1746 rootFile->Get("FastSim/es2024_Run3_v0/scale_AF3ToG4_conv_mc23")));
1747 // extra systematic file for eta between 1.3 and 1.35 due to double Gaussian peak in Ereco/Etrue
1748 m_G4OverAF_electron_scale_extra_sys.reset(checked_own_cast<TH1*>(
1749 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_scale_AF3ToG4_elec_mc23_1p3_1p35")));
1750 m_G4OverAF_converted_scale_extra_sys.reset(checked_own_cast<TH1*>(
1751 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_scale_AF3ToG4_elec_mc23_1p3_1p35")));
1752 m_G4OverAF_unconverted_scale_extra_sys.reset(checked_own_cast<TH1*>(
1753 rootFile->Get("FastSim/es2024_Run3_v0/adhoc_scale_AF3ToG4_unconv_mc23_1p3_1p35")));
1754 }
1755 else { // run 1
1757 checked_own_cast<TH1*>(rootFile->Get("FastSim/hG4OverAF")));
1758 }
1759 m_G4OverFrSh.reset(
1760 checked_own_cast<TH1*>(rootFile->Get("FastSim/hG4OverFS")));
1761 // ... Leakage systematics
1762
1778 m_leakageConverted.reset(
1779 checked_own_cast<TH1*>(rootFile->Get("Leakage/LeakageDiffConverted")));
1780 m_leakageUnconverted.reset(checked_own_cast<TH1*>(
1781 rootFile->Get("Leakage/LeakageDiffUnconverted")));
1785 m_leakageConverted.reset(checked_own_cast<TH1*>(
1786 rootFile->Get("Leakage/es2017_summer/LeakageDiffConverted")));
1787 m_leakageUnconverted.reset(checked_own_cast<TH1*>(
1788 rootFile->Get("Leakage/es2017_summer/LeakageDiffUnconverted")));
1789 } else {
1790 m_leakageConverted.reset(checked_own_cast<TH1*>(
1791 rootFile->Get("Leakage/es2023_R22_Run2_v0/LeakageDiffConverted")));
1792 m_leakageUnconverted.reset(checked_own_cast<TH1*>(
1793 rootFile->Get("Leakage/es2023_R22_Run2_v0/LeakageDiffUnconverted")));
1794 m_leakageElectron.reset(checked_own_cast<TH1*>(
1795 rootFile->Get("Leakage/es2023_R22_Run2_v0/LeakageDiffElectron")));
1796 m_leakageElectron->SetDirectory(nullptr);
1797 }
1798 if (m_leakageConverted.get() && m_leakageUnconverted.get()) {
1799 m_leakageConverted->SetDirectory(nullptr);
1800 m_leakageUnconverted->SetDirectory(nullptr);
1801 } else {
1802 ATH_MSG_INFO("No leakage systematic uncertainty for ES model "
1803 << m_esmodel);
1804 }
1805
1806 // ... Zee S2 profile (needed for gain switch syst).
1807 m_zeeES2Profile.reset(
1808 checked_own_cast<TH1*>(rootFile->Get("ZeeEnergyProfiles/p2MC")));
1809 // mean Zee energy as function of eta
1811 m_meanZeeProfile.reset(checked_own_cast<TProfile*>(
1812 rootFile->Get("ZeeMeanET/es2024_Run3_v0/MC_eta_vs_et_profiled")));
1813 }
1814 // R22 Run 2
1815 else{
1816 m_meanZeeProfile.reset(checked_own_cast<TProfile*>(
1817 rootFile->Get("ZeeMeanET/MC_eta_vs_et_profiled")));
1818 }
1819 // OK, now we are all initialized and everything went fine
1820 m_initialized = true;
1821 return 1;
1822}
#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:130
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 4730 of file egammaEnergyCorrectionTool.cxx.

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

◆ mcConstantTerm()

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

Definition at line 2638 of file egammaEnergyCorrectionTool.cxx.

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

◆ mcNoiseTerm()

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

Definition at line 2619 of file egammaEnergyCorrectionTool.cxx.

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

◆ mcSamplingTerm()

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

Definition at line 2583 of file egammaEnergyCorrectionTool.cxx.

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

◆ mcSamplingTermRelError()

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

Definition at line 2611 of file egammaEnergyCorrectionTool.cxx.

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

◆ mcZPeakResolution()

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

Definition at line 2681 of file egammaEnergyCorrectionTool.cxx.

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

◆ 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 4735 of file egammaEnergyCorrectionTool.cxx.

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

◆ pileUpTerm()

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

Definition at line 4755 of file egammaEnergyCorrectionTool.cxx.

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

◆ 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 2867 of file egammaEnergyCorrectionTool.cxx.

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

◆ resolutionError()

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

Definition at line 2828 of file egammaEnergyCorrectionTool.cxx.

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

460{ m_useL2GainCorrection = true; }

◆ setApplyL2GainInterpolation()

void AtlasRoot::egammaEnergyCorrectionTool::setApplyL2GainInterpolation ( )
inline

Definition at line 461 of file egammaEnergyCorrectionTool.h.

461{ m_useL2GainInterpolation = true; }

◆ setApplyLeakageCorrection()

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

Definition at line 464 of file egammaEnergyCorrectionTool.h.

464 {
467 }

◆ setESModel()

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

◆ setFileName()

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

Definition at line 398 of file egammaEnergyCorrectionTool.h.

398{ 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 401 of file egammaEnergyCorrectionTool.h.

401{ m_RunNumber = runn; }

◆ use_temp_correction201215()

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

Definition at line 405 of file egammaEnergyCorrectionTool.h.

405 {
407 }
bool flag
Definition master.py:29

◆ use_temp_correction201516()

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

Definition at line 408 of file egammaEnergyCorrectionTool.h.

408 {
410 }

◆ use_uA2MeV_2015_first2weeks_correction()

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

Definition at line 411 of file egammaEnergyCorrectionTool.h.

◆ useStatErrorScaling()

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

Definition at line 403 of file egammaEnergyCorrectionTool.h.

◆ variationName() [1/2]

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

Definition at line 5334 of file egammaEnergyCorrectionTool.cxx.

5335 {
5336 switch (var) {
5338 return "Resolution::None";
5340 return "Resolution::Nominal";
5342 return "Resolution::AllDown";
5344 return "Resolution::AllUp";
5346 return "Resolution::ZSmearingUp";
5348 return "Resolution::ZSmearingDown";
5350 return "Resolution::SamplingTermUp";
5352 return "Resolution::SamplingTermDown";
5354 return "Resolution::MaterialUp";
5356 return "Resolution::MaterialDown";
5358 return "Resolution::MaterialUp";
5360 return "Resolution::MaterialDown";
5362 return "Resolution::MaterialUp";
5364 return "Resolution::MaterialDown";
5366 return "Resolution::MaterialUp";
5368 return "Resolution::MaterialDown";
5370 return "Resolution::PileUpUp";
5372 return "Resolution::PileUpDown";
5374 return "Resolution::MaterialPP0Up";
5376 return "Resolution::MaterialPP0Down";
5378 return "Resolution::MaterialIBLUp";
5380 return "Resolution::MaterialIBLDown";
5382 return "Resolution::afUp";
5384 return "Resolution::afDown";
5386 return "Resolution::OFCUp";
5388 return "Resolution::OFCDown";
5390 return "LastResolutionVariation";
5391 default:
5392 return "Resolution::Unknown";
5393 }
5394}

◆ variationName() [2/2]

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

Definition at line 5136 of file egammaEnergyCorrectionTool.cxx.

5137 {
5138 switch (var) {
5140 return "None";
5142 return "Nominal";
5144 return "topoClusterThresUp";
5146 return "topoClusterThresDown";
5148 return "MomentumUp";
5150 return "MomentumDown";
5152 return "ZeeStatUp";
5154 return "ZeeStatDown";
5156 return "ZeeSystUp";
5158 return "ZeeSystDown";
5160 return "ZeePhysUp";
5162 return "ZeePhysDown";
5164 return "ZeeAllUp";
5166 return "ZeeAllDown";
5168 return "LArCalibUp";
5170 return "LArCalibDown";
5172 return "LArUnconvCalibUp";
5174 return "LArUnconvCalibDown";
5176 return "LArElecCalibUp";
5178 return "LArElecCalibDown";
5180 return "LArCalibExtra2015PreUp";
5182 return "LArCalibExtra2015PreDown";
5184 return "LArElecUnconvUp";
5186 return "LArElecUnconvDown";
5188 return "G4Up";
5190 return "G4Down";
5192 return "PSUp";
5194 return "PSDown";
5196 return "PSb12Up";
5198 return "PSb12Down";
5200 return "S12Up";
5202 return "S12Down";
5204 return "S12ExtraLastEtaBinRun2Up";
5206 return "S12ExtraLastEtaBinRun2Down";
5208 return "MatIDUp";
5210 return "MatIDDown";
5212 return "MatCryoUp";
5214 return "MatCryoDown";
5216 return "MatCaloUp";
5218 return "MatCaloDown";
5220 return "L1GainUp";
5222 return "L1GainDown";
5224 return "L2GainUp";
5226 return "L2GainDown";
5228 return "L2LowGainDown";
5230 return "L2LowGainUp";
5232 return "L2MediumGainDown";
5234 return "L2MediumGainUp";
5236 return "ADCLinUp";
5238 return "ADCLinDown";
5240 return "LeakageElecUp";
5242 return "LeakageElecDown";
5244 return "ConvRecoUp";
5246 return "ConvRecoDown";
5248 return "afUp";
5250 return "afDown";
5252 return "LeakageUnconvUp";
5254 return "LeakageUnconvDown";
5256 return "LeakageConvUp";
5258 return "LeakageConvDown";
5260 return "ConvEfficiencyUp";
5262 return "ConvEfficiencyDown";
5264 return "ConvFakeRateUp";
5266 return "ConvFakeRateDown";
5268 return "ConvRadiusUp";
5270 return "ConvRadiusDown";
5272 return "PedestalUp";
5274 return "PedestalDown";
5276 return "AllUp";
5278 return "AllDown";
5280 return "AllCorrelatedUp";
5282 return "AllCorrelatedDown";
5284 return "LArTemperature2015PreUp";
5286 return "LArTemperature2015PreDown";
5288 return "LArTemperature2016PreUp";
5290 return "LArTemperature2016PreDown";
5292 return "E4ScintillatorUp";
5294 return "E4ScintillatorDown";
5296 return "MatPP0Up";
5298 return "MatPP0Down";
5300 return "Wtots1Up";
5302 return "Wtots1Down";
5304 return "LastScaleVariation";
5306 return "OFCUp";
5308 return "OFCDown";
5310 return "EXTRARUN3PREUp";
5312 return "EXTRARUN3PREDown";
5314 return "PSEXTRARUN3Up";
5316 return "PSEXTRARUN3Down";
5318 return "S12EXTRARUN3Up";
5320 return "S12EXTRARUN3Down";
5322 return "L2MediumGainEXTRARUN3Up";
5324 return "L2MediumGainEXTRARUN3Down";
5326 return "L2LowGainEXTRARUN3Up";
5328 return "L2LowGainEXTRARUN3Down";
5329 default:
5330 return "Unknown";
5331 }
5332}

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 480 of file egammaEnergyCorrectionTool.h.

◆ m_applyPSCorrection

bool AtlasRoot::egammaEnergyCorrectionTool::m_applyPSCorrection
private

Definition at line 827 of file egammaEnergyCorrectionTool.h.

◆ m_applyS12Correction

bool AtlasRoot::egammaEnergyCorrectionTool::m_applyS12Correction
private

Definition at line 828 of file egammaEnergyCorrectionTool.h.

◆ m_aPSNom

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

Definition at line 652 of file egammaEnergyCorrectionTool.h.

◆ m_aS12Nom

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

Definition at line 655 of file egammaEnergyCorrectionTool.h.

◆ m_begRunNumber

unsigned int AtlasRoot::egammaEnergyCorrectionTool::m_begRunNumber
private

Definition at line 646 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigA

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

Definition at line 789 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigEpLp

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

Definition at line 790 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigFpMX

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

Definition at line 791 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigIBL

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

Definition at line 793 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigN

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

Definition at line 792 of file egammaEnergyCorrectionTool.h.

◆ m_convertedBias_ConfigPP0

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

Definition at line 794 of file egammaEnergyCorrectionTool.h.

◆ m_convFakeRate

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

Definition at line 732 of file egammaEnergyCorrectionTool.h.

◆ m_convFakeRate_2D

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

Definition at line 734 of file egammaEnergyCorrectionTool.h.

◆ m_convRadius

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

Definition at line 731 of file egammaEnergyCorrectionTool.h.

◆ m_convRecoEfficiency

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

Definition at line 733 of file egammaEnergyCorrectionTool.h.

◆ m_convRecoEfficiency_2D

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

Definition at line 735 of file egammaEnergyCorrectionTool.h.

◆ m_daPSb12

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

Definition at line 654 of file egammaEnergyCorrectionTool.h.

◆ m_daPSCor

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

Definition at line 653 of file egammaEnergyCorrectionTool.h.

◆ m_daS12Cor

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

Definition at line 656 of file egammaEnergyCorrectionTool.h.

◆ m_dX_ID_Nom

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

Definition at line 682 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPAcc_G4

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

Definition at line 688 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPAcc_GL1

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

Definition at line 690 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPAcc_LAr

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

Definition at line 689 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPAcc_Nom

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

Definition at line 687 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPPS_LAr

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

Definition at line 685 of file egammaEnergyCorrectionTool.h.

◆ m_dX_IPPS_Nom

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

Definition at line 684 of file egammaEnergyCorrectionTool.h.

◆ m_dX_PSAcc_G4

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

Definition at line 693 of file egammaEnergyCorrectionTool.h.

◆ m_dX_PSAcc_LAr

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

Definition at line 694 of file egammaEnergyCorrectionTool.h.

◆ m_dX_PSAcc_Nom

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

Definition at line 692 of file egammaEnergyCorrectionTool.h.

◆ m_e1hg_tool

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

Definition at line 483 of file egammaEnergyCorrectionTool.h.

◆ m_E4ConvertedEtaBins

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

Definition at line 707 of file egammaEnergyCorrectionTool.h.

◆ m_E4ConvertedGraphs

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

Definition at line 708 of file egammaEnergyCorrectionTool.h.

◆ m_E4ElectronEtaBins

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

Definition at line 703 of file egammaEnergyCorrectionTool.h.

◆ m_E4ElectronGraphs

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

Definition at line 704 of file egammaEnergyCorrectionTool.h.

◆ m_E4UnconvertedEtaBins

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

Definition at line 705 of file egammaEnergyCorrectionTool.h.

◆ m_E4UnconvertedGraphs

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

Definition at line 706 of file egammaEnergyCorrectionTool.h.

◆ m_EaccConvertedEtaBins

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

Definition at line 721 of file egammaEnergyCorrectionTool.h.

◆ m_EaccConvertedGraphs

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

Definition at line 722 of file egammaEnergyCorrectionTool.h.

◆ m_EaccElectronEtaBins

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

Definition at line 717 of file egammaEnergyCorrectionTool.h.

◆ m_EaccElectronGraphs

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

Definition at line 718 of file egammaEnergyCorrectionTool.h.

◆ m_EaccUnconvertedEtaBins

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

Definition at line 719 of file egammaEnergyCorrectionTool.h.

◆ m_EaccUnconvertedGraphs

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

Definition at line 720 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigA

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

Definition at line 777 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigEpLp

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

Definition at line 778 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigFpMX

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

Definition at line 779 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigIBL

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

Definition at line 781 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigN

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

Definition at line 780 of file egammaEnergyCorrectionTool.h.

◆ m_electronBias_ConfigPP0

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

Definition at line 782 of file egammaEnergyCorrectionTool.h.

◆ m_endRunNumber

unsigned int AtlasRoot::egammaEnergyCorrectionTool::m_endRunNumber
private

Definition at line 647 of file egammaEnergyCorrectionTool.h.

◆ m_esmodel

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

Definition at line 820 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 815 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 812 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 814 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 811 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 816 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 813 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_converted

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

Definition at line 799 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_converted_2D

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

Definition at line 802 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_electron

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

Definition at line 798 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_electron_2D

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

Definition at line 801 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_resolution_converted

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

Definition at line 808 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_resolution_electron

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

Definition at line 806 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_resolution_unconverted

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

Definition at line 807 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_unconverted

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

Definition at line 800 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverAFII_unconverted_2D

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

Definition at line 803 of file egammaEnergyCorrectionTool.h.

◆ m_G4OverFrSh

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

Definition at line 804 of file egammaEnergyCorrectionTool.h.

◆ m_gain_tool

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

Definition at line 475 of file egammaEnergyCorrectionTool.h.

◆ m_gain_tool_run2

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

Definition at line 477 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 479 of file egammaEnergyCorrectionTool.h.

◆ m_getMaterialDelta

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

Definition at line 482 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 830 of file egammaEnergyCorrectionTool.h.

◆ m_leakageConverted

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

Definition at line 737 of file egammaEnergyCorrectionTool.h.

◆ m_leakageElectron

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

Definition at line 739 of file egammaEnergyCorrectionTool.h.

◆ m_leakageUnconverted

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

Definition at line 738 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 766 of file egammaEnergyCorrectionTool.h.

◆ m_matElectronCstTerm

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

Definition at line 767 of file egammaEnergyCorrectionTool.h.

◆ m_matElectronEtaBins

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

Definition at line 772 of file egammaEnergyCorrectionTool.h.

◆ m_matElectronGraphs

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

Definition at line 773 of file egammaEnergyCorrectionTool.h.

◆ m_matElectronScale

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

Definition at line 764 of file egammaEnergyCorrectionTool.h.

◆ m_matUnconvertedScale

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

Definition at line 765 of file egammaEnergyCorrectionTool.h.

◆ m_matX0Additions

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

Definition at line 768 of file egammaEnergyCorrectionTool.h.

◆ m_meanZeeProfile

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

Definition at line 674 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 679 of file egammaEnergyCorrectionTool.h.

◆ m_peakResMC

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

Definition at line 680 of file egammaEnergyCorrectionTool.h.

◆ m_pedestalL0

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

Definition at line 724 of file egammaEnergyCorrectionTool.h.

◆ m_pedestalL1

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

Definition at line 725 of file egammaEnergyCorrectionTool.h.

◆ m_pedestalL2

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

Definition at line 726 of file egammaEnergyCorrectionTool.h.

◆ m_pedestalL3

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

Definition at line 727 of file egammaEnergyCorrectionTool.h.

◆ m_pedestals_es2017

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

Definition at line 729 of file egammaEnergyCorrectionTool.h.

◆ m_pp0_conv

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

Definition at line 745 of file egammaEnergyCorrectionTool.h.

◆ m_pp0_elec

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

Definition at line 743 of file egammaEnergyCorrectionTool.h.

◆ m_pp0_unconv

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

Definition at line 744 of file egammaEnergyCorrectionTool.h.

◆ m_psConvertedEtaBins

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

Definition at line 700 of file egammaEnergyCorrectionTool.h.

◆ m_psConvertedGraphs

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

Definition at line 701 of file egammaEnergyCorrectionTool.h.

◆ m_psElectronEtaBins

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

Definition at line 696 of file egammaEnergyCorrectionTool.h.

◆ m_psElectronGraphs

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

Definition at line 697 of file egammaEnergyCorrectionTool.h.

◆ m_psUnconvertedEtaBins

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

Definition at line 698 of file egammaEnergyCorrectionTool.h.

◆ m_psUnconvertedGraphs

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

Definition at line 699 of file egammaEnergyCorrectionTool.h.

◆ m_resNom

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

Definition at line 676 of file egammaEnergyCorrectionTool.h.

◆ m_resolution_tool

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

Definition at line 481 of file egammaEnergyCorrectionTool.h.

◆ m_resSyst

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

Definition at line 677 of file egammaEnergyCorrectionTool.h.

◆ m_resSystOFC

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

Definition at line 678 of file egammaEnergyCorrectionTool.h.

◆ m_rootFileName

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

Definition at line 644 of file egammaEnergyCorrectionTool.h.

◆ m_RunNumber

unsigned int AtlasRoot::egammaEnergyCorrectionTool::m_RunNumber
private

Definition at line 648 of file egammaEnergyCorrectionTool.h.

◆ m_s12ConvertedEtaBins

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

Definition at line 714 of file egammaEnergyCorrectionTool.h.

◆ m_s12ConvertedGraphs

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

Definition at line 715 of file egammaEnergyCorrectionTool.h.

◆ m_s12ElectronEtaBins

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

Definition at line 710 of file egammaEnergyCorrectionTool.h.

◆ m_s12ElectronGraphs

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

Definition at line 711 of file egammaEnergyCorrectionTool.h.

◆ m_s12UnconvertedEtaBins

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

Definition at line 712 of file egammaEnergyCorrectionTool.h.

◆ m_s12UnconvertedGraphs

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

Definition at line 713 of file egammaEnergyCorrectionTool.h.

◆ m_trkSyst

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

Definition at line 650 of file egammaEnergyCorrectionTool.h.

◆ m_uA2MeV_2015_first2weeks_correction

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

Definition at line 673 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigA

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

Definition at line 783 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigEpLp

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

Definition at line 784 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigFpMX

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

Definition at line 785 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigIBL

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

Definition at line 787 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigN

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

Definition at line 786 of file egammaEnergyCorrectionTool.h.

◆ m_unconvertedBias_ConfigPP0

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

Definition at line 788 of file egammaEnergyCorrectionTool.h.

◆ m_use_etaCalo_scales

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_etaCalo_scales
private

Definition at line 824 of file egammaEnergyCorrectionTool.h.

◆ m_use_new_resolution_model

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_new_resolution_model
private

Definition at line 831 of file egammaEnergyCorrectionTool.h.

◆ m_use_stat_error_scaling

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_stat_error_scaling
private

Definition at line 832 of file egammaEnergyCorrectionTool.h.

◆ m_use_temp_correction201215

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_temp_correction201215
private

Definition at line 839 of file egammaEnergyCorrectionTool.h.

◆ m_use_temp_correction201516

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_temp_correction201516
private

Definition at line 840 of file egammaEnergyCorrectionTool.h.

◆ m_use_uA2MeV_2015_first2weeks_correction

bool AtlasRoot::egammaEnergyCorrectionTool::m_use_uA2MeV_2015_first2weeks_correction
private

Definition at line 841 of file egammaEnergyCorrectionTool.h.

◆ m_useL2GainCorrection

bool AtlasRoot::egammaEnergyCorrectionTool::m_useL2GainCorrection
private

Definition at line 834 of file egammaEnergyCorrectionTool.h.

◆ m_useL2GainInterpolation

bool AtlasRoot::egammaEnergyCorrectionTool::m_useL2GainInterpolation
private

Definition at line 835 of file egammaEnergyCorrectionTool.h.

◆ m_useLeakageCorrection

bool AtlasRoot::egammaEnergyCorrectionTool::m_useLeakageCorrection
private

Definition at line 836 of file egammaEnergyCorrectionTool.h.

◆ m_usepTInterpolationForLeakage

bool AtlasRoot::egammaEnergyCorrectionTool::m_usepTInterpolationForLeakage
private

Definition at line 837 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 753 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 749 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 751 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 754 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 750 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 752 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 759 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 755 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 757 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 760 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 756 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 758 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_slope_A_data

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

Definition at line 747 of file egammaEnergyCorrectionTool.h.

◆ m_wstot_slope_B_MC

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

Definition at line 748 of file egammaEnergyCorrectionTool.h.

◆ m_zeeES2Profile

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

Definition at line 741 of file egammaEnergyCorrectionTool.h.

◆ m_zeeFwdb

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

Definition at line 668 of file egammaEnergyCorrectionTool.h.

◆ m_zeeFwdk

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

Definition at line 667 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom

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

Definition at line 658 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2015

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

Definition at line 659 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2016

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

Definition at line 660 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2017

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

Definition at line 661 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2018

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

Definition at line 662 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2022

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

Definition at line 663 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2023

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

Definition at line 664 of file egammaEnergyCorrectionTool.h.

◆ m_zeeNom_data2024

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

Definition at line 665 of file egammaEnergyCorrectionTool.h.

◆ m_zeePhys

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

Definition at line 672 of file egammaEnergyCorrectionTool.h.

◆ m_zeeSyst

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

Definition at line 670 of file egammaEnergyCorrectionTool.h.

◆ m_zeeSystOFC

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

Definition at line 671 of file egammaEnergyCorrectionTool.h.


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