Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Go to the documentation of this file.
7 #ifndef DECORATELEPTONTAGGERRNN_H
8 #define DECORATELEPTONTAGGERRNN_H
24 #include "TStopwatch.h"
27 #include "GaudiKernel/ITHistSvc.h"
28 #include "GaudiKernel/ToolHandle.h"
81 const std::vector<Prompt::VarHolder> &tracks,
82 const std::string &
prefix);
89 Gaudi::Property<std::string>
m_outputStream {
this,
"outputStream",
"",
"Path of the ROOT output directory of the histograms for RNN debug"};
90 Gaudi::Property<std::string>
m_decorationPrefixRNN {
this,
"decorationPrefixRNN",
"",
"Prefix of the name for the decorator of RNN to the lepton"};
92 Gaudi::Property<double>
m_minTrackpT {
this,
"minTrackpT", 500.0,
"pT cut config for the input tracks to RNN"};
93 Gaudi::Property<double>
m_maxTrackEta {
this,
"maxTrackEta", 2.5,
"abs(eta) cut config for the input tracks to RNN"};
94 Gaudi::Property<double>
m_maxTrackZ0Sin {
this,
"maxTrackZ0Sin", 1.0,
"Z0sin cut config for the input tracks to RNN"};
96 Gaudi::Property<double>
m_minTrackLeptonDR {
this,
"minTrackLeptonDR", 1.0e-6,
"Delta R between lepton and track cut config for the input tracks to RNN"};
97 Gaudi::Property<double>
m_maxTrackLeptonDR {
this,
"maxTrackLeptonDR", 0.4,
"Delta R between lepton and track cut config for the input tracks to RNN"};
98 Gaudi::Property<double>
m_maxLepTrackJetDR {
this,
"maxLepTrackJetDR", 0.4,
"Maximum distance between lepton and track jet for track jet matching"};
100 Gaudi::Property<double>
m_maxTrackSharedSiHits {
this,
"maxTrackSharedSiHits", 1.5,
"track shared si hits cut config for the input tracks to RNN"};
101 Gaudi::Property<unsigned>
m_minTrackSiHits {
this,
"minTrackSiHits", 6.5,
"track silicon detector hits cut config for the input tracks to RNN"};
102 Gaudi::Property<unsigned>
m_maxTrackSiHoles {
this,
"maxTrackSiHoles", 2.5,
"track holes cut config for the input tracks to RNN"};
103 Gaudi::Property<unsigned>
m_maxTrackPixHoles {
this,
"maxTrackPixHoles", 1.5,
"track pixel holes cut config for the input tracks to RNN"};
105 Gaudi::Property<bool>
m_debug {
this,
"debug",
false,
"debug statement"};
106 Gaudi::Property<bool>
m_printTime {
this,
"printTime",
false,
"print running time, for debug"};
110 this,
"toolRNN",
"defaultToolRNN",
"Dedicated tool for RNN prediction"
117 this,
"inputContainerLepton",
"",
118 "Container's name of the lepton that you want to decorate"
121 this,
"inputContainerTrack",
"",
"Track container name"
124 this,
"inputContainerTrackJet",
"",
"Track Jet container name"
127 this,
"inputContainerPrimaryVertices",
"",
"Primary vertex container name"
131 this,
"EventHandleKey",
"EventInfo"
140 std::map<std::string, TH1*>
m_hists;
142 std::unique_ptr<SG::AuxElement::ConstAccessor<unsigned char> >
m_accessQuality;
virtual StatusCode finalize() override
Gaudi::Property< std::string > m_decorationPrefixRNN
std::unique_ptr< SG::AuxElement::ConstAccessor< unsigned char > > m_accessQuality
Gaudi::Property< std::string > m_outputStream
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_inputContainerTrackKey
Gaudi::Property< double > m_minTrackLeptonDR
Gaudi::Property< unsigned > m_minTrackSiHits
bool prepTrackObject(Prompt::VarHolder &p, const xAOD::TrackParticle &track, const xAOD::TrackParticle &lepton, const xAOD::Jet &trackJet, const xAOD::Vertex &priVtx, const xAOD::EventInfo event)
const xAOD::Jet * findClosestTrackJet(const xAOD::TrackParticle *particle, const xAOD::JetContainer &trackJets)
SG::ReadHandleKey< xAOD::JetContainer > m_inputContainerTrackJetKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Class providing the definition of the 4-vector interface.
Gaudi::Property< double > m_maxTrackZ0Sin
SG::AuxElement::Decorator< float > decoratorFloat_t
StatusCode makeHist(TH1 *&h, const std::string &key, int nbin, double xmin, double xmax)
POOL::TEvent event(POOL::TEvent::kClassAccess)
Helper class to provide type-safe access to aux data.
SG::ReadHandleKey< xAOD::EventInfo > m_eventHandleKey
::StatusCode StatusCode
StatusCode definition for legacy code.
ServiceHandle< ITHistSvc > m_histSvc
std::map< std::string, TH1 * > m_hists
Gaudi::Property< bool > m_printTime
Gaudi::Property< unsigned > m_maxTrackPixHoles
bool compScore(const xAOD::IParticle &particle, const std::vector< Prompt::VarHolder > &tracks, const std::string &prefix)
SG::ReadHandleKey< xAOD::IParticleContainer > m_inputContainerLeptonKey
bool compDummy(const xAOD::IParticle &particle, const std::string &prefix)
Class describing the basic event information.
DecoratePromptLeptonRNN(const std::string &name, ISvcLocator *pSvcLocator)
Class describing a Vertex.
Gaudi::Property< bool > m_debug
decoratorFloatMap_t m_decoratorMap
const xAOD::TrackParticle * findMuonTrack(const xAOD::Muon *muon)
SG::ReadHandleKey< xAOD::VertexContainer > m_inputContainerPrimaryVerticesKey
Gaudi::Property< double > m_minTrackpT
Gaudi::Property< unsigned > m_maxTrackSiHoles
Gaudi::Property< double > m_maxTrackSharedSiHits
Class describing a TrackParticle.
std::map< std::string, std::unique_ptr< decoratorFloat_t > > decoratorFloatMap_t
ToolHandle< IRNNTool > m_toolRNN
Gaudi::Property< double > m_maxLepTrackJetDR
Gaudi::Property< double > m_maxTrackEta
bool passTrack(Prompt::VarHolder &p)
Gaudi::Property< double > m_maxTrackLeptonDR
virtual StatusCode execute() override
virtual StatusCode initialize() override