ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonPhaseII
MuonLearning
MuonInferenceInterfaces
MuonInferenceInterfaces
SegmentEdgeData.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
#ifndef MUONINFERENCEINTERFACES_SEGMENTEDGEDATA_H
5
#define MUONINFERENCEINTERFACES_SEGMENTEDGEDATA_H
6
7
#include "
xAODMuon/MuonSegment.h
"
8
#include <array>
9
#include <cstddef>
10
#include <cstdint>
11
#include <vector>
12
13
namespace
MuonML
{
14
17
enum class
PairGate
: std::uint8_t {
18
Scored
= 0,
19
BucketCap
,
20
SectorWindow
,
21
SameChamber
,
22
AngleWindow
,
23
EdgeCaps
24
};
25
27
struct
PairFate
{
28
std::uint32_t
first
{0};
29
std::uint32_t
second
{0};
30
PairGate
gate
{
PairGate::Scored
};
31
std::uint8_t
sectorDelta
{0};
32
};
33
35
inline
constexpr
std::int32_t
kDroppedByBucketCap
= -1;
36
inline
constexpr
std::int32_t
kDroppedAsIsolated
= -2;
37
38
struct
SegmentEdgeGraph
{
39
std::vector<const xAOD::MuonSegment_v1*>
segments
{};
40
std::vector<float>
nodeFeatures
{};
41
std::vector<int64_t>
edgeIndex
{};
42
std::vector<float>
edgeFeatures
{};
43
std::size_t
nNodes
{0};
44
std::size_t
nEdges
{0};
45
46
// Truth diagnostics: filled by the tool only when its EnableTruthDiagnostics
47
// is set and DEBUG output is on; empty (never allocated) otherwise.
48
std::vector<std::int32_t>
inputNodeIndex
{};
49
std::vector<PairFate>
truthPairFates
{};
50
};
51
52
struct
SegmentEdgeScore
{
53
std::size_t
src
{0};
54
std::size_t
dst
{0};
55
float
logit
{0.f};
56
float
probability
{0.f};
57
};
58
59
}
60
#endif
MuonSegment.h
MuonML
Definition
BucketGraphUtils.h:19
MuonML::PairGate
PairGate
Gate that stopped (or did not stop) a pair of input segments from reaching ONNX.
Definition
SegmentEdgeData.h:17
MuonML::PairGate::Scored
@ Scored
the pair was sent to ONNX
Definition
SegmentEdgeData.h:18
MuonML::PairGate::SameChamber
@ SameChamber
same-chamber pair dropped by design
Definition
SegmentEdgeData.h:21
MuonML::PairGate::AngleWindow
@ AngleWindow
cos(opening angle) below MaxDeltaThetaDeg
Definition
SegmentEdgeData.h:22
MuonML::PairGate::EdgeCaps
@ EdgeCaps
candidate evicted by the pre-ONNX per-node / per-target-chamber caps
Definition
SegmentEdgeData.h:23
MuonML::PairGate::SectorWindow
@ SectorWindow
|delta sector| > MaxDeltaSector
Definition
SegmentEdgeData.h:20
MuonML::PairGate::BucketCap
@ BucketCap
an endpoint was dropped by MaxSegmentsPerBucket
Definition
SegmentEdgeData.h:19
MuonML::kDroppedAsIsolated
constexpr std::int32_t kDroppedAsIsolated
Definition
SegmentEdgeData.h:36
MuonML::kDroppedByBucketCap
constexpr std::int32_t kDroppedByBucketCap
Values of SegmentEdgeGraph::inputNodeIndex for input segments without a node.
Definition
SegmentEdgeData.h:35
MuonML::PairFate
One pair of input segments that share a truth particle (input-container indices).
Definition
SegmentEdgeData.h:27
MuonML::PairFate::first
std::uint32_t first
Definition
SegmentEdgeData.h:28
MuonML::PairFate::second
std::uint32_t second
Definition
SegmentEdgeData.h:29
MuonML::PairFate::sectorDelta
std::uint8_t sectorDelta
Definition
SegmentEdgeData.h:31
MuonML::PairFate::gate
PairGate gate
Definition
SegmentEdgeData.h:30
MuonML::SegmentEdgeGraph
Definition
SegmentEdgeData.h:38
MuonML::SegmentEdgeGraph::edgeFeatures
std::vector< float > edgeFeatures
packed [E,7]: dpos(3), dist, cos, same_chamber, same_sector
Definition
SegmentEdgeData.h:42
MuonML::SegmentEdgeGraph::inputNodeIndex
std::vector< std::int32_t > inputNodeIndex
per input segment: node index, or kDropped*
Definition
SegmentEdgeData.h:48
MuonML::SegmentEdgeGraph::nEdges
std::size_t nEdges
Definition
SegmentEdgeData.h:44
MuonML::SegmentEdgeGraph::edgeIndex
std::vector< int64_t > edgeIndex
packed edge pairs [src0,dst0,src1,dst1,...]
Definition
SegmentEdgeData.h:41
MuonML::SegmentEdgeGraph::segments
std::vector< const xAOD::MuonSegment_v1 * > segments
Definition
SegmentEdgeData.h:39
MuonML::SegmentEdgeGraph::nNodes
std::size_t nNodes
Definition
SegmentEdgeData.h:43
MuonML::SegmentEdgeGraph::nodeFeatures
std::vector< float > nodeFeatures
packed [N,10]: pos_m(3), dir_u(3), bucket(4)
Definition
SegmentEdgeData.h:40
MuonML::SegmentEdgeGraph::truthPairFates
std::vector< PairFate > truthPairFates
every pair of input segments sharing a truth particle
Definition
SegmentEdgeData.h:49
MuonML::SegmentEdgeScore
Definition
SegmentEdgeData.h:52
MuonML::SegmentEdgeScore::src
std::size_t src
Definition
SegmentEdgeData.h:53
MuonML::SegmentEdgeScore::probability
float probability
Definition
SegmentEdgeData.h:56
MuonML::SegmentEdgeScore::dst
std::size_t dst
Definition
SegmentEdgeData.h:54
MuonML::SegmentEdgeScore::logit
float logit
Definition
SegmentEdgeData.h:55
Generated on
for ATLAS Offline Software by
1.17.0