ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
VRJetOverlapDecorator Class Reference

#include <VRJetOverlapDecorator.h>

Collaboration diagram for VRJetOverlapDecorator:

Public Member Functions

 VRJetOverlapDecorator (const VRJetOverlapConfig &=VRJetOverlapConfig())
 
void decorate (const xAOD::JetContainer &jets) const
 

Private Attributes

VRJetParameters m_param_source
 
SG::AuxElement::Decorator< float > m_rel_decorator
 
SG::AuxElement::Decorator< float > m_abs_decorator
 
SG::AuxElement::ConstAccessor< float > m_min_radius
 
SG::AuxElement::ConstAccessor< float > m_max_radius
 
SG::AuxElement::ConstAccessor< float > m_mass_scale
 

Detailed Description

Definition at line 18 of file VRJetOverlapDecorator.h.

Constructor & Destructor Documentation

◆ VRJetOverlapDecorator()

VRJetOverlapDecorator::VRJetOverlapDecorator ( const VRJetOverlapConfig cfg = VRJetOverlapConfig())

Definition at line 68 of file VRJetOverlapDecorator.cxx.

68  :
69  m_param_source(cfg.jet_parameters_source),
70  m_rel_decorator(cfg.relative_name),
71  m_abs_decorator(cfg.absolute_name),
72  m_min_radius("VariableRMinRadius"),
73  m_max_radius("SizeParameter"),
74  m_mass_scale("VariableRMassScale")
75 {
76 }

Member Function Documentation

◆ decorate()

void VRJetOverlapDecorator::decorate ( const xAOD::JetContainer jets) const

Definition at line 78 of file VRJetOverlapDecorator.cxx.

78  {
79  // if no jet is present, do nothing
80  if (jets.empty() && m_param_source == VRJetParameters::EDM) return;
81 
82  VRConfig cfg;
84  // we'll assume all the jets have the same parameters, I don't
85  // know of counterexamples but if they exist we'd have to rethink
86  // all the code here.
87  const xAOD::Jet* jet = jets.at(0);
88  cfg.min = m_min_radius(*jet);
89  cfg.max = m_max_radius(*jet);
90  cfg.scale = m_mass_scale(*jet);
92  // right now we only have one set of VR jets where we'd use this
93  // tool thus the hardcoded numbers here.
94  cfg.min = 0.02;
95  cfg.max = 0.4;
96  cfg.scale = 30e3;
97  } else {
98  throw std::logic_error("unknown jet parameter lookup");
99  }
100  auto min_dr = getMinimumRelativeDR(jets, cfg);
101  for (size_t iii = 0; iii < jets.size(); iii++) {
102  const xAOD::Jet* jet = jets.at(iii);
103  const auto drs = min_dr.at(iii);
104  m_rel_decorator(*jet) = drs.relative;
105  m_abs_decorator(*jet) = drs.absolute;
106  }
107 }

Member Data Documentation

◆ m_abs_decorator

SG::AuxElement::Decorator<float> VRJetOverlapDecorator::m_abs_decorator
private

Definition at line 26 of file VRJetOverlapDecorator.h.

◆ m_mass_scale

SG::AuxElement::ConstAccessor<float> VRJetOverlapDecorator::m_mass_scale
private

Definition at line 29 of file VRJetOverlapDecorator.h.

◆ m_max_radius

SG::AuxElement::ConstAccessor<float> VRJetOverlapDecorator::m_max_radius
private

Definition at line 28 of file VRJetOverlapDecorator.h.

◆ m_min_radius

SG::AuxElement::ConstAccessor<float> VRJetOverlapDecorator::m_min_radius
private

Definition at line 27 of file VRJetOverlapDecorator.h.

◆ m_param_source

VRJetParameters VRJetOverlapDecorator::m_param_source
private

Definition at line 24 of file VRJetOverlapDecorator.h.

◆ m_rel_decorator

SG::AuxElement::Decorator<float> VRJetOverlapDecorator::m_rel_decorator
private

Definition at line 25 of file VRJetOverlapDecorator.h.


The documentation for this class was generated from the following files:
VRJetParameters::EDM
@ EDM
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
CheckAppliedSFs.e3
e3
Definition: CheckAppliedSFs.py:264
VRJetOverlapDecorator::m_max_radius
SG::AuxElement::ConstAccessor< float > m_max_radius
Definition: VRJetOverlapDecorator.h:28
PyAlgorithmExample.min_dr
def min_dr(p, l)
Definition: PyAlgorithmExample.py:57
VRJetOverlapDecorator::m_rel_decorator
SG::AuxElement::Decorator< float > m_rel_decorator
Definition: VRJetOverlapDecorator.h:25
VRJetOverlapDecorator::m_abs_decorator
SG::AuxElement::Decorator< float > m_abs_decorator
Definition: VRJetOverlapDecorator.h:26
VRJetOverlapDecorator::m_mass_scale
SG::AuxElement::ConstAccessor< float > m_mass_scale
Definition: VRJetOverlapDecorator.h:29
VRJetOverlapDecorator::m_param_source
VRJetParameters m_param_source
Definition: VRJetOverlapDecorator.h:24
WriteCaloSwCorrections.cfg
cfg
Definition: WriteCaloSwCorrections.py:23
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
VRJetOverlapDecorator::m_min_radius
SG::AuxElement::ConstAccessor< float > m_min_radius
Definition: VRJetOverlapDecorator.h:27
VRJetParameters::RHO30MIN02MAX4
@ RHO30MIN02MAX4
defineDB.jets
list jets
Definition: JetTagCalibration/share/defineDB.py:24