ATLAS Offline Software
Loading...
Searching...
No Matches
JetSampling.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_JETSAMPLING_H
6#define JETEVENT_JETSAMPLING_H
7/* ******************************************************************************
8 * @file JetSampling.h
9 * @brief Definition of JetSampling class
10 *
11 * JetSampling is a simple data object that holds information used by different jet
12 * weighting schemes. It is difficult to loop over large number of jet objects,
13 * back navigate for calorimeter and other sub system information in one job in
14 * order to build the function that can be minimized to derieve jet weights. In
15 * order to solve that, JetSampling object is created with the relevant
16 * information for a particular weighting scheme and saved as pool object. It
17 * can then be read back and looped over fairly quickly.
18 *
19 * The interface here is not absolute and duplicates the interfaces used by the
20 * three jet weighting schemes in ATLAS. Therefore there is redundant information
21 * here. It should be tailored to the need of a weighting scheme.
22 *
23 * Oct. 2006: Expand information for H1:
24 * (1) Separate gap into eGap [TileGap1] and eScint [TileGap2,3]. Need
25 * to change JetClassifier but not JetSamplingCalibAlg.
26 *
27 * Dic. 2008:
28 * (1) Finer longitudinal granularity for JetECS
29 * (2) Remove members of JetSum, modify methods to calculate them from JetECS
30 * (3) Add distance to 1st and 2nd Nearest-Truth-Jet
31 * (4) Radial profiles from: Calo Cells and Tracks
32 * (5) Adding Doxygen comments
33 *
34 * @author A.Gupta
35 * @author B.Salvachua
36 *
37 * ****************************************************************************** */
38
39#include "CLHEP/Vector/LorentzVector.h"
40
41#include <array>
42
44{
45 public:
46
47 JetSampling();
48 virtual ~JetSampling();
49
50 const CLHEP::HepLorentzVector& hlv_rec() const { return m_pr; }
51 const CLHEP::HepLorentzVector& hlv_pic() const { return m_pt; }
52 const CLHEP::HepLorentzVector& hlv_ntj() const { return m_pn; }
53 const CLHEP::HepLorentzVector& hlv_ref() const { return m_pd; }
54
55 const CLHEP::HepLorentzVector& hlv_h1() const { return m_h1; }
56 const CLHEP::HepLorentzVector& hlv_pisa() const { return m_pisa; }
57 const CLHEP::HepLorentzVector& hlv_samp() const { return m_samp; }
58
59 void set_hlv_rec( const CLHEP::HepLorentzVector& v ) { m_pr = v; }
60 void set_hlv_pic( const CLHEP::HepLorentzVector& v ) { m_pt = v; }
61 void set_hlv_ntj( const CLHEP::HepLorentzVector& v ) { m_pn = v; }
62 void set_hlv_ref( const CLHEP::HepLorentzVector& v ) { m_pd = v; }
63
64 void set_hlv_h1( const CLHEP::HepLorentzVector& v ) { m_h1 = v; }
65 void set_hlv_pisa( const CLHEP::HepLorentzVector& v ) { m_pisa = v; }
66 void set_hlv_samp( const CLHEP::HepLorentzVector& v ) { m_samp = v; }
67
68 double dR1() { return m_dr1;}
69 double dR2() { return m_dr2;}
70 void set_dR1( double r ) {m_dr1 = r;}
71 void set_dR2( double r ) {m_dr2 = r;}
72
74 // Jet Layers : Used by sampling (or layer) weighting scheme //
76
77 // Methods to access the values of the layers stored in JetSampling class
78 double ejsPreSamplerB() const { return m_ejsPreSamplerB; }
79 double ejsPreSamplerE() const { return m_ejsPreSamplerE; }
80 double ejsEMB1() const { return m_ejsEMB1; }
81 double ejsEME1() const { return m_ejsEME1; }
82 double ejsEMB2() const { return m_ejsEMB2; }
83 double ejsEME2() const { return m_ejsEME2; }
84 double ejsEMB3() const { return m_ejsEMB3; }
85 double ejsEME3() const { return m_ejsEME3; }
86 double ejsTileBar0() const { return m_ejsTileBar0; }
87 double ejsTileExt0() const { return m_ejsTileExt0; }
88 double ejsTileBar1() const { return m_ejsTileBar1; }
89 double ejsTileExt1() const { return m_ejsTileExt1; }
90 double ejsTileBar2() const { return m_ejsTileBar2; }
91 double ejsTileExt2() const { return m_ejsTileExt2; }
92 double ejsHEC0() const { return m_ejsHEC0; }
93 double ejsHEC1() const { return m_ejsHEC1; }
94 double ejsHEC2() const { return m_ejsHEC2; }
95 double ejsHEC3() const { return m_ejsHEC3; }
96 double ejsTileGap1() const { return m_ejsTileGap1; }
97 double ejsTileGap2() const { return m_ejsTileGap2; }
98 double ejsTileGap3() const { return m_ejsTileGap3; }
99 double ejsFCAL0() const { return m_ejsFCAL0; }
100 double ejsFCAL1() const { return m_ejsFCAL1; }
101 double ejsFCAL2() const { return m_ejsFCAL2; }
102
103 // Two methods to cross-check the layer values, filled using layer variables content
104 double jet_had_sum() { return m_ehad; }
105 double jet_em_sum() { return m_eem; }
106
107 // Methods to set the layer variables content and m_ehad and m_eem
108 void set_ejsPreSamplerB(double ejs) { m_ejsPreSamplerB = ejs; m_tot += ejs; m_eem += ejs; }
109 void set_ejsPreSamplerE(double ejs) { m_ejsPreSamplerE = ejs; m_tot += ejs; m_eem += ejs; }
110 void set_ejsEMB1(double ejs) { m_ejsEMB1 = ejs; m_tot += ejs; m_eem += ejs; }
111 void set_ejsEME1(double ejs) { m_ejsEME1 = ejs; m_tot += ejs; m_eem += ejs; }
112 void set_ejsEMB2(double ejs) { m_ejsEMB2 = ejs; m_tot += ejs; m_eem += ejs; }
113 void set_ejsEME2(double ejs) { m_ejsEME2 = ejs; m_tot += ejs; m_eem += ejs; }
114 void set_ejsEMB3(double ejs) { m_ejsEMB3 = ejs; m_tot += ejs; m_eem += ejs; }
115 void set_ejsEME3(double ejs) { m_ejsEME3 = ejs; m_tot += ejs; m_eem += ejs; }
116 void set_ejsTileBar0(double ejs) { m_ejsTileBar0 = ejs; m_tot += ejs; m_ehad += ejs; }
117 void set_ejsTileExt0(double ejs) { m_ejsTileExt0 = ejs; m_tot += ejs; m_ehad += ejs; }
118 void set_ejsTileBar1(double ejs) { m_ejsTileBar1 = ejs; m_tot += ejs; m_ehad += ejs; }
119 void set_ejsTileExt1(double ejs) { m_ejsTileExt1 = ejs; m_tot += ejs; m_ehad += ejs; }
120 void set_ejsTileBar2(double ejs) { m_ejsTileBar2 = ejs; m_tot += ejs; m_ehad += ejs; }
121 void set_ejsTileExt2(double ejs) { m_ejsTileExt2 = ejs; m_tot += ejs; m_ehad += ejs; }
122 void set_ejsHEC0(double ejs) { m_ejsHEC0 = ejs; m_tot += ejs; m_ehad += ejs; }
123 void set_ejsHEC1(double ejs) { m_ejsHEC1 = ejs; m_tot += ejs; m_ehad += ejs; }
124 void set_ejsHEC2(double ejs) { m_ejsHEC2 = ejs; m_tot += ejs; m_ehad += ejs; }
125 void set_ejsHEC3(double ejs) { m_ejsHEC3 = ejs; m_tot += ejs; m_ehad += ejs; }
126 void set_ejsTileGap1(double ejs) { m_ejsTileGap1 = ejs; m_tot += ejs; m_ehad += ejs; }
127 void set_ejsTileGap2(double ejs) { m_ejsTileGap2 = ejs; m_tot += ejs; m_ehad += ejs; }
128 void set_ejsTileGap3(double ejs) { m_ejsTileGap3 = ejs; m_tot += ejs; m_ehad += ejs; }
129 void set_ejsFCAL0(double ejs) { m_ejsFCAL0 = ejs; m_tot += ejs; m_ehad += ejs; }
130 void set_ejsFCAL1(double ejs) { m_ejsFCAL1 = ejs; m_tot += ejs; m_ehad += ejs; }
131 void set_ejsFCAL2(double ejs) { m_ejsFCAL2 = ejs; m_tot += ejs; m_ehad += ejs; }
132
134 // JetSums Interface : As used in H1-style weighting //
136
137 // Methods to access the JetSums, the return values have been calculated using JetECS variables
138 double eEMBCell(const int ireg) const;
139 double eEMBCell(const int ireg, const int ie) const;
140 double eEMECell(const int ireg) const;
141 double eEMECell(const int ireg, const int ie) const;
142 double eTileCell(const int ireg, const int ie) const;
143 double eHecCell(const int ireg, const int ie) const;
144 double eFCalCell(const int ireg, const int ie) const;
145 //
146 //
147 double eCryo() const { return m_eCryo; }
148 double eGap() const { return m_eGap; }
149 double eScint() const { return m_eScint; }
150 double eNull() const { return m_eNull; }
151
152 // Set JetSum have been removed, not needed, substitue call to JetECS
153 //
154 void set_eCryo(double e) { m_eCryo = e; }
155 void set_eGap(double e) { m_eGap = e; }
156 void set_eScint(double e) { m_eScint = e; }
157 void set_eNull(double e) { m_eNull = e; }
158
160 // JetECS Interface : As used in H1-style with finer granularity (H1-layer method)
162
163 // Access functions
164 double ePreSamBCell(const int ireg) const { return m_ePreSamBCell.at(ireg);}
165 double ePreSamECell(const int ireg) const { return m_ePreSamECell.at(ireg);}
166 //
167 double eEMB1Cell(const int ireg) const { return m_eEMB1Cell.at(ireg); }
168 double eEME1Cell(const int ireg) const { return m_eEME1Cell.at(ireg); }
169 //
170 double eEMB2Cell1(const int ireg) const { return m_eEMB2Cell1.at(ireg); }
171 double eEMB2Cell2(const int ireg) const { return m_eEMB2Cell2.at(ireg); }
172 //
173 double eEMB3Cell1(const int ireg) const { return m_eEMB3Cell1.at(ireg); }
174 double eEMB3Cell2(const int ireg) const { return m_eEMB3Cell2.at(ireg); }
175 //
176 double eEME2Cell1(const int ireg) const { return m_eEME2Cell1.at(ireg); }
177 double eEME2Cell2(const int ireg) const { return m_eEME2Cell2.at(ireg); }
178 //
179 double eEME3Cell1(const int ireg) const { return m_eEME3Cell1.at(ireg); }
180 double eEME3Cell2(const int ireg) const { return m_eEME3Cell2.at(ireg); }
181 //
182 double eTileBar0Cell(const int ireg) const { return m_eTileBar0Cell.at(ireg); }
183 double eTileBar1Cell(const int ireg) const { return m_eTileBar1Cell.at(ireg); }
184 double eTileBar2Cell(const int ireg) const { return m_eTileBar2Cell.at(ireg); }
185 //
186 double eTileExt0Cell(const int ireg) const { return m_eTileExt0Cell.at(ireg); }
187 double eTileExt1Cell(const int ireg) const { return m_eTileExt1Cell.at(ireg); }
188 double eTileExt2Cell(const int ireg) const { return m_eTileExt2Cell.at(ireg); }
189 //
190 double eHec0Cell1(const int ireg) const { return m_eHec0Cell1.at(ireg); }
191 double eHec1Cell1(const int ireg) const { return m_eHec1Cell1.at(ireg); }
192 double eHec2Cell1(const int ireg) const { return m_eHec2Cell1.at(ireg); }
193 double eHec3Cell1(const int ireg) const { return m_eHec3Cell1.at(ireg); }
194 //
195 double eHec0Cell2(const int ireg) const { return m_eHec0Cell2.at(ireg); }
196 double eHec1Cell2(const int ireg) const { return m_eHec1Cell2.at(ireg); }
197 double eHec2Cell2(const int ireg) const { return m_eHec2Cell2.at(ireg); }
198 double eHec3Cell2(const int ireg) const { return m_eHec3Cell2.at(ireg); }
199 //
200 double eFCal0Cell(const int ireg) const {return m_eFCal0Cell.at(ireg); }
201 double eFCal1Cell(const int ireg) const {return m_eFCal1Cell.at(ireg); }
202 double eFCal2Cell(const int ireg) const {return m_eFCal2Cell.at(ireg); }
203
204 // Set functions
205 void set_ePreSamBCell(const int ireg, double e) { m_ePreSamBCell.at(ireg) = e; }
206 void set_ePreSamECell(const int ireg, double e) { m_ePreSamECell.at(ireg) = e; }
207 //
208 void set_eEMB1Cell(const int ireg, double e) { m_eEMB1Cell.at(ireg) = e; }
209 void set_eEME1Cell(const int ireg, double e) { m_eEME1Cell.at(ireg) = e; }
210 //
211 void set_eEMB2Cell1(const int ireg, double e) { m_eEMB2Cell1.at(ireg) = e; }
212 void set_eEMB2Cell2(const int ireg, double e) { m_eEMB2Cell2.at(ireg) = e; }
213 //
214 void set_eEMB3Cell1(const int ireg, double e) { m_eEMB3Cell1.at(ireg) = e; }
215 void set_eEMB3Cell2(const int ireg, double e) { m_eEMB3Cell2.at(ireg) = e; }
216 //
217 void set_eEME2Cell1(const int ireg, double e) { m_eEME2Cell1.at(ireg) = e; }
218 void set_eEME2Cell2(const int ireg, double e) { m_eEME2Cell2.at(ireg) = e; }
219 //
220 void set_eEME3Cell1(const int ireg, double e) { m_eEME3Cell1.at(ireg) = e; }
221 void set_eEME3Cell2(const int ireg, double e) { m_eEME3Cell2.at(ireg) = e; }
222 //
223 void set_eTileBar0Cell(const int ireg, double e) { m_eTileBar0Cell.at(ireg)=e; }
224 void set_eTileBar1Cell(const int ireg, double e) { m_eTileBar1Cell.at(ireg)=e; }
225 void set_eTileBar2Cell(const int ireg, double e) { m_eTileBar2Cell.at(ireg)=e; }
226 void set_eTileExt0Cell(const int ireg, double e) { m_eTileExt0Cell.at(ireg)=e; }
227 void set_eTileExt1Cell(const int ireg, double e) { m_eTileExt1Cell.at(ireg)=e; }
228 void set_eTileExt2Cell(const int ireg, double e) { m_eTileExt2Cell.at(ireg)=e; }
229 //
230 void set_eHec0Cell1(const int ireg, double e) { m_eHec0Cell1.at(ireg) = e; }
231 void set_eHec1Cell1(const int ireg, double e) { m_eHec1Cell1.at(ireg) = e; }
232 void set_eHec2Cell1(const int ireg, double e) { m_eHec2Cell1.at(ireg) = e; }
233 void set_eHec3Cell1(const int ireg, double e) { m_eHec3Cell1.at(ireg) = e; }
234 //
235 void set_eHec0Cell2(const int ireg, double e) { m_eHec0Cell2.at(ireg) = e; }
236 void set_eHec1Cell2(const int ireg, double e) { m_eHec1Cell2.at(ireg) = e; }
237 void set_eHec2Cell2(const int ireg, double e) { m_eHec2Cell2.at(ireg) = e; }
238 void set_eHec3Cell2(const int ireg, double e) { m_eHec3Cell2.at(ireg) = e; }
239 //
240
241 void set_eFCal0Cell(const int ireg, double e) {m_eFCal0Cell.at(ireg) = e; }
242 void set_eFCal1Cell(const int ireg, double e) {m_eFCal1Cell.at(ireg) = e; }
243 void set_eFCal2Cell(const int ireg, double e) {m_eFCal2Cell.at(ireg) = e; }
244
245 // Fill energy in raddi around a jet, 10 radii max. Using Calo Cells
246 void set_erad(const int i, double e) {m_erad_cells.at(i) += e; }
247 double get_erad( int i ) { return m_erad_cells.at(i); }
248
249 // Fill eneryg in radii around a jet, 10 radii max. Using tracks
250 // FIXME: fill these values inside JetClassifier, now filled with zeros
251 void set_erad_tracks(const int i, double e){m_erad_tracks.at(i) += e;}
252 double get_erad_tracks( int i) { return m_erad_tracks.at(i); }
253
254 private:
255 friend class JetSamplingCnv_p1;
256 friend class JetSamplingCnv_p2;
257
258 void init(); //>! Initializes to zero all private members
259
261 CLHEP::HepLorentzVector m_pr;
262
264 CLHEP::HepLorentzVector m_pt;
265
267 CLHEP::HepLorentzVector m_pn;
268
271 CLHEP::HepLorentzVector m_pd;
272
273 // Calibrated Jet kinematics.
274 CLHEP::HepLorentzVector m_h1;
275 CLHEP::HepLorentzVector m_pisa;
276 CLHEP::HepLorentzVector m_samp;
277
278 double m_dr1;
279 double m_dr2;
280
281 // Jet sampling layer info
284 double m_ejsEMB1;
285 double m_ejsEME1;
286 double m_ejsEMB2;
287 double m_ejsEME2;
288 double m_ejsEMB3;
289 double m_ejsEME3;
296 double m_ejsHEC0;
297 double m_ejsHEC1;
298 double m_ejsHEC2;
299 double m_ejsHEC3;
306
307 double m_tot;
308 double m_ctot;
309 double m_ehad;
310 double m_eem;
311
312 typedef std::array<double,16> double_array16;
313 typedef std::array<double,10> double_array10;
314
315 double m_eCryo;
316 double m_eGap;
317 double m_eScint;
318 double m_eNull;
319
320 // JetECS: Energy in each cell energy density bin, up to 16 bins
350
351 // Energy in cone radii from Calo cells
353
354 // Energy in cone radii from tracks
356
357};
358#endif //JETEVENT_JETSAMPLING_H
double eHec1Cell1(const int ireg) const
void set_eTileBar0Cell(const int ireg, double e)
void set_eEME3Cell1(const int ireg, double e)
double eEMB1Cell(const int ireg) const
double ejsEMB3() const
Definition JetSampling.h:84
double eTileExt1Cell(const int ireg) const
double ejsTileBar2() const
Definition JetSampling.h:90
double_array16 m_eEME3Cell1
double_array16 m_eEME2Cell2
void set_eScint(double e)
double eEMECell(const int ireg) const
void set_dR2(double r)
Set dR2 value.
Definition JetSampling.h:71
CLHEP::HepLorentzVector m_h1
double_array16 m_eHec0Cell1
double_array16 m_eTileExt2Cell
void set_ejsTileExt0(double ejs)
void set_hlv_ref(const CLHEP::HepLorentzVector &v)
Set 4-momentum for data-driven jets kinematics.
Definition JetSampling.h:62
double eEME2Cell1(const int ireg) const
double eFCal1Cell(const int ireg) const
void set_eHec0Cell1(const int ireg, double e)
double m_ejsTileBar2
const CLHEP::HepLorentzVector & hlv_samp() const
Calibrated Jets Sampling/Layer (could be filled with zeros)
Definition JetSampling.h:57
void set_eTileExt0Cell(const int ireg, double e)
double_array16 m_eEME2Cell1
double_array16 m_eTileExt1Cell
double ejsHEC3() const
Definition JetSampling.h:95
const CLHEP::HepLorentzVector & hlv_rec() const
Uncalibrated jet at EM scale.
Definition JetSampling.h:50
double eScint() const
double ejsHEC1() const
Definition JetSampling.h:93
friend class JetSamplingCnv_p1
double_array16 m_ePreSamECell
void set_ejsFCAL2(double ejs)
double m_ejsHEC1
JetSampling()
JetSampling constructor.
double_array16 m_eEMB3Cell1
double get_erad_tracks(int i)
void set_hlv_rec(const CLHEP::HepLorentzVector &v)
Set 4-momentum for uncalibrated jet.
Definition JetSampling.h:59
double_array16 m_eHec3Cell2
double eEME3Cell2(const int ireg) const
void set_ejsFCAL0(double ejs)
void set_ejsTileGap2(double ejs)
double eGap() const
double ejsTileExt2() const
Definition JetSampling.h:91
void set_ejsTileGap3(double ejs)
double eEMB3Cell1(const int ireg) const
double_array16 m_eEME1Cell
void set_ePreSamECell(const int ireg, double e)
double m_ejsPreSamplerE
double eFCalCell(const int ireg, const int ie) const
void set_eHec0Cell2(const int ireg, double e)
double m_ejsEMB1
double eEMB2Cell2(const int ireg) const
void set_hlv_h1(const CLHEP::HepLorentzVector &v)
Set 4-momentum for Jets H1.
Definition JetSampling.h:64
double_array16 m_eTileBar1Cell
const CLHEP::HepLorentzVector & hlv_pisa() const
Calibrated Jets PISA (could be filled with zeros)
Definition JetSampling.h:56
double m_ctot
CLHEP::HepLorentzVector m_pd
Data driven jet kinematics, reference jet kinematics It could be a CLHEP::HepLorentzVector with the k...
void set_ejsEMB1(double ejs)
double jet_had_sum()
Returns the jet energy deposited in the hadronic calorimeters.
virtual ~JetSampling()
JetSampling destructor.
void set_eHec1Cell2(const int ireg, double e)
void set_eHec1Cell1(const int ireg, double e)
double_array16 m_eFCal2Cell
void set_eHec2Cell2(const int ireg, double e)
double_array16 m_eEME3Cell2
void set_ejsTileExt1(double ejs)
double eHec1Cell2(const int ireg) const
void set_hlv_samp(const CLHEP::HepLorentzVector &v)
Set 4-momentum for Jets Sampling/Layer.
Definition JetSampling.h:66
CLHEP::HepLorentzVector m_pisa
void set_dR1(double r)
Set dR1 value.
Definition JetSampling.h:70
void set_eTileBar2Cell(const int ireg, double e)
void set_hlv_pisa(const CLHEP::HepLorentzVector &v)
Set 4-momentum for Jets PISA.
Definition JetSampling.h:65
double eHec0Cell2(const int ireg) const
void set_ejsTileBar0(double ejs)
double m_ejsEMB2
void set_eHec3Cell2(const int ireg, double e)
void set_eGap(double e)
void set_ejsEMB3(double ejs)
double m_ejsTileExt1
double m_eNull
friend class JetSamplingCnv_p2
double eHec3Cell2(const int ireg) const
void set_eEMB3Cell1(const int ireg, double e)
double m_ejsEME3
double ejsFCAL1() const
void set_ePreSamBCell(const int ireg, double e)
void set_ejsEME2(double ejs)
double m_ejsFCAL0
std::array< double, 16 > double_array16
double eEMB3Cell2(const int ireg) const
CLHEP::HepLorentzVector m_pt
Particle-In-Cone jet kinematics.
void set_ejsEME3(double ejs)
double ejsTileBar0() const
Definition JetSampling.h:86
void set_eEME2Cell1(const int ireg, double e)
double ejsEME2() const
Definition JetSampling.h:83
double m_ejsTileGap1
void set_eCryo(double e)
CLHEP::HepLorentzVector m_samp
void set_eEME1Cell(const int ireg, double e)
double m_ejsFCAL2
double m_ejsTileGap3
void set_eTileExt2Cell(const int ireg, double e)
void set_ejsTileGap1(double ejs)
void set_eTileExt1Cell(const int ireg, double e)
const CLHEP::HepLorentzVector & hlv_pic() const
PIC: Particle-In-Cone Jet (Truth/Reference jet)
Definition JetSampling.h:51
double dR1()
Distance (eta,phi) from reconstructed jet to closest NTJ.
Definition JetSampling.h:68
void set_eHec3Cell1(const int ireg, double e)
void set_ejsFCAL1(double ejs)
double eTileBar1Cell(const int ireg) const
double get_erad(int i)
double m_ehad
void set_eEME2Cell2(const int ireg, double e)
double m_eScint
double m_ejsTileExt2
double ejsEMB2() const
Definition JetSampling.h:82
void set_eNull(double e)
void set_ejsTileExt2(double ejs)
double m_ejsTileGap2
double eEME2Cell2(const int ireg) const
double_array16 m_eHec1Cell1
void set_ejsPreSamplerE(double ejs)
void set_ejsPreSamplerB(double ejs)
double_array16 m_eTileBar0Cell
double ejsPreSamplerE() const
Definition JetSampling.h:79
double ePreSamECell(const int ireg) const
std::array< double, 10 > double_array10
void set_hlv_ntj(const CLHEP::HepLorentzVector &v)
Set 4-momentum for Nearest-Truth-Jet.
Definition JetSampling.h:61
void set_ejsHEC1(double ejs)
double_array16 m_eHec1Cell2
double eEMB2Cell1(const int ireg) const
void set_hlv_pic(const CLHEP::HepLorentzVector &v)
Set 4-momentum for Particle-In-Cone jet.
Definition JetSampling.h:60
double ejsTileGap2() const
Definition JetSampling.h:97
double eNull() const
double eHec2Cell2(const int ireg) const
void set_ejsEME1(double ejs)
void set_eEMB1Cell(const int ireg, double e)
void set_ejsTileBar1(double ejs)
double ejsHEC0() const
Definition JetSampling.h:92
double ejsFCAL2() const
double m_ejsHEC0
void set_eEMB2Cell2(const int ireg, double e)
double_array16 m_ePreSamBCell
double m_ejsHEC3
double eTileExt0Cell(const int ireg) const
double dR2()
Distantce (eta,phi) from reconstructed jet to 2nd closest NTJ.
Definition JetSampling.h:69
double_array16 m_eFCal0Cell
double ejsHEC2() const
Definition JetSampling.h:94
double m_ejsFCAL1
double_array16 m_eEMB2Cell2
double jet_em_sum()
Returns the jet energy deposited in the electromagnetic calorimeters.
double_array16 m_eEMB3Cell2
CLHEP::HepLorentzVector m_pn
Nearest Truth Jet kinematics.
double m_ejsEME1
void set_ejsTileBar2(double ejs)
double eEME3Cell1(const int ireg) const
double_array16 m_eHec2Cell2
double_array10 m_erad_tracks
double m_ejsEME2
void set_eFCal2Cell(const int ireg, double e)
CLHEP::HepLorentzVector m_pr
Reconstructed Jet at EM scale kinematics.
double_array16 m_eHec2Cell1
double eTileBar0Cell(const int ireg) const
double m_eGap
const CLHEP::HepLorentzVector & hlv_h1() const
Calibrated Jets H1 (could be filled with zeros)
Definition JetSampling.h:55
void set_eEME3Cell2(const int ireg, double e)
double m_ejsHEC2
double_array16 m_eEMB1Cell
double ejsEMB1() const
Definition JetSampling.h:80
double eHec0Cell1(const int ireg) const
double m_ejsTileBar0
double ejsTileGap3() const
Definition JetSampling.h:98
void set_erad_tracks(const int i, double e)
double ejsPreSamplerB() const
Definition JetSampling.h:78
double eHecCell(const int ireg, const int ie) const
double eHec3Cell1(const int ireg) const
double m_ejsEMB3
double eTileExt2Cell(const int ireg) const
double ejsTileGap1() const
Definition JetSampling.h:96
double eEME1Cell(const int ireg) const
double eTileCell(const int ireg, const int ie) const
double_array16 m_eFCal1Cell
void set_eFCal0Cell(const int ireg, double e)
double_array10 m_erad_cells
double ejsTileBar1() const
Definition JetSampling.h:88
double eTileBar2Cell(const int ireg) const
void set_ejsHEC2(double ejs)
double eHec2Cell1(const int ireg) const
double_array16 m_eTileBar2Cell
void set_eHec2Cell1(const int ireg, double e)
double_array16 m_eEMB2Cell1
void set_eTileBar1Cell(const int ireg, double e)
void set_erad(const int i, double e)
double ejsTileExt1() const
Definition JetSampling.h:89
double ejsEME1() const
Definition JetSampling.h:81
double eFCal0Cell(const int ireg) const
double m_ejsTileBar1
double eEMBCell(const int ireg) const
double ejsEME3() const
Definition JetSampling.h:85
void set_eFCal1Cell(const int ireg, double e)
double m_eCryo
void set_ejsHEC0(double ejs)
double_array16 m_eTileExt0Cell
double eCryo() const
void set_eEMB3Cell2(const int ireg, double e)
double eFCal2Cell(const int ireg) const
void set_eEMB2Cell1(const int ireg, double e)
double ePreSamBCell(const int ireg) const
double m_ejsPreSamplerB
double ejsFCAL0() const
Definition JetSampling.h:99
double m_ejsTileExt0
double_array16 m_eHec0Cell2
void set_ejsHEC3(double ejs)
double ejsTileExt0() const
Definition JetSampling.h:87
void set_ejsEMB2(double ejs)
const CLHEP::HepLorentzVector & hlv_ntj() const
NTJ: Nearest-Truth-Jet (Truth/Reference jet)
Definition JetSampling.h:52
double_array16 m_eHec3Cell1
const CLHEP::HepLorentzVector & hlv_ref() const
Data-driven jets kinematics, Reference jet.
Definition JetSampling.h:53
int r
Definition globals.cxx:22