15#include "TLorentzVector.h"
20 const std::string& name, ISvcLocator* loc)
32 return StatusCode::SUCCESS;
36 const EventContext& ctx)
const
61 std::vector<ElementLink<xAOD::IParticleContainer>> selected;
63 for (
const auto& link : ghostElectrons(*
jet)) {
68 energyOverP(*el),
et(*el),
69 isoOverPt(*el), dpop(*el))) {
72 *electrons, el->index()));
76 selectedOut(*
jet) = selected;
79 return StatusCode::SUCCESS;
91 jet4.SetPtEtaPhiE(
jet.pt(),
jet.eta(),
jet.phi(),
jet.e());
93 el4.SetPtEtaPhiE(el.pt(), el.eta(), el.phi(), el.e());
105 const auto* track = el.trackParticle();
106 if (!track)
return false;
121 float ptrel = el4.Vect().Perp(jet4.Vect());
129 float deta1 = el.trackCaloMatchValue(
#define ATH_CHECK
Evaluate an expression and check for errors.
float et(const xAOD::jFexSRJetRoI *j)
Handle class for reading a decoration on an object.
Handle class for reading from StoreGate.
Handle class for adding a decoration to an object.
An algorithm that can be simultaneously executed in multiple threads.
ElementLink implementation for ROOT usage.
Gaudi::Property< float > m_rphiMaximum
SG::ReadDecorHandleKey< xAOD::ElectronContainer > m_dpopKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_ghostElectronsKey
virtual StatusCode initialize() override
Gaudi::Property< float > m_wstotMaximum
Gaudi::Property< float > m_deta1Maximum
SoftElectronSelectionAlg(const std::string &name, ISvcLocator *pSvcLocator)
Gaudi::Property< float > m_etMaximum
Gaudi::Property< float > m_retaMaximum
Gaudi::Property< float > m_ptMaximum
SG::ReadDecorHandleKey< xAOD::ElectronContainer > m_etKey
SG::ReadDecorHandleKey< xAOD::ElectronContainer > m_isoOverPtKey
virtual StatusCode execute(const EventContext &) const override
Gaudi::Property< float > m_isoptMaximum
Gaudi::Property< float > m_d0Maximum
bool passedCuts(const xAOD::Jet &jet, const xAOD::Electron &el, float energyOverP, float et, float isoOverPt, float dpop) const
Gaudi::Property< float > m_eopMaximum
Gaudi::Property< float > m_rhad1Maximum
Gaudi::Property< float > m_ptMinimum
SG::ReadHandleKey< xAOD::ElectronContainer > m_electronContainerKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_selectedElectronsKey
Gaudi::Property< float > m_dpopMaximum
Gaudi::Property< float > m_maxDeltaR
Gaudi::Property< float > m_ptrelMaximum
SG::ReadDecorHandleKey< xAOD::ElectronContainer > m_energyOverPKey
Gaudi::Property< float > m_absEtaMaximum
SG::ReadHandleKey< xAOD::JetContainer > m_jetContainerKey
Handle class for reading a decoration on an object.
Handle class for adding a decoration to an object.
@ deltaEta1
difference between the cluster eta (first sampling) and the eta of the track extrapolated to the firs...
@ wtots1
shower width is determined in a window detaxdphi = 0,0625 ×~0,2, corresponding typically to 20 strips...
Jet_v1 Jet
Definition of the current "jet version".
Electron_v1 Electron
Definition of the current "egamma version".
Extra patterns decribing particle interation process.