ATLAS Offline Software
Loading...
Searching...
No Matches
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
10
11#include <string>
12
13class TH1;
14
15namespace egGain {
16
18 public:
19 GainUncertainty(const std::string& filename, bool splitGainUnc = false,
20 const std::string& name = "GainUncertainty",
21 bool setInterpolation = false);
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,
33 bool useUncertainty = false,
34 GainType gainType = GainType::MEDIUMLOW) const;
35
36 private:
37 static const int s_nEtaBins = 5;
49
51};
52
53} // namespace egGain
54
55#endif
Class mimicking the AthMessaging class from the offline software.
static const int s_nEtaBins
TH1 * m_gain_Impact_conv[s_nEtaBins]
TH1 * m_gain_Impact_elec_low[s_nEtaBins]
double getUncertainty(double etaCalo_input, double et_input, PATCore::ParticleType::Type ptype=PATCore::ParticleType::Electron, bool useUncertainty=false, GainType gainType=GainType::MEDIUMLOW) const
GainUncertainty(const std::string &filename, bool splitGainUnc=false, const std::string &name="GainUncertainty", bool setInterpolation=false)
TH1 * m_gain_Impact_elec_medium[s_nEtaBins]
TH1 * m_gain_Impact_unco_medium[s_nEtaBins]
TH1 * m_gain_Impact_unco[s_nEtaBins]
TH1 * m_gain_Impact_conv_medium[s_nEtaBins]
TH1 * m_gain_Impact_unco_low[s_nEtaBins]
TH1 * m_gain_Impact_conv_low[s_nEtaBins]
TH1 * m_gain_Impact_elec[s_nEtaBins]