ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
Algorithms
KLFitterAnalysisAlgorithms
KLFitterAnalysisAlgorithms
KLFitterEnums.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
7
8
#ifndef KLFITTERNANALYSISALGORITHMS_KLFITTERENUMS_H_
9
#define KLFITTERNANALYSISALGORITHMS_KLFITTERENUMS_H_
10
11
#include <map>
12
#include <sstream>
13
14
#include "KLFitter/LikelihoodBase.h"
15
16
namespace
EventReco
{
17
namespace
KLFEnums
{
18
enum
Likelihood
{
19
ttbar
,
20
ttbar_AllHad
,
21
ttbar_JetAngles
,
22
ttbar_Angular
,
23
ttbar_BoostedLJets
,
24
ttH
,
25
ttZTrilepton
26
};
27
enum
LeptonType
{
kNoLepton
,
kElectron
,
kMuon
,
kTriElectron
,
kTriMuon
};
28
29
enum
JetSelectionMode
{
30
kLeadingThree
,
31
kLeadingFour
,
32
kLeadingFive
,
33
kLeadingSix
,
34
kLeadingSeven
,
35
kLeadingEight
,
36
// keep btag priority and non-btag priority enum values separate
37
kBtagPriorityThreeJets
,
38
kBtagPriorityFourJets
,
39
kBtagPriorityFiveJets
,
40
kBtagPrioritySixJets
,
41
kBtagPrioritySevenJets
,
42
kBtagPriorityEightJets
43
};
44
45
static
const
std::map<std::string, LeptonType>
strToLeptonType
{
46
{
"kNoLepton"
,
kNoLepton
},
47
{
"kElectron"
,
kElectron
},
48
{
"kMuon"
,
kMuon
},
49
{
"kTriElectron"
,
kTriElectron
},
50
{
"kTriMuon"
,
kTriMuon
}};
51
52
static
const
std::map<std::string, Likelihood>
strToLikelihood
{
53
{
"ttbar"
,
ttbar
},
54
{
"ttbar_AllHad"
,
ttbar_AllHad
},
55
{
"ttbar_JetAngles"
,
ttbar_JetAngles
},
56
{
"ttbar_Angular"
,
ttbar_Angular
},
57
{
"ttbar_BoostedLJets"
,
ttbar_BoostedLJets
},
58
{
"ttH"
,
ttH
},
59
{
"ttZTrilepton"
,
ttZTrilepton
}};
60
61
static
const
std::map<std::string, JetSelectionMode>
strToJetSelection
{
62
{
"kLeadingThree"
,
kLeadingThree
},
63
{
"kLeadingFour"
,
kLeadingFour
},
64
{
"kLeadingFive"
,
kLeadingFive
},
65
{
"kLeadingSix"
,
kLeadingSix
},
66
{
"kLeadingSeven"
,
kLeadingSeven
},
67
{
"kLeadingEight"
,
kLeadingEight
},
68
{
"kBtagPriorityThreeJets"
,
kBtagPriorityThreeJets
},
69
{
"kBtagPriorityFourJets"
,
kBtagPriorityFourJets
},
70
{
"kBtagPriorityFiveJets"
,
kBtagPriorityFiveJets
},
71
{
"kBtagPrioritySixJets"
,
kBtagPrioritySixJets
},
72
{
"kBtagPrioritySevenJets"
,
kBtagPrioritySevenJets
},
73
{
"kBtagPriorityEightJets"
,
kBtagPriorityEightJets
}};
74
75
using
KLFitter::LikelihoodBase;
76
static
const
std::map<std::string, LikelihoodBase::BtaggingMethod>
77
strToBtagMethod
{
78
{
"kNotag"
, LikelihoodBase::BtaggingMethod::kNotag},
79
{
"kVetoNoFit"
, LikelihoodBase::BtaggingMethod::kVetoNoFit},
80
{
"kVetoNoFitLight"
, LikelihoodBase::BtaggingMethod::kVetoNoFitLight},
81
{
"kVetoNoFitBoth"
, LikelihoodBase::BtaggingMethod::kVetoNoFitBoth},
82
{
"kVetoHybridNoFit"
, LikelihoodBase::BtaggingMethod::kVetoHybridNoFit},
83
{
"kWorkingPoint"
, LikelihoodBase::BtaggingMethod::kWorkingPoint},
84
{
"kVeto"
, LikelihoodBase::BtaggingMethod::kVeto},
85
{
"kVetoLight"
, LikelihoodBase::BtaggingMethod::kVetoLight},
86
{
"kVetoBoth"
, LikelihoodBase::BtaggingMethod::kVetoBoth}};
87
88
static
const
std::map<JetSelectionMode, size_t>
jetSelToNumber
{
89
{
kLeadingThree
, 3}, {
kLeadingFour
, 4},
90
{
kLeadingFive
, 5}, {
kLeadingSix
, 6},
91
{
kLeadingSeven
, 7}, {
kLeadingEight
, 8},
92
{
kBtagPriorityThreeJets
, 3}, {
kBtagPriorityFourJets
, 4},
93
{
kBtagPriorityFiveJets
, 5}, {
kBtagPrioritySixJets
, 6},
94
{
kBtagPrioritySevenJets
, 7}, {
kBtagPriorityEightJets
, 8}};
95
96
template
<
class
T>
97
std::string
printEnumOptions
(
const
std::map<std::string, T>& availOpts) {
98
std::stringstream sstream;
99
for
(
const
auto
& elem : availOpts) {
100
sstream << elem.first <<
" "
;
101
}
102
return
sstream.str();
103
}
104
}
// namespace KLFEnums
105
}
// namespace EventReco
106
107
#endif
EventReco::KLFEnums
Definition
KLFitterEnums.h:17
EventReco::KLFEnums::LeptonType
LeptonType
Definition
KLFitterEnums.h:27
EventReco::KLFEnums::kTriElectron
@ kTriElectron
Definition
KLFitterEnums.h:27
EventReco::KLFEnums::kTriMuon
@ kTriMuon
Definition
KLFitterEnums.h:27
EventReco::KLFEnums::kMuon
@ kMuon
Definition
KLFitterEnums.h:27
EventReco::KLFEnums::kElectron
@ kElectron
Definition
KLFitterEnums.h:27
EventReco::KLFEnums::kNoLepton
@ kNoLepton
Definition
KLFitterEnums.h:27
EventReco::KLFEnums::printEnumOptions
std::string printEnumOptions(const std::map< std::string, T > &availOpts)
Definition
KLFitterEnums.h:97
EventReco::KLFEnums::strToLeptonType
static const std::map< std::string, LeptonType > strToLeptonType
Definition
KLFitterEnums.h:45
EventReco::KLFEnums::strToLikelihood
static const std::map< std::string, Likelihood > strToLikelihood
Definition
KLFitterEnums.h:52
EventReco::KLFEnums::JetSelectionMode
JetSelectionMode
Definition
KLFitterEnums.h:29
EventReco::KLFEnums::kLeadingSeven
@ kLeadingSeven
Definition
KLFitterEnums.h:34
EventReco::KLFEnums::kLeadingThree
@ kLeadingThree
Definition
KLFitterEnums.h:30
EventReco::KLFEnums::kLeadingFive
@ kLeadingFive
Definition
KLFitterEnums.h:32
EventReco::KLFEnums::kBtagPriorityThreeJets
@ kBtagPriorityThreeJets
Definition
KLFitterEnums.h:37
EventReco::KLFEnums::kLeadingFour
@ kLeadingFour
Definition
KLFitterEnums.h:31
EventReco::KLFEnums::kBtagPriorityEightJets
@ kBtagPriorityEightJets
Definition
KLFitterEnums.h:42
EventReco::KLFEnums::kLeadingSix
@ kLeadingSix
Definition
KLFitterEnums.h:33
EventReco::KLFEnums::kBtagPrioritySixJets
@ kBtagPrioritySixJets
Definition
KLFitterEnums.h:40
EventReco::KLFEnums::kLeadingEight
@ kLeadingEight
Definition
KLFitterEnums.h:35
EventReco::KLFEnums::kBtagPriorityFourJets
@ kBtagPriorityFourJets
Definition
KLFitterEnums.h:38
EventReco::KLFEnums::kBtagPrioritySevenJets
@ kBtagPrioritySevenJets
Definition
KLFitterEnums.h:41
EventReco::KLFEnums::kBtagPriorityFiveJets
@ kBtagPriorityFiveJets
Definition
KLFitterEnums.h:39
EventReco::KLFEnums::Likelihood
Likelihood
Definition
KLFitterEnums.h:18
EventReco::KLFEnums::ttbar_JetAngles
@ ttbar_JetAngles
Definition
KLFitterEnums.h:21
EventReco::KLFEnums::ttH
@ ttH
Definition
KLFitterEnums.h:24
EventReco::KLFEnums::ttbar_BoostedLJets
@ ttbar_BoostedLJets
Definition
KLFitterEnums.h:23
EventReco::KLFEnums::ttbar
@ ttbar
Definition
KLFitterEnums.h:19
EventReco::KLFEnums::ttZTrilepton
@ ttZTrilepton
Definition
KLFitterEnums.h:25
EventReco::KLFEnums::ttbar_Angular
@ ttbar_Angular
Definition
KLFitterEnums.h:22
EventReco::KLFEnums::ttbar_AllHad
@ ttbar_AllHad
Definition
KLFitterEnums.h:20
EventReco::KLFEnums::strToJetSelection
static const std::map< std::string, JetSelectionMode > strToJetSelection
Definition
KLFitterEnums.h:61
EventReco::KLFEnums::strToBtagMethod
static const std::map< std::string, LikelihoodBase::BtaggingMethod > strToBtagMethod
Definition
KLFitterEnums.h:77
EventReco::KLFEnums::jetSelToNumber
static const std::map< JetSelectionMode, size_t > jetSelToNumber
Definition
KLFitterEnums.h:88
EventReco
Definition
KLFitterEnums.h:16
Generated on
for ATLAS Offline Software by
1.17.0