ATLAS Offline Software
Loading...
Searching...
No Matches
MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters Struct Reference

Job-summed grouping-purity diagnostics: does a formed (kept) component mix segments from more than one truth muon, and does each truth muon's retained segments end up in one clean component, a component shared with another muon, or split across several components? More...

Public Attributes

std::array< std::atomic< std::size_t >, 3 > componentsByOutcome {}
 clean / mixed / bkgOnly
std::array< std::atomic< std::size_t >, kSizeBins > componentSizeHist {}
std::array< std::atomic< std::size_t >, 3 *kScoreBins > scoreByOutcome {}
 Kept components split by outcome (clean / mixed / bkgOnly), index = outcome * nBins + bin.
std::array< std::atomic< std::size_t >, 3 *kSizeBins > sizeByOutcome {}
 retained segments
std::array< std::atomic< std::size_t >, 3 *kLayerBins > layersByOutcome {}
 distinct LayerIndex
std::array< std::atomic< std::size_t >, 3 *kCrossScoreBins > crossScoreByOutcome {}
 strongest cross-layer edge
std::array< std::atomic< std::size_t >, 3 *kCrossEdgeBins > crossEdgesByOutcome {}
 number of cross-layer edges
std::atomic< std::size_t > weakCleanWithOther {0}
std::atomic< std::size_t > weakCleanAlone {0}
std::atomic< std::size_t > mixedComponentSegments {0}
std::array< std::atomic< std::size_t >, kColumns *3 > muonOutcome {}
 clean/mixed/fragmented, per column
std::atomic< std::uint64_t > worstMixedPacked {0}

Static Public Attributes

static constexpr std::size_t kSizeBins = 6
static constexpr std::size_t kColumns = 4
static constexpr std::size_t kScoreBins = 5
static constexpr std::size_t kLayerBins = 4
static constexpr std::size_t kCrossScoreBins = 6
 Components spanning >= 2 layers (the only ones that can seed), per outcome:
static constexpr std::size_t kCrossEdgeBins = 4

Detailed Description

Job-summed grouping-purity diagnostics: does a formed (kept) component mix segments from more than one truth muon, and does each truth muon's retained segments end up in one clean component, a component shared with another muon, or split across several components?

Definition at line 161 of file SegmentEdgeInferenceAlg.h.

Member Data Documentation

◆ componentsByOutcome

std::array<std::atomic<std::size_t>, 3> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::componentsByOutcome {}

clean / mixed / bkgOnly

Definition at line 166 of file SegmentEdgeInferenceAlg.h.

166{};

◆ componentSizeHist

std::array<std::atomic<std::size_t>, kSizeBins> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::componentSizeHist {}

Definition at line 167 of file SegmentEdgeInferenceAlg.h.

167{};

◆ crossEdgesByOutcome

std::array<std::atomic<std::size_t>, 3 * kCrossEdgeBins> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::crossEdgesByOutcome {}

number of cross-layer edges

Definition at line 176 of file SegmentEdgeInferenceAlg.h.

176{};

◆ crossScoreByOutcome

std::array<std::atomic<std::size_t>, 3 * kCrossScoreBins> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::crossScoreByOutcome {}

strongest cross-layer edge

Definition at line 175 of file SegmentEdgeInferenceAlg.h.

175{};

◆ kColumns

std::size_t MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::kColumns = 4
staticconstexpr

Definition at line 163 of file SegmentEdgeInferenceAlg.h.

◆ kCrossEdgeBins

std::size_t MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::kCrossEdgeBins = 4
staticconstexpr

Definition at line 174 of file SegmentEdgeInferenceAlg.h.

◆ kCrossScoreBins

std::size_t MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::kCrossScoreBins = 6
staticconstexpr

Components spanning >= 2 layers (the only ones that can seed), per outcome:

Definition at line 173 of file SegmentEdgeInferenceAlg.h.

◆ kLayerBins

std::size_t MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::kLayerBins = 4
staticconstexpr

Definition at line 165 of file SegmentEdgeInferenceAlg.h.

◆ kScoreBins

std::size_t MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::kScoreBins = 5
staticconstexpr

Definition at line 164 of file SegmentEdgeInferenceAlg.h.

◆ kSizeBins

std::size_t MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::kSizeBins = 6
staticconstexpr

Definition at line 162 of file SegmentEdgeInferenceAlg.h.

◆ layersByOutcome

std::array<std::atomic<std::size_t>, 3 * kLayerBins> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::layersByOutcome {}

distinct LayerIndex

Definition at line 171 of file SegmentEdgeInferenceAlg.h.

171{};

◆ mixedComponentSegments

std::atomic<std::size_t> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::mixedComponentSegments {0}

Definition at line 179 of file SegmentEdgeInferenceAlg.h.

179{0};

◆ muonOutcome

std::array<std::atomic<std::size_t>, kColumns * 3> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::muonOutcome {}

clean/mixed/fragmented, per column

Definition at line 180 of file SegmentEdgeInferenceAlg.h.

180{};

◆ scoreByOutcome

std::array<std::atomic<std::size_t>, 3 * kScoreBins> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::scoreByOutcome {}

Kept components split by outcome (clean / mixed / bkgOnly), index = outcome * nBins + bin.

strongest selected edge

Definition at line 169 of file SegmentEdgeInferenceAlg.h.

169{};

◆ sizeByOutcome

std::array<std::atomic<std::size_t>, 3 * kSizeBins> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::sizeByOutcome {}

retained segments

Definition at line 170 of file SegmentEdgeInferenceAlg.h.

170{};

◆ weakCleanAlone

std::atomic<std::size_t> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::weakCleanAlone {0}

Definition at line 178 of file SegmentEdgeInferenceAlg.h.

178{0};

◆ weakCleanWithOther

std::atomic<std::size_t> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::weakCleanWithOther {0}

Definition at line 177 of file SegmentEdgeInferenceAlg.h.

177{0};

◆ worstMixedPacked

std::atomic<std::uint64_t> MuonML::SegmentEdgeInferenceAlg::GroupPurityCounters::worstMixedPacked {0}

Definition at line 181 of file SegmentEdgeInferenceAlg.h.

181{0};

The documentation for this struct was generated from the following file: