ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
JetTagging
FlavorTagDiscriminants
FlavorTagDiscriminants
JetHitAssociationAlg.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef JET_HIT_ASSOCIATION_ALG_HH
6
#define JET_HIT_ASSOCIATION_ALG_HH
7
8
9
10
11
// FrameWork includes
12
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
13
14
// Containers
15
#include "
xAODBase/IParticleContainer.h
"
16
#include "
xAODTracking/TrackMeasurementValidationContainer.h
"
17
18
// Read and write handles
19
#include "
StoreGate/ReadHandleKey.h
"
20
#include "
StoreGate/WriteDecorHandleKey.h
"
21
#include "
StoreGate/ReadDecorHandleKey.h
"
22
23
// Element links
24
#include "AthLinks/ElementLink.h"
25
// STL includes
26
#include <string>
27
#include <utility>
//std::pair
28
#include <vector>
29
30
31
namespace
FlavorTagDiscriminants
{
32
33
class
JetHitAssociationAlg
:
public
AthReentrantAlgorithm
{
34
35
public
:
36
JetHitAssociationAlg
(
const
std::string& name,
37
ISvcLocator* pSvcLocator);
38
39
virtual
StatusCode
initialize
()
override
;
40
virtual
StatusCode
execute
(
const
EventContext&)
const override
;
41
42
43
private
:
44
// Particle container
45
SG::ReadHandleKey<xAOD::IParticleContainer>
m_jetCollectionKey
{
46
this
,
"jetContainer"
,
"tempEmtopoJets"
,
"Key for particle collection"
};
47
48
SG::WriteDecorHandleKey<xAOD::IParticleContainer>
m_hitAssociationKey
{
49
this
,
"hitAssociation"
,
m_jetCollectionKey
,
"hitsAssociatedWithJet"
,
"Key for decorating hit links"
};
50
51
SG::ReadDecorHandleKey<xAOD::IParticleContainer>
m_wedgeZKey
{
52
this
,
"wedgeZDecor"
,
""
,
"Jet decoration holding the wedge z-centre, in the same frame as the hit positions; if unset the wedge is centred on z = 0"
};
53
54
55
// Hits input
56
SG::ReadHandleKey<xAOD::TrackMeasurementValidationContainer>
m_inputHitCollectionKey
{
57
this
,
"hitContainer"
,
"PixelClusters"
,
"Key for input hits"
};
58
59
SG::ReadDecorHandleKey<xAOD::TrackMeasurementValidationContainer>
m_hitsXRelToVertexKey
{
60
this
,
"hitReaderX"
,
m_inputHitCollectionKey
,
"HitsXRelToBeamspot"
,
"Key for hits x coordinate relative to vertex"
};
61
62
SG::ReadDecorHandleKey<xAOD::TrackMeasurementValidationContainer>
m_hitsYRelToVertexKey
{
63
this
,
"hitReaderY"
,
m_inputHitCollectionKey
,
"HitsYRelToBeamspot"
,
"Key for hits x coordinate relative to vertex"
};
64
65
SG::ReadDecorHandleKey<xAOD::TrackMeasurementValidationContainer>
m_hitsZRelToVertexKey
{
66
this
,
"hitReaderZ"
,
m_inputHitCollectionKey
,
"HitsZRelToBeamspot"
,
"Key for hits x coordinate relative to vertex"
};
67
68
69
// Jet-Hit association configuration
70
Gaudi::Property<float>
m_dPhiHitToJet
{
71
this
,
"dphiHitToJet"
, 0.2,
"Phi half-width of the wedge around the jet axis"
};
72
73
Gaudi::Property<float>
m_dEtaHitToVertex
{
74
this
,
"detaHitToJet"
, 0.2,
"Eta half-width of the wedge around the jet axis"
};
75
76
Gaudi::Property<float>
m_dZHitToVertex
{
77
this
,
"dzHitToVertex"
, 180,
"Z half-width [mm] of the wedge around its z-centre"
};
78
79
Gaudi::Property<bool>
m_useDRCone
{
80
this
,
"useDRCone"
,
false
,
"Select hits in a dR cone around the jet axis instead of the wedge"
};
81
82
Gaudi::Property<float>
m_dRHitToJet
{
83
this
,
"dRHitToJet"
, 0.4,
"Cone size, if useDRCone is set"
};
84
85
Gaudi::Property<bool>
m_includeBarrel
{
86
this
,
"includeBarrelHits"
,
true
,
"Include barrel hits"
};
87
88
Gaudi::Property<bool>
m_includeEndcap
{
89
this
,
"includeEndcapHits"
,
true
,
"Include endcap hits"
};
90
91
Gaudi::Property<int>
m_maxHits
{
92
this
,
"maxHits"
, 200,
"Maximum number of total hits; 0 to keep all"
};
93
94
95
struct
Hit
{
96
const
xAOD::TrackMeasurementValidation
*
original_hit
;
97
float
phi
;
98
float
z
;
99
float
r
;
100
};
101
102
103
// Helper methods
104
const
std::vector<std::pair<float, const xAOD::TrackMeasurementValidation*>>
105
getJetHits
(
const
xAOD::IParticle
*
jet
,
106
const
std::vector<Hit>& hits,
107
double
zed)
const
;
108
};
109
110
}
111
112
#endif
AthReentrantAlgorithm.h
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
TrackMeasurementValidationContainer.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
FlavorTagDiscriminants::JetHitAssociationAlg::execute
virtual StatusCode execute(const EventContext &) const override
Definition
JetHitAssociationAlg.cxx:59
FlavorTagDiscriminants::JetHitAssociationAlg::m_wedgeZKey
SG::ReadDecorHandleKey< xAOD::IParticleContainer > m_wedgeZKey
Definition
JetHitAssociationAlg.h:51
FlavorTagDiscriminants::JetHitAssociationAlg::m_includeBarrel
Gaudi::Property< bool > m_includeBarrel
Definition
JetHitAssociationAlg.h:85
FlavorTagDiscriminants::JetHitAssociationAlg::m_maxHits
Gaudi::Property< int > m_maxHits
Definition
JetHitAssociationAlg.h:91
FlavorTagDiscriminants::JetHitAssociationAlg::m_dEtaHitToVertex
Gaudi::Property< float > m_dEtaHitToVertex
Definition
JetHitAssociationAlg.h:73
FlavorTagDiscriminants::JetHitAssociationAlg::m_includeEndcap
Gaudi::Property< bool > m_includeEndcap
Definition
JetHitAssociationAlg.h:88
FlavorTagDiscriminants::JetHitAssociationAlg::m_hitsYRelToVertexKey
SG::ReadDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_hitsYRelToVertexKey
Definition
JetHitAssociationAlg.h:62
FlavorTagDiscriminants::JetHitAssociationAlg::m_useDRCone
Gaudi::Property< bool > m_useDRCone
Definition
JetHitAssociationAlg.h:79
FlavorTagDiscriminants::JetHitAssociationAlg::m_dZHitToVertex
Gaudi::Property< float > m_dZHitToVertex
Definition
JetHitAssociationAlg.h:76
FlavorTagDiscriminants::JetHitAssociationAlg::m_inputHitCollectionKey
SG::ReadHandleKey< xAOD::TrackMeasurementValidationContainer > m_inputHitCollectionKey
Definition
JetHitAssociationAlg.h:56
FlavorTagDiscriminants::JetHitAssociationAlg::m_jetCollectionKey
SG::ReadHandleKey< xAOD::IParticleContainer > m_jetCollectionKey
Definition
JetHitAssociationAlg.h:45
FlavorTagDiscriminants::JetHitAssociationAlg::m_dRHitToJet
Gaudi::Property< float > m_dRHitToJet
Definition
JetHitAssociationAlg.h:82
FlavorTagDiscriminants::JetHitAssociationAlg::JetHitAssociationAlg
JetHitAssociationAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition
JetHitAssociationAlg.cxx:25
FlavorTagDiscriminants::JetHitAssociationAlg::m_dPhiHitToJet
Gaudi::Property< float > m_dPhiHitToJet
Definition
JetHitAssociationAlg.h:70
FlavorTagDiscriminants::JetHitAssociationAlg::m_hitsXRelToVertexKey
SG::ReadDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_hitsXRelToVertexKey
Definition
JetHitAssociationAlg.h:59
FlavorTagDiscriminants::JetHitAssociationAlg::getJetHits
const std::vector< std::pair< float, const xAOD::TrackMeasurementValidation * > > getJetHits(const xAOD::IParticle *jet, const std::vector< Hit > &hits, double zed) const
Definition
JetHitAssociationAlg.cxx:137
FlavorTagDiscriminants::JetHitAssociationAlg::m_hitAssociationKey
SG::WriteDecorHandleKey< xAOD::IParticleContainer > m_hitAssociationKey
Definition
JetHitAssociationAlg.h:48
FlavorTagDiscriminants::JetHitAssociationAlg::initialize
virtual StatusCode initialize() override
Definition
JetHitAssociationAlg.cxx:29
FlavorTagDiscriminants::JetHitAssociationAlg::m_hitsZRelToVertexKey
SG::ReadDecorHandleKey< xAOD::TrackMeasurementValidationContainer > m_hitsZRelToVertexKey
Definition
JetHitAssociationAlg.h:65
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
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition
StoreGate/StoreGate/WriteDecorHandleKey.h:90
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition
Event/xAOD/xAODBase/xAODBase/IParticle.h:41
FlavorTagDiscriminants
Definition
CaloChargedFlowDecoratorAlg.h:15
jet
Definition
JetCalibTools_PlotJESFactors.cxx:23
xAOD::TrackMeasurementValidation
TrackMeasurementValidation_v1 TrackMeasurementValidation
Reference the current persistent version:
Definition
TrackMeasurementValidation.h:13
FlavorTagDiscriminants::JetHitAssociationAlg::Hit
Definition
JetHitAssociationAlg.h:95
FlavorTagDiscriminants::JetHitAssociationAlg::Hit::phi
float phi
Definition
JetHitAssociationAlg.h:97
FlavorTagDiscriminants::JetHitAssociationAlg::Hit::original_hit
const xAOD::TrackMeasurementValidation * original_hit
Definition
JetHitAssociationAlg.h:96
FlavorTagDiscriminants::JetHitAssociationAlg::Hit::z
float z
Definition
JetHitAssociationAlg.h:98
FlavorTagDiscriminants::JetHitAssociationAlg::Hit::r
float r
Definition
JetHitAssociationAlg.h:99
IParticleContainer.h
Generated on
for ATLAS Offline Software by
1.17.0