CMS 3D CMS Logo

CaloParams.h
Go to the documentation of this file.
1 
12 #ifndef CaloParams_h
13 #define CaloParams_h
14 
15 #include <memory>
16 #include <iostream>
17 #include <vector>
18 #include <cmath>
19 
22 
23 namespace l1t {
24 
25  class CaloParams {
26  public:
27  enum { Version = 2 };
28 
29  class Node {
30  public:
32  unsigned version_;
34  std::vector<double> dparams_;
35  std::vector<unsigned> uparams_;
36  std::vector<int> iparams_;
37  std::vector<std::string> sparams_;
38  Node() {
39  type_ = "unspecified";
40  version_ = 1;
41  }
43  };
44 
45  class TowerParams {
46  public:
47  /* Towers */
48 
49  // LSB of HCAL scale
50  double lsbH_;
51 
52  // LSB of ECAL scale
53  double lsbE_;
54 
55  // LSB of ECAL+HCAL sum scale
56  double lsbSum_;
57 
58  // number of bits for HCAL encoding
59  int nBitsH_;
60 
61  // number of bits for ECAL encoding
62  int nBitsE_;
63 
64  // number of bits for ECAL+HCAL sum encoding
65  int nBitsSum_;
66 
67  // number of bits for ECAL/HCAL ratio encoding
69 
70  // bitmask for storing HCAL Et in object
71  int maskH_;
72 
73  // bitmask for storing ECAL ET in object
74  int maskE_;
75 
76  // bitmask for storing ECAL+HCAL sum in object
77  int maskSum_;
78 
79  // bitmask for storing ECAL/HCAL ratio in object
81 
82  // turn encoding on/off
84 
86  : lsbH_(0),
87  lsbE_(0),
88  lsbSum_(0),
89  nBitsH_(0),
90  nBitsE_(0),
91  nBitsSum_(0),
92  nBitsRatio_(0),
93  maskH_(0),
94  maskE_(0),
95  maskSum_(0),
96  maskRatio_(0),
97  doEncoding_(false) { /* no-op */
98  }
99 
101  };
102 
103  class EgParams {
104  public:
105  // EG LSB
106  double lsb_;
107 
108  // Et threshold on EG seed tower
110 
111  // Et threshold on EG neighbour tower(s)
113 
114  // Et threshold on HCAL for H/E computation
116 
117  // EG maximum value of HCAL Et
118  double maxHcalEt_;
119 
120  // Et threshold to remove the H/E cut from the EGammas
121  double maxPtHOverE_;
122 
123  // Range of jet isolation for EG (in rank!) (Stage1Layer2)
126 
127  // Range of 3x3 HoE isolation for EG (in rank!) (Stage1Layer2)
130 
131  // isolation area in eta is seed tower +/- <=egIsoAreaNrTowersPhi
133 
134  // isolation area in phi is seed tower +/- <=egIsoAreaNrTowersPhi
136 
137  // veto region is seed tower +/- <=egIsoVetoNrTowersPhi
139 
141  : lsb_(0),
142  seedThreshold_(0),
144  hcalThreshold_(0),
145  maxHcalEt_(0),
146  maxPtHOverE_(0),
153  isoVetoNrTowersPhi_(0) { /* no-op */
154  }
155 
157  };
158 
159  class TauParams {
160  public:
161  // Tau LSB
162  double lsb_;
163 
164  // Et threshold on tau seed tower
166 
167  // Et threshold on tau neighbour towers
169 
170  // Et limit when to switch off tau veto requirement
172 
173  // Et limit when to switch off tau isolation requirement
175 
176  // Et jet isolation limit for Taus (Stage1Layer2)
178 
179  // Relative jet isolation cut for Taus (Stage1Layer2)
181 
182  // Eta min and max for Iso-Tau collections (Stage1Layer2)
185 
186  // isolation area in eta is seed tower +/- <=tauIsoAreaNrTowersEta
188 
189  // isolation area in phi is seed tower +/- <=tauIsoAreaNrTowersPhi
191 
192  // veto region is seed tower +/- <=tauIsoVetoNrTowersPhi
194 
196  : lsb_(0),
197  seedThreshold_(0),
199  maxPtTauVeto_(0),
203  isoEtaMin_(0),
204  isoEtaMax_(0),
207  isoVetoNrTowersPhi_(0) { /* no-op */
208  }
209 
211  };
212 
213  class JetParams {
214  public:
215  // Jet LSB
216  double lsb_;
217 
218  // Et threshold on jet seed tower/region
220 
221  // Et threshold on neighbouring towers/regions
223 
224  JetParams() : lsb_(0), seedThreshold_(0), neighbourThreshold_(0) { /* no-op */
225  }
226 
228  };
229 
232 
233  protected:
234  unsigned version_;
235 
236  std::vector<Node> pnode_;
237 
239 
240  // Region LSB
241  double regionLsb_;
242 
246 
247  /* Sums */
248 
249  // EtSum LSB
250  double etSumLsb_;
251 
252  // minimum eta for EtSums (index is particular EtSum. ETT=1, HTT=2, MET=3, MHT=4, other values reserved).
253  std::vector<int> etSumEtaMin_;
254 
255  // maximum eta for EtSums (index is particular EtSum. ETT=1, HTT=2, MET=3, MHT=4, other values reserved).
256  std::vector<int> etSumEtaMax_;
257 
258  // minimum eta for EtSums (index is particular EtSum. ETT=1, HTT=2, MET=3, MHT=4, other values reserved).
259  std::vector<double> etSumEtThreshold_;
260 
262  };
263 
264 } // namespace l1t
265 #endif
l1t::CaloParams::TowerParams::lsbE_
double lsbE_
Definition: CaloParams.h:53
l1t::CaloParams::EgParams::minPtJetIsolation_
int minPtJetIsolation_
Definition: CaloParams.h:124
LUT.h
funct::false
false
Definition: Factorize.h:29
l1t::CaloParams::JetParams
Definition: CaloParams.h:213
l1t::CaloParams::Node::sparams_
std::vector< std::string > sparams_
Definition: CaloParams.h:37
l1t::CaloParams::TowerParams::lsbH_
double lsbH_
Definition: CaloParams.h:50
l1t::CaloParams::TauParams::isoEtaMax_
int isoEtaMax_
Definition: CaloParams.h:184
l1t::CaloParams::Node::LUT_
l1t::LUT LUT_
Definition: CaloParams.h:33
l1t::CaloParams::Node::dparams_
std::vector< double > dparams_
Definition: CaloParams.h:34
l1t::CaloParams::TowerParams::nBitsE_
int nBitsE_
Definition: CaloParams.h:62
l1t::CaloParams::TowerParams::maskRatio_
int maskRatio_
Definition: CaloParams.h:80
l1t::CaloParams::EgParams::maxHcalEt_
double maxHcalEt_
Definition: CaloParams.h:118
l1t::CaloParams::EgParams::maxPtHOverEIsolation_
int maxPtHOverEIsolation_
Definition: CaloParams.h:129
COND_SERIALIZABLE
#define COND_SERIALIZABLE
Definition: Serializable.h:39
l1t::CaloParams::TauParams::minPtJetIsolationB_
double minPtJetIsolationB_
Definition: CaloParams.h:174
l1t::CaloParams::EgParams::lsb_
double lsb_
Definition: CaloParams.h:106
l1t::CaloParams::CaloParams
CaloParams()
Definition: CaloParams.h:230
l1t::CaloParams::TowerParams::nBitsRatio_
int nBitsRatio_
Definition: CaloParams.h:68
l1t::CaloParams::pnode_
std::vector< Node > pnode_
Definition: CaloParams.h:236
l1t::CaloParams::TauParams::isoAreaNrTowersEta_
unsigned isoAreaNrTowersEta_
Definition: CaloParams.h:187
l1t::CaloParams::Node::iparams_
std::vector< int > iparams_
Definition: CaloParams.h:36
l1t::CaloParams::TowerParams::maskE_
int maskE_
Definition: CaloParams.h:74
l1t::CaloParams::TowerParams::lsbSum_
double lsbSum_
Definition: CaloParams.h:56
l1t::CaloParams::regionLsb_
double regionLsb_
Definition: CaloParams.h:241
l1t::CaloParams::EgParams::isoAreaNrTowersEta_
unsigned isoAreaNrTowersEta_
Definition: CaloParams.h:132
l1t::CaloParams::towerp_
TowerParams towerp_
Definition: CaloParams.h:238
l1t::CaloParams::EgParams::maxPtHOverE_
double maxPtHOverE_
Definition: CaloParams.h:121
l1t::CaloParams::EgParams::maxPtJetIsolation_
int maxPtJetIsolation_
Definition: CaloParams.h:125
l1t::CaloParams::TowerParams::TowerParams
TowerParams()
Definition: CaloParams.h:85
l1t::CaloParams::Node::uparams_
std::vector< unsigned > uparams_
Definition: CaloParams.h:35
l1t::CaloParams::TauParams::maxPtTauVeto_
double maxPtTauVeto_
Definition: CaloParams.h:171
l1t::CaloParams::JetParams::neighbourThreshold_
double neighbourThreshold_
Definition: CaloParams.h:222
l1t::CaloParams::jetp_
JetParams jetp_
Definition: CaloParams.h:245
l1t::CaloParams::TauParams::maxJetIsolationB_
double maxJetIsolationB_
Definition: CaloParams.h:177
l1t::CaloParams::TauParams::TauParams
TauParams()
Definition: CaloParams.h:195
l1t::CaloParams::JetParams::JetParams
JetParams()
Definition: CaloParams.h:224
l1t::CaloParams::JetParams::seedThreshold_
double seedThreshold_
Definition: CaloParams.h:219
l1t::CaloParams::EgParams
Definition: CaloParams.h:103
l1t::CaloParams::etSumEtaMin_
std::vector< int > etSumEtaMin_
Definition: CaloParams.h:253
l1t::CaloParams::etSumEtaMax_
std::vector< int > etSumEtaMax_
Definition: CaloParams.h:256
l1t::CaloParams::TauParams::neighbourThreshold_
double neighbourThreshold_
Definition: CaloParams.h:168
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
l1t::CaloParams::TauParams::maxJetIsolationA_
double maxJetIsolationA_
Definition: CaloParams.h:180
l1t::CaloParams::~CaloParams
~CaloParams()
Definition: CaloParams.h:231
l1t::CaloParams::TauParams::seedThreshold_
double seedThreshold_
Definition: CaloParams.h:165
l1t::CaloParams::EgParams::isoAreaNrTowersPhi_
unsigned isoAreaNrTowersPhi_
Definition: CaloParams.h:135
l1t::CaloParams::EgParams::isoVetoNrTowersPhi_
unsigned isoVetoNrTowersPhi_
Definition: CaloParams.h:138
l1t
delete x;
Definition: CaloConfig.h:22
l1t::CaloParams::TowerParams
Definition: CaloParams.h:45
Serializable.h
l1t::CaloParams::TauParams
Definition: CaloParams.h:159
l1t::CaloParams::TauParams::lsb_
double lsb_
Definition: CaloParams.h:162
l1t::CaloParams::EgParams::EgParams
EgParams()
Definition: CaloParams.h:140
l1t::CaloParams::Node
Definition: CaloParams.h:29
l1t::CaloParams::TauParams::isoVetoNrTowersPhi_
unsigned isoVetoNrTowersPhi_
Definition: CaloParams.h:193
l1t::CaloParams::version_
unsigned version_
Definition: CaloParams.h:234
l1t::CaloParams::TowerParams::maskSum_
int maskSum_
Definition: CaloParams.h:77
l1t::CaloParams::taup_
TauParams taup_
Definition: CaloParams.h:244
l1t::CaloParams::Node::type_
std::string type_
Definition: CaloParams.h:31
l1t::CaloParams::TauParams::isoAreaNrTowersPhi_
unsigned isoAreaNrTowersPhi_
Definition: CaloParams.h:190
l1t::CaloParams
Definition: CaloParams.h:25
l1t::CaloParams::Node::version_
unsigned version_
Definition: CaloParams.h:32
l1t::LUT
Definition: LUT.h:29
l1t::CaloParams::EgParams::seedThreshold_
double seedThreshold_
Definition: CaloParams.h:109
l1t::CaloParams::JetParams::lsb_
double lsb_
Definition: CaloParams.h:216
l1t::CaloParams::EgParams::neighbourThreshold_
double neighbourThreshold_
Definition: CaloParams.h:112
l1t::CaloParams::Version
Definition: CaloParams.h:27
l1t::CaloParams::TowerParams::doEncoding_
bool doEncoding_
Definition: CaloParams.h:83
l1t::CaloParams::Node::Node
Node()
Definition: CaloParams.h:38
l1t::CaloParams::EgParams::minPtHOverEIsolation_
int minPtHOverEIsolation_
Definition: CaloParams.h:128
l1t::CaloParams::etSumLsb_
double etSumLsb_
Definition: CaloParams.h:250
l1t::CaloParams::EgParams::hcalThreshold_
double hcalThreshold_
Definition: CaloParams.h:115
l1t::CaloParams::TowerParams::maskH_
int maskH_
Definition: CaloParams.h:71
Version
Definition: InitMessage.h:39
l1t::CaloParams::TowerParams::nBitsSum_
int nBitsSum_
Definition: CaloParams.h:65
l1t::CaloParams::egp_
EgParams egp_
Definition: CaloParams.h:243
l1t::CaloParams::TowerParams::nBitsH_
int nBitsH_
Definition: CaloParams.h:59
l1t::CaloParams::etSumEtThreshold_
std::vector< double > etSumEtThreshold_
Definition: CaloParams.h:259
l1t::CaloParams::TauParams::isoEtaMin_
int isoEtaMin_
Definition: CaloParams.h:183