ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
ElectronPhotonID
ElectronPhotonFourMomentumCorrection
ElectronPhotonFourMomentumCorrection
GainUncertainty.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef ELECTRONPHOTONFOURMOMENTUMCORRECTION_GAINUNCERTAINTYY_H
6
#define ELECTRONPHOTONFOURMOMENTUMCORRECTION_GAINUNCERTAINTYY_H
7
8
#include <
AsgMessaging/AsgMessaging.h
>
9
#include <
PATCore/PATCoreEnums.h
>
10
11
#include <string>
12
13
class
TH1;
14
15
namespace
egGain
{
16
17
class
GainUncertainty
:
public
asg::AsgMessaging
{
18
public
:
19
GainUncertainty
(
const
std::string& filename,
bool
splitGainUnc =
false
,
20
const
std::string& name =
"GainUncertainty"
,
21
bool
setInterpolation =
false
);
22
~GainUncertainty
();
23
enum class
GainType
{
MEDIUM
,
LOW
,
MEDIUMLOW
};
24
25
// return relative uncertainty on energy from gain uncertainty
26
// input etaCalo_input = eta in Calo frame
27
// et_input = Et in MeV
28
// ptype = particle type
29
30
double
getUncertainty
(
31
double
etaCalo_input,
double
et_input,
32
PATCore::ParticleType::Type
ptype =
PATCore::ParticleType::Electron
,
33
bool
useUncertainty =
false
,
34
GainType
gainType =
GainType::MEDIUMLOW
)
const
;
35
36
private
:
37
static
const
int
s_nEtaBins
= 5;
38
TH1*
m_alpha_specialGainRun
;
39
TH1*
m_gain_impact_Zee
;
40
TH1*
m_gain_Impact_elec
[
s_nEtaBins
]{};
41
TH1*
m_gain_Impact_conv
[
s_nEtaBins
]{};
42
TH1*
m_gain_Impact_unco
[
s_nEtaBins
]{};
43
TH1*
m_gain_Impact_elec_medium
[
s_nEtaBins
]{};
44
TH1*
m_gain_Impact_conv_medium
[
s_nEtaBins
]{};
45
TH1*
m_gain_Impact_unco_medium
[
s_nEtaBins
]{};
46
TH1*
m_gain_Impact_elec_low
[
s_nEtaBins
]{};
47
TH1*
m_gain_Impact_conv_low
[
s_nEtaBins
]{};
48
TH1*
m_gain_Impact_unco_low
[
s_nEtaBins
]{};
49
50
bool
m_useInterpolation
;
51
};
52
53
}
// namespace egGain
54
55
#endif
AsgMessaging.h
PATCoreEnums.h
asg::AsgMessaging
Class mimicking the AthMessaging class from the offline software.
Definition
AsgMessaging.h:40
egGain::GainUncertainty::s_nEtaBins
static const int s_nEtaBins
Definition
GainUncertainty.h:37
egGain::GainUncertainty::m_gain_Impact_conv
TH1 * m_gain_Impact_conv[s_nEtaBins]
Definition
GainUncertainty.h:41
egGain::GainUncertainty::m_useInterpolation
bool m_useInterpolation
Definition
GainUncertainty.h:50
egGain::GainUncertainty::m_gain_Impact_elec_low
TH1 * m_gain_Impact_elec_low[s_nEtaBins]
Definition
GainUncertainty.h:46
egGain::GainUncertainty::m_gain_impact_Zee
TH1 * m_gain_impact_Zee
Definition
GainUncertainty.h:39
egGain::GainUncertainty::getUncertainty
double getUncertainty(double etaCalo_input, double et_input, PATCore::ParticleType::Type ptype=PATCore::ParticleType::Electron, bool useUncertainty=false, GainType gainType=GainType::MEDIUMLOW) const
Definition
GainUncertainty.cxx:106
egGain::GainUncertainty::GainType
GainType
Definition
GainUncertainty.h:23
egGain::GainUncertainty::GainType::MEDIUMLOW
@ MEDIUMLOW
Definition
GainUncertainty.h:23
egGain::GainUncertainty::GainType::LOW
@ LOW
Definition
GainUncertainty.h:23
egGain::GainUncertainty::GainType::MEDIUM
@ MEDIUM
Definition
GainUncertainty.h:23
egGain::GainUncertainty::~GainUncertainty
~GainUncertainty()
Definition
GainUncertainty.cxx:84
egGain::GainUncertainty::GainUncertainty
GainUncertainty(const std::string &filename, bool splitGainUnc=false, const std::string &name="GainUncertainty", bool setInterpolation=false)
Definition
GainUncertainty.cxx:17
egGain::GainUncertainty::m_alpha_specialGainRun
TH1 * m_alpha_specialGainRun
Definition
GainUncertainty.h:38
egGain::GainUncertainty::m_gain_Impact_elec_medium
TH1 * m_gain_Impact_elec_medium[s_nEtaBins]
Definition
GainUncertainty.h:43
egGain::GainUncertainty::m_gain_Impact_unco_medium
TH1 * m_gain_Impact_unco_medium[s_nEtaBins]
Definition
GainUncertainty.h:45
egGain::GainUncertainty::m_gain_Impact_unco
TH1 * m_gain_Impact_unco[s_nEtaBins]
Definition
GainUncertainty.h:42
egGain::GainUncertainty::m_gain_Impact_conv_medium
TH1 * m_gain_Impact_conv_medium[s_nEtaBins]
Definition
GainUncertainty.h:44
egGain::GainUncertainty::m_gain_Impact_unco_low
TH1 * m_gain_Impact_unco_low[s_nEtaBins]
Definition
GainUncertainty.h:48
egGain::GainUncertainty::m_gain_Impact_conv_low
TH1 * m_gain_Impact_conv_low[s_nEtaBins]
Definition
GainUncertainty.h:47
egGain::GainUncertainty::m_gain_Impact_elec
TH1 * m_gain_Impact_elec[s_nEtaBins]
Definition
GainUncertainty.h:40
PATCore::ParticleType::Type
Type
Definition
PATCoreEnums.h:35
PATCore::ParticleType::Electron
@ Electron
Definition
PATCoreEnums.h:40
egGain
Definition
EgammaCalibrationAndSmearingTool.h:43
Generated on
for ATLAS Offline Software by
1.17.0