ATLAS Offline Software
Loading...
Searching...
No Matches
JetSums.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef JETREC_JETSUMS_H
6#define JETREC_JETSUMS_H
7/*****************************************************************************
8Filename : JetSums.h
9Author : Frank Paige
10Created : Sep, 2002
11
12DESCRIPTION:
13
14 This class holds the jet kinematics plus the partial sums of cell
15energies in layers and E/volume ranges, information needed for an
16H1-style energy/volume calibration:
17
18 eEMBCell(ireg) EM barrel, all energies
19 ireg=0 presampler
20 ireg=1 strips
21 eEMBCell(ireg,ie) EM barrel, binned in energy
22 ireg=0 eta<0.8
23 ireg=1 eta>0.8
24
25 eEMECell(ireg) EM endcap, all energies
26 ireg=0 presampler
27 ireg=1 strips
28 eEMECell(ireg,ie) EM endcap, binned in energy
29 ireg=0 eta<2.5
30 ireg=1 eta>2.5
31
32 eTileCell(ireg,ie) Tile, binned in energy
33 ireg=0 barrel
34 ireg=1 extended barrel
35
36 eHecCell(ireg,ie) HEC, binned in energy
37 ireg=0 eta<2.5
38 ireg=1 eta>2.5
39
40 eFCalCell(ireg,ie) FCAL, binned in energy
41 ireg=0 EM section
42 ireg=1 Had sections
43
44 eCryo Cryo correction for cluster
45 eGap Gap E for cluster
46 eNull Cells with zero volume
47
48The energy index ie is given by
49 ie = log(abs((E/MeV)/(V/mm^3)))/log(2) + 26, 0<=i<16
50The region index is not very intuitive but lets us change the regions
51easily.
52
53June 2004: Modified from CombinedJetSums to use Jet and new Navigation.
54We cannot save the parent Jet* because the JetCollection gets copied by
55JetAlgorithm. Hence just save the kinematics. Thanks, Hong.
56
57*****************************************************************************/
58
59class JetSums
60{
61 public:
62
63 // Constructor/destructor
64 JetSums(double e, double et, double eta, double phi, double m);
65 ~JetSums() = default;
66
67 // Access functions
68 double jetE() const { return m_jetE; }
69 double jetEt() const { return m_jetEt; }
70 double jetEta() const { return m_jetEta; }
71 double jetPhi() const { return m_jetPhi; }
72 double jetM() const { return m_jetM; }
73
74 double eEMBCell(const int ireg) const { return m_eEMB0Cell[ireg]; }
75 double eEMBCell(const int ireg, const int ie) const {
76 return m_eEMB1Cell[ireg][ie]; }
77 double eEMECell(const int ireg) const { return m_eEME0Cell[ireg]; }
78 double eEMECell(const int ireg, const int ie) const {
79 return m_eEME1Cell[ireg][ie]; }
80 double eTileCell(const int ireg, const int ie) const {
81 return m_eTileCell[ireg][ie]; }
82 double eHecCell(const int ireg, const int ie) const {
83 return m_eHecCell[ireg][ie]; }
84 double eFCalCell(const int ireg, const int ie) const {
85 return m_eFCalCell[ireg][ie]; }
86 double eCryo() const { return m_eCryo; }
87 double eGap() const { return m_eGap; }
88 double eNull() const { return m_eNull; }
89
90 // Set functions
91 void set_eEMBCell(const int ireg, double e) { m_eEMB0Cell[ireg] = e; }
92 void set_eEMBCell(const int ireg, const int ie, double e) {
93 m_eEMB1Cell[ireg][ie] = e; }
94 void set_eEMECell(const int ireg, double e) { m_eEME0Cell[ireg] = e; }
95 void set_eEMECell(const int ireg, const int ie, double e) {
96 m_eEME1Cell[ireg][ie] = e; }
97 void set_eTileCell(const int ireg, const int ie, double e) {
98 m_eTileCell[ireg][ie] = e; }
99 void set_eHecCell(const int ireg, const int ie, double e) {
100 m_eHecCell[ireg][ie] = e; }
101 void set_eFCalCell(const int ireg, const int ie, double e) {
102 m_eFCalCell[ireg][ie] = e; }
103 void set_eCryo(double e) { m_eCryo = e; }
104 void set_eGap(double e) { m_eGap = e; }
105 void set_eNull(double e) { m_eNull = e; }
106
107 private:
108
109 // Jet Kinematics
110 double m_jetE;
111 double m_jetEt;
112 double m_jetEta;
113 double m_jetPhi;
114 double m_jetM;
115
116 // Cell information
117 static const int m_dim = 20;
118 double m_eEMB0Cell[2];
119 double m_eEMB1Cell[2][m_dim];
120 double m_eEME0Cell[2];
121 double m_eEME1Cell[2][m_dim];
122 double m_eTileCell[2][m_dim];
123 double m_eHecCell[2][m_dim];
124 double m_eFCalCell[2][m_dim];
125 double m_eCryo;
126 double m_eGap;
127 double m_eNull;
128
129};
130#endif //JETREC_COMBINEDJET_H
131
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
JetSums(double e, double et, double eta, double phi, double m)
Definition JetSums.cxx:19
double m_jetE
Definition JetSums.h:110
double eGap() const
Definition JetSums.h:87
double m_eEMB0Cell[2]
Definition JetSums.h:118
double m_eEMB1Cell[2][m_dim]
Definition JetSums.h:119
double m_eNull
Definition JetSums.h:127
double m_eTileCell[2][m_dim]
Definition JetSums.h:122
double m_jetEt
Definition JetSums.h:111
double eEMECell(const int ireg, const int ie) const
Definition JetSums.h:78
double jetE() const
Definition JetSums.h:68
double eHecCell(const int ireg, const int ie) const
Definition JetSums.h:82
void set_eFCalCell(const int ireg, const int ie, double e)
Definition JetSums.h:101
double eCryo() const
Definition JetSums.h:86
double jetM() const
Definition JetSums.h:72
double m_jetM
Definition JetSums.h:114
static const int m_dim
Definition JetSums.h:117
double jetEt() const
Definition JetSums.h:69
void set_eEMBCell(const int ireg, double e)
Definition JetSums.h:91
double m_eCryo
Definition JetSums.h:125
double jetEta() const
Definition JetSums.h:70
void set_eEMECell(const int ireg, const int ie, double e)
Definition JetSums.h:95
double eFCalCell(const int ireg, const int ie) const
Definition JetSums.h:84
double eEMECell(const int ireg) const
Definition JetSums.h:77
double m_eFCalCell[2][m_dim]
Definition JetSums.h:124
void set_eGap(double e)
Definition JetSums.h:104
void set_eNull(double e)
Definition JetSums.h:105
double eEMBCell(const int ireg, const int ie) const
Definition JetSums.h:75
double m_jetEta
Definition JetSums.h:112
void set_eEMBCell(const int ireg, const int ie, double e)
Definition JetSums.h:92
void set_eHecCell(const int ireg, const int ie, double e)
Definition JetSums.h:99
void set_eCryo(double e)
Definition JetSums.h:103
double eNull() const
Definition JetSums.h:88
void set_eTileCell(const int ireg, const int ie, double e)
Definition JetSums.h:97
~JetSums()=default
double eEMBCell(const int ireg) const
Definition JetSums.h:74
void set_eEMECell(const int ireg, double e)
Definition JetSums.h:94
double m_jetPhi
Definition JetSums.h:113
double jetPhi() const
Definition JetSums.h:71
double m_eEME1Cell[2][m_dim]
Definition JetSums.h:121
double m_eEME0Cell[2]
Definition JetSums.h:120
double m_eHecCell[2][m_dim]
Definition JetSums.h:123
double eTileCell(const int ireg, const int ie) const
Definition JetSums.h:80
double m_eGap
Definition JetSums.h:126
Extra patterns decribing particle interation process.