ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigAlgorithms
TrigEFMissingET
src
TrkMHTFex.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
/******************************************************************************
6
* @package Trigger/TrigAlgorithms/TrigEFMissingET
7
* @class TrkMHTFex
8
*
9
* @brief Fex class for trkmht algorithm
10
* @author Jon Burr, Ren-Jie Wang
11
*****************************************************************************/
12
13
#ifndef TRIGEFMISSINGET_TRKMHTFEX_H
14
#define TRIGEFMISSINGET_TRKMHTFEX_H 1
15
16
#include "
FexBase.h
"
17
#include "
xAODJet/JetContainer.h
"
18
#include "
xAODTracking/TrackParticleContainer.h
"
19
#include "
xAODTracking/VertexContainer.h
"
20
#include "
JetEDM/TrackVertexAssociation.h
"
21
#include "
StoreGate/ReadDecorHandleKey.h
"
22
#include "
InDetTrackSelectionTool/IInDetTrackSelectionTool.h
"
23
#include <utility>
24
25
namespace
HLT
{
namespace
MET
{
26
/****************************************************************************
27
* @class TrkMHTFex
28
*
29
* Class to create output from the trkmht algorithm.
30
*
31
* trkmht calculates the MET using jets with JVT suppression applied. There is
32
* an additional track soft term which adds in any tracks associated to the
33
* hard scatter vertex which are not associated to jets passing the JVT
34
* selection.
35
***************************************************************************/
36
class
TrkMHTFex
:
public
FexBase
37
{
38
// Alias optional to make it clear how we're using it
39
template
<
typename
T>
40
using
deferred_t
= std::optional<T>;
41
public
:
43
TrkMHTFex
(
const
std::string& name, ISvcLocator* pSvcLocator);
44
46
virtual
StatusCode
initialize
()
override
;
47
48
private
:
49
/************************************************************************
50
* Properties
51
***********************************************************************/
53
SG::ReadHandleKey<xAOD::JetContainer>
m_jetKey
{
54
this
,
"JetName"
,
"jets"
,
"Input jet collection"
};
55
56
SG::ReadHandleKey<xAOD::TrackParticleContainer>
m_trackKey
{
57
this
,
"TrackName"
,
"tracks"
,
58
"Input track collection. Should be ghost-associated to the jets"
};
59
60
SG::ReadHandleKey<xAOD::VertexContainer>
m_vertexKey
{
61
this
,
"VertexName"
,
"vertices"
,
"Input vertex collection"
};
62
63
SG::ReadHandleKey<jet::TrackVertexAssociation>
m_tvaKey
{
64
this
,
"TVAName"
,
"trackVtxAssoc"
,
65
"The name of the track-vertex association"
};
66
67
SG::ReadDecorHandleKey<xAOD::JetContainer>
m_jvtKey
{
68
this
,
"JvtName"
,
"Jvt"
,
"The name of the JVT decorator"
};
69
70
Gaudi::Property<std::string>
m_trackGAName
{
71
this
,
"TrackLinkName"
,
"tracks"
,
"The name of the jet track links"
};
72
73
Gaudi::Property<float>
m_forwardJetPt
{
74
this
,
"ForwardJetPt"
, 0.,
"The pT cut applied to forward jets"
};
75
76
Gaudi::Property<float>
m_minJvtJetPt
{
77
this
,
"MinimumJvtJetPt"
, 20. * Gaudi::Units::GeV,
78
"The minimum pT for central jets for JVT selections to be used"
};
79
80
Gaudi::Property<float>
m_maxJvtJetPt
{
81
this
,
"MaximumJvtJetPt"
, 50. * Gaudi::Units::GeV,
82
"The maximum pT for central jets for JVT selections to be used"
};
83
84
Gaudi::Property<float>
m_jvtSelection
{
85
this
,
"JVTCut"
, 0.9,
"The JVT selection"
};
86
87
ToolHandle<InDet::IInDetTrackSelectionTool>
m_trackSelTool
{
88
this
,
"TrackSelTool"
,
"InDet::InDetTrackSelectionTool/TrackSelTool"
,
89
"The track selection tool to use for tracks entering the track soft "
90
"term."
};
91
92
Gaudi::Property<float>
m_tstPtCeil
{
93
this
,
"TrackSoftTermPtCeiling"
, 20. * Gaudi::Units::GeV,
94
"The maximum pT for tracks entering the track soft term."
};
95
96
/************************************************************************
97
* Internal functions
98
***********************************************************************/
105
virtual
StatusCode
fillMET
(
106
xAOD::TrigMissingET
&
met
,
107
const
EventContext& context,
108
MonGroupBuilder
& monitors)
const override
;
109
110
/************************************************************************
111
* Internal members
112
***********************************************************************/
113
deferred_t<SG::AuxElement::ConstAccessor<std::vector<ElementLink<xAOD::IParticleContainer>
>>>
m_trackGA
;
114
};
//> end class TrkMHTFex
115
} }
//> end namespace HLT::MET
116
117
#endif
//> !TRIGEFMISSINGET_TRKMHTFEX_H
TrackParticleContainer.h
FexBase.h
IInDetTrackSelectionTool.h
JetContainer.h
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
TrackVertexAssociation.h
VertexContainer.h
HLT::MET::FexBase::FexBase
FexBase(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
FexBase.cxx:43
HLT::MET::MonGroupBuilder
Definition
MonGroupBuilder.h:33
HLT::MET::TrkMHTFex::m_trackSelTool
ToolHandle< InDet::IInDetTrackSelectionTool > m_trackSelTool
The track selection tool.
Definition
TrkMHTFex.h:87
HLT::MET::TrkMHTFex::TrkMHTFex
TrkMHTFex(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
TrkMHTFex.cxx:29
HLT::MET::TrkMHTFex::fillMET
virtual StatusCode fillMET(xAOD::TrigMissingET &met, const EventContext &context, MonGroupBuilder &monitors) const override
Calculate and fill the output MET value.
Definition
TrkMHTFex.cxx:56
HLT::MET::TrkMHTFex::m_tstPtCeil
Gaudi::Property< float > m_tstPtCeil
The maximum pT for tracks in the soft term.
Definition
TrkMHTFex.h:92
HLT::MET::TrkMHTFex::m_jvtKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_jvtKey
The Jvt selection name.
Definition
TrkMHTFex.h:67
HLT::MET::TrkMHTFex::m_tvaKey
SG::ReadHandleKey< jet::TrackVertexAssociation > m_tvaKey
The track-vertex assocation name.
Definition
TrkMHTFex.h:63
HLT::MET::TrkMHTFex::m_jetKey
SG::ReadHandleKey< xAOD::JetContainer > m_jetKey
Input jets and jvt.
Definition
TrkMHTFex.h:53
HLT::MET::TrkMHTFex::m_trackGA
deferred_t< SG::AuxElement::ConstAccessor< std::vector< ElementLink< xAOD::IParticleContainer > > > > m_trackGA
Definition
TrkMHTFex.h:113
HLT::MET::TrkMHTFex::m_trackKey
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_trackKey
Input tracks.
Definition
TrkMHTFex.h:56
HLT::MET::TrkMHTFex::deferred_t
std::optional< T > deferred_t
Definition
TrkMHTFex.h:40
HLT::MET::TrkMHTFex::m_vertexKey
SG::ReadHandleKey< xAOD::VertexContainer > m_vertexKey
Input vertices.
Definition
TrkMHTFex.h:60
HLT::MET::TrkMHTFex::initialize
virtual StatusCode initialize() override
Initialise the fex.
Definition
TrkMHTFex.cxx:33
HLT::MET::TrkMHTFex::m_trackGAName
Gaudi::Property< std::string > m_trackGAName
The ghost-association aux element name.
Definition
TrkMHTFex.h:70
HLT::MET::TrkMHTFex::m_minJvtJetPt
Gaudi::Property< float > m_minJvtJetPt
Minimum pt selection for JVT on central jets.
Definition
TrkMHTFex.h:76
HLT::MET::TrkMHTFex::m_forwardJetPt
Gaudi::Property< float > m_forwardJetPt
Pt selection on forward jets.
Definition
TrkMHTFex.h:73
HLT::MET::TrkMHTFex::m_maxJvtJetPt
Gaudi::Property< float > m_maxJvtJetPt
Maximum pt selection for JVT on central jets.
Definition
TrkMHTFex.h:80
HLT::MET::TrkMHTFex::m_jvtSelection
Gaudi::Property< float > m_jvtSelection
The JVT selection.
Definition
TrkMHTFex.h:84
SG::ReadDecorHandleKey
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Definition
StoreGate/StoreGate/ReadDecorHandleKey.h:86
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
HLT::MET
Definition
METComponent.cxx:8
HLT
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...
Definition
HLTResultReader.h:26
met
Definition
IMETSignificance.h:24
xAOD::TrigMissingET
TrigMissingET_v1 TrigMissingET
Define the most recent version of the TrigMissingET class.
Definition
Event/xAOD/xAODTrigMissingET/xAODTrigMissingET/TrigMissingET.h:12
Generated on
for ATLAS Offline Software by
1.17.0