|
ATLAS Offline Software
|
#include <jFexInputProvider.h>
|
ToolHandle< GenericMonitoringTool > | m_monTool {this, "MonTool", "", "Monitoring tool to create online histograms"} |
|
StringProperty | m_gFEXJetLoc {""} |
|
SG::ReadHandleKey< xAOD::jFexSRJetRoIContainer > | m_jJet_EDMKey {this, "jFexSRJetRoIKey", "L1_jFexSRJetRoI", "jFEX Jet EDM"} |
|
SG::ReadHandleKey< xAOD::jFexLRJetRoIContainer > | m_jLJet_EDMKey {this, "jFexLRJetRoIKey", "L1_jFexLRJetRoI", "jFEX LJet EDM"} |
|
SG::ReadHandleKey< xAOD::jFexFwdElRoIContainer > | m_jEM_EDMKey {this, "jFexFwdElRoIKey", "L1_jFexFwdElRoI", "jFEX EM EDM"} |
|
SG::ReadHandleKey< xAOD::jFexTauRoIContainer > | m_jTau_EDMKey {this, "jFexTauRoIKey", "L1_jFexTauRoI", "jFEX Tau EDM"} |
|
SG::ReadHandleKey< xAOD::jFexMETRoIContainer > | m_jXE_EDMKey {this, "jFexMETRoIKey", "L1_jFexMETRoI", "jFEX XE EDM"} |
|
SG::ReadHandleKey< xAOD::jFexSumETRoIContainer > | m_jTE_EDMKey {this, "jFexSumETRoIKey", "L1_jFexSumETRoI", "jFEX TE EDM"} |
|
Definition at line 24 of file jFexInputProvider.h.
◆ jFexInputProvider()
jFexInputProvider::jFexInputProvider |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ ~jFexInputProvider()
jFexInputProvider::~jFexInputProvider |
( |
| ) |
|
|
virtual |
◆ fillEM()
Definition at line 58 of file jFexInputProvider.cxx.
61 return StatusCode::SUCCESS;
69 << +jFexRoI->jFexNumber()
75 << jFexRoI->globalEta()
77 << jFexRoI->globalPhi()
79 << +jFexRoI->tobEMIso()
81 << +jFexRoI->tobEMf1()
83 << +jFexRoI->tobEMf2()
89 unsigned int isolation = jFexRoI->tobEMIso();
90 unsigned int frac1 = jFexRoI->tobEMf2();
91 unsigned int frac2 = jFexRoI->tobEMf1();
94 if (EtTopo==0)
continue;
100 jem.setIsolation( isolation );
101 jem.setFrac1( frac1 );
102 jem.setFrac2( frac2 );
112 Monitored::Group(
m_monTool, mon_h_jEmPt, mon_h_jEmIsolation, mon_h_jEmFrac1, mon_h_jEmFrac2, mon_h_jEmPhi, mon_h_jEmEta);
115 return StatusCode::SUCCESS;
◆ fillLRJet()
Definition at line 173 of file jFexInputProvider.cxx.
176 return StatusCode::SUCCESS;
184 << jFexRoI->jFexNumber()
190 << jFexRoI->globalEta()
192 << jFexRoI->globalPhi()
200 if (EtTopo==0)
continue;
215 return StatusCode::SUCCESS;
◆ fillSRJet()
Definition at line 220 of file jFexInputProvider.cxx.
223 return StatusCode::SUCCESS;
231 << +jFexRoI->jFexNumber()
237 << jFexRoI->globalEta()
239 << jFexRoI->globalPhi()
247 if (EtTopo==0)
continue;
263 return StatusCode::SUCCESS;
◆ fillTau()
Definition at line 120 of file jFexInputProvider.cxx.
123 return StatusCode::SUCCESS;
131 << +jFexRoI->jFexNumber()
137 << jFexRoI->globalEta()
139 << jFexRoI->globalPhi()
150 if (EtTopo==0)
continue;
156 jtau.setEtIso( isolation );
168 return StatusCode::SUCCESS;
◆ fillTE()
Definition at line 351 of file jFexInputProvider.cxx.
355 return StatusCode::SUCCESS;
362 bool topoTE_sat =
false;
376 int jFexNumber = jFexRoI->jFexNumber();
377 int fpgaNumber = jFexRoI->fpgaNumber();
379 int Sat_lower = jFexRoI->tobSat_lower();
380 int Sat_upper = jFexRoI->tobSat_upper();
397 topoTE += EtLowerTopo;
398 topoTE += EtUpperTopo;
399 topoTE_sat |= Sat_lower;
400 topoTE_sat |= Sat_upper;
403 topoTEC += EtLowerTopo;
404 if( jFexNumber!=0 && jFexNumber!=5 )
406 topoTEC += EtUpperTopo;
410 if( jFexNumber==0 || jFexNumber==5 )
412 topoTEFWD += EtUpperTopo;
418 topoTEFWDA += EtUpperTopo;
424 topoTEFWDC += EtUpperTopo;
434 jte.setSaturationFlag(
static_cast<double>(topoTE_sat) );
447 auto mon_h_jTE_saturation =
Monitored::Scalar(
"jTETOBsaturation", jte.saturationFlag());
450 auto mon_h_jTEFWD_sumEt =
Monitored::Scalar(
"jTEFWDTOBsumEt", jtefwd.sumEtDouble());
451 auto mon_h_jTEFWDA_sumEt =
Monitored::Scalar(
"jTEFWDATOBsumEt", jtefwda.sumEtDouble());
452 auto mon_h_jTEFWDC_sumEt =
Monitored::Scalar(
"jTEFWDCTOBsumEt", jtefwdc.sumEtDouble());
453 Monitored::Group(
m_monTool, mon_h_jTE_saturation, mon_h_jTE_sumEt, mon_h_jTEC_sumEt, mon_h_jTEFWD_sumEt, mon_h_jTEFWDA_sumEt, mon_h_jTEFWDC_sumEt);
455 return StatusCode::SUCCESS;
◆ fillTopoInputEvent()
◆ fillXE()
Definition at line 268 of file jFexInputProvider.cxx.
272 return StatusCode::SUCCESS;
278 int global_ExTopo = 0;
279 int global_EyTopo = 0;
280 int central_ExTopo = 0;
281 int central_EyTopo = 0;
288 int jFexNumber = jFexRoI->jFexNumber();
289 int fpgaNumber = jFexRoI->fpgaNumber();
291 int hemisphere = fpgaNumber == 0 ? -1 : 1;
293 ExTopo = hemisphere * ExTopo;
294 EyTopo = hemisphere * EyTopo;
296 global_ExTopo += ExTopo;
297 global_EyTopo += EyTopo;
300 if( jFexNumber!=0 && jFexNumber!=5 ) {
301 central_ExTopo += ExTopo;
302 central_EyTopo += EyTopo;
316 unsigned long long global_ExTopoLong =
static_cast<unsigned long long>(global_ExTopo);
317 unsigned long long global_EyTopoLong =
static_cast<unsigned long long>(global_EyTopo);
318 unsigned long long central_ExTopoLong =
static_cast<unsigned long long>(central_ExTopo);
319 unsigned long long central_EyTopoLong =
static_cast<unsigned long long>(central_EyTopo);
321 unsigned long long Et2Topo = global_ExTopoLong*global_ExTopoLong + global_EyTopoLong*global_EyTopoLong;
322 unsigned int EtTopo = std::sqrt( Et2Topo );
323 unsigned long long Et2Topo_central = central_ExTopoLong*central_ExTopoLong + central_EyTopoLong*central_EyTopoLong;
324 unsigned int EtTopo_central = std::sqrt( Et2Topo_central );
332 jxe.setEt2( Et2Topo );
336 jxec.setEt2( Et2Topo_central );
343 auto mon_h_jXEC_Phi =
Monitored::Scalar(
"jXECTOBPhi", atan2(jxec.Ey(),jxec.Ex()));
346 return StatusCode::SUCCESS;
◆ initialize()
StatusCode jFexInputProvider::initialize |
( |
| ) |
|
|
finaloverridevirtual |
◆ m_Et_conversion
const int jFexInputProvider::m_Et_conversion = 2 |
|
staticprivate |
◆ m_eta_conversion
const int jFexInputProvider::m_eta_conversion = 4 |
|
staticprivate |
◆ m_etaDouble_conversion
const double jFexInputProvider::m_etaDouble_conversion = 0.025 |
|
staticprivate |
◆ m_EtDouble_conversion
const double jFexInputProvider::m_EtDouble_conversion = 0.1 |
|
staticprivate |
◆ m_gFEXJetLoc
StringProperty LVL1::jFexInputProvider::m_gFEXJetLoc {""} |
|
private |
◆ m_jEM_EDMKey
◆ m_jJet_EDMKey
◆ m_jLJet_EDMKey
◆ m_jTau_EDMKey
◆ m_jTE_EDMKey
◆ m_jXE_EDMKey
◆ m_monTool
◆ m_phi_conversion
const int jFexInputProvider::m_phi_conversion = 2 |
|
staticprivate |
◆ m_phiDouble_conversion
const double jFexInputProvider::m_phiDouble_conversion = 0.05 |
|
staticprivate |
◆ m_sumEt_conversion
const double jFexInputProvider::m_sumEt_conversion = 0.01 |
|
staticprivate |
◆ m_sumEtDouble_conversion
const double jFexInputProvider::m_sumEtDouble_conversion = 0.1 |
|
staticprivate |
The documentation for this class was generated from the following files:
Class describing properties of a LVL1 jFEX global Trigger Object (TOB) in the xAOD format.
Class describing properties of a LVL1 jFEX global Trigger Object (TOB) in the xAOD format.
Group
Properties of a chain group.
Class describing properties of a LVL1 jFEX global Trigger Object (TOB) in the xAOD format.
Class describing properties of a LVL1 jFEX global Trigger Object (TOB) in the xAOD format.
#define CHECK(...)
Evaluate an expression and check for errors.
Class describing properties of a LVL1 jFEX global Trigger Object (TOB) in the xAOD format.
Declare a monitored scalar variable.
Class describing properties of a LVL1 jFEX global Trigger Object (TOB) in the xAOD format.
unsigned int toTopoPhi(float phi)