ATLAS Offline Software
Reconstruction
Jet
JetEvent
JetEvent
JetMoment.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef JETEVENT_JETMOMENT_H
6
#define JETEVENT_JETMOMENT_H
7
8
#include <tuple>
9
#include <string>
10
11
struct
JetMoment
12
{
13
typedef
float
float_t
;
14
typedef
bool
tag_t
;
15
typedef
std::tuple<float_t,tag_t>
database_t
;
16
17
static
float_t
invalidMoment
() {
return
float_t
(0.); }
18
19
20
class
MomentData
:
public
database_t
21
{
22
public
:
23
24
MomentData
() :
database_t
()
25
{
26
this->
setMoment
(0.);
27
this->
setTag
(
false
);
28
}
29
MomentData
(float_t
moment
,
tag_t
tag
) :
database_t
()
30
{
31
this->
setMoment
(moment);
32
this->
setTag
(tag);
33
}
34
35
~MomentData
() =
default
;
36
37
void
setMoment
(
float_t
moment
) { std::get<0>(*
this
) =
moment
; }
38
void
setTag
(
tag_t
tag
) { std::get<1>(*
this
) =
tag
; }
39
void
setData
(
float_t
moment
,
tag_t
tag
)
40
{ std::get<0>(*
this
) =
moment
; std::get<1>(*
this
) =
tag
; }
41
42
float_t
moment
()
const
{
return
std::get<0>(*
this
); }
43
tag_t
tag
()
const
{
return
std::get<1>(*
this
); }
44
45
// private:
46
47
48
};
49
};
50
51
52
53
/* /\** */
54
/* @class JetMoment */
55
/* @authors Michel Lefebvre<lefebvre@uvic.ca>, Peter Loch <loch@physics.arizona.edu>, */
56
/* Rob McPherson <rmcphers@triumf.ca>, Rolf Seuster <seuster@cern.ch> */
57
/* Sasha Savine <savin@physics.arizona.edu> Kai Voss <kvoss@cern.ch> */
58
/* @date 28-February-2005 */
59
/* @brief OBSOLETE defines enums and data types for different moments of @c Jet */
60
61
/* After release 14.1.0 this class becomes obsolete since the new @c Jet class */
62
/* defines directly an equivalent concept */
63
64
/* *\/ */
65
66
/* #include <string> */
67
68
/* class JetMoment { */
69
70
/* public: */
71
/* /\** @brief (DEPRECATED) enums to identify different moments */
72
/* * */
73
/* * Each enum corresponds to a different characteristic moment of a */
74
/* * @c Jet. */
75
/* * */
76
/* *\/ */
77
/* enum MomentType { */
78
/* /\** electro-magnetic energy fraction of jets *\/ */
79
/* EM_FRACTION_MCTRUTH = 0x0001, /\** EM fraction determined from the MC truth *\/ */
80
/* EM_FRACTION_CLUSTER = 0x0002, /\** EM fraction determined from cluster classification *\/ */
81
/* EM_FRACTION_CALIBHIT = 0x0003, /\** EM fraction determined from Calibration Hits *\/ */
82
/* EM_FRACTION_RECOTRACKS = 0x0004, /\** EM fraction determined from reconstructed tracks *\/ */
83
/* EM_ENERGY = 0x0005, /\** jet energy on EM scale *\/ */
84
/* EM_OVER_ESUM = 0x0010, /\** EM energy over jet energy *\/ */
85
86
/* /\** track related quantities - tracks pointing to CaloTopoClusters *\/ */
87
/* TRACKS_E = 0x0080, /\** Sum of energy from reconstructed tracks *\/ */
88
/* TRACKS_P = 0x0081, /\** magnitude of Sum of momenta from reconstructed tracks *\/ */
89
/* TRACKS_SUM_P = 0x0082, /\** scalar Sum of momenta magnitude from reconstructed tracks *\/ */
90
/* TRACKS_DELTA_ETA = 0x0083, /\** difference in eta between tracks and jet *\/ */
91
/* TRACKS_DELTA_PHI = 0x0084, /\** difference in phi between tracks and jet *\/ */
92
/* TRACKS_RMS_ETA = 0x0085, /\** squares of differences in eta between tracks and their sum *\/ */
93
/* TRACKS_RMS_PHI = 0x0086, /\** squares of differences in phi between tracks and their sum *\/ */
94
95
/* /\** measures for the jet area *\/ */
96
/* CALOAREA = 0x0101, /\** Area computed from the CaloCell area inside the jet *\/ */
97
/* AMAREA = 0x0102, /\** Area computed from Angular (2nd) Moments : A=M2(eta)*M2(phi) *\/ */
98
/* GHOSTAREA = 0x0103, /\** Area computed via energyless ghost particles *\/ */
99
/* ELLIPTICAREA = 0x0104, /\** Area computed via circles around constituents *\/ */
100
/* ENG_FR005 = 0x0110, /\** fraction of energy in 5% of max distance parameter (R or kT)*\/ */
101
/* ENG_FR010 = 0x0111, /\** fraction of energy in 10% of max distance parameter (R or kT)*\/ */
102
/* ENG_FR015 = 0x0112, /\** fraction of energy in 15% of max distance parameter (R or kT)*\/ */
103
/* ENG_FR025 = 0x0113, /\** fraction of energy in 25% of max distance parameter (R or kT)*\/ */
104
/* ENG_FR050 = 0x0114, /\** fraction of energy in 50% of max distance parameter (R or kT)*\/ */
105
/* WIDTH = 0x0121, /\** pT weighted sum of constituent DR wrt to the jet axis *\/ */
106
107
/* /\** sub jet structure of jets *\/ */
108
/* FLIP_Y12 = 0x0181, /\** for kT: flip value for 1->2 subjets *\/ */
109
/* FLIP_Y23 = 0x0182, /\** for kT: flip value for 2->3 subjets *\/ */
110
/* FLIP_Y34 = 0x0183, /\** for kT: flip value for 3->4 subjets *\/ */
111
/* FLIP_Y45 = 0x0184, /\** for kT: flip value for 4->5 subjets *\/ */
112
113
/* /\** Convex hull of jets *\/ */
114
/* HULL_AREA = 0x0200, */
115
/* HULL_LENGHT = 0x0201, */
116
117
/* /\** noise estimate in the jet */
118
/* *\/ */
119
120
/* NOISEEXT = 0x300, */
121
122
/* /\** Track jet corrections */
123
/* *\/ */
124
125
/* SEMILEPTONIC_B_JES = 0x0401, /\** Multiplicative jet energy scale correction to semileptonic b-jets*\/ */
126
/* FTRACK = 0x0402, /\** Fraction of jet energy carried by charged tracks *\/ */
127
/* FTRACK_CORRECTION = 0x0403, /\** Multiplicative correction to jet energy derived from f_Track*\/ */
128
/* PRIMARY_VTX_FRACTION = 0x0404, /\** Matched track pT fraction from 1st (sum pt^2) PV in Event *\/ */
129
/* JVF_CORRECTION = 0x0405, /\** Multiplicative correction to jet energy derived from JVF (above) *\/ */
130
131
/* UNKNOWN = 0x8000 /\** unknown moment *\/ */
132
/* }; */
133
134
/* static const double DEFAULTVALUE; */
135
136
/* private: */
137
138
/* // Friends */
139
140
/* // Data members */
141
142
/* MomentType m_type; */
143
144
/* /\** @brief the value of the cluster moment. *\/ */
145
/* double m_value; */
146
147
/* public: */
148
149
/* /\** */
150
/* * @brief Constructor. */
151
/* * @param value The actual value of the moment */
152
/* *\/ */
153
/* JetMoment(const MomentType &type ,const double &value) */
154
/* : m_type(type), m_value(value) { } */
155
156
/* /\** */
157
/* * @brief default Constructor. */
158
/* * */
159
/* * defines the default moment value */
160
/* *\/ */
161
/* JetMoment() : m_type(UNKNOWN), m_value(0.) { } */
162
163
/* // Destructors */
164
165
/* virtual ~JetMoment() { } */
166
167
/* // Methods */
168
169
/* /\** */
170
/* * @brief returns the value of this moment */
171
/* * @return a const reference to the double holding the value of the moment */
172
/* *\/ */
173
/* const double & getValue() const { return m_value; } */
174
175
/* const MomentType & getType() const { return m_type; } */
176
177
/* bool getName(const MomentType& type, std::string& name) const; */
178
179
//};
180
181
#endif // JETEVENT_JETMOMENT_H
182
JetMoment::MomentData::setMoment
void setMoment(float_t moment)
Definition:
JetMoment.h:37
JetMoment::MomentData::~MomentData
~MomentData()=default
JetMoment::float_t
float float_t
Definition:
JetMoment.h:13
JetMoment::MomentData
Definition:
JetMoment.h:21
JetMoment::database_t
std::tuple< float_t, tag_t > database_t
Definition:
JetMoment.h:15
JetMoment::MomentData::tag
tag_t tag() const
Definition:
JetMoment.h:43
JetMoment::tag_t
bool tag_t
Definition:
JetMoment.h:14
JetMoment
Definition:
JetMoment.h:12
JetMoment::MomentData::moment
float_t moment() const
Definition:
JetMoment.h:42
JetMoment::MomentData::MomentData
MomentData(float_t moment, tag_t tag)
Definition:
JetMoment.h:29
JetMoment::MomentData::MomentData
MomentData()
Definition:
JetMoment.h:24
JetMoment::invalidMoment
static float_t invalidMoment()
Definition:
JetMoment.h:17
JetMoment::MomentData::setTag
void setTag(tag_t tag)
Definition:
JetMoment.h:38
JetMoment::MomentData::setData
void setData(float_t moment, tag_t tag)
Definition:
JetMoment.h:39
Generated on Sun Dec 22 2024 21:12:33 for ATLAS Offline Software by
1.8.18