![]() |
ATLAS Offline Software
|
#include <TrackFindingValidationAlg.h>
Public Member Functions | |
| virtual StatusCode | initialize () override |
| virtual StatusCode | finalize () override |
| virtual StatusCode | execute (const EventContext &ctx) const override |
| TrackTruthMatchingBaseAlg (const std::string &name, ISvcLocator *pSvcLocator) | |
| virtual StatusCode | sysInitialize () override |
| Override sysInitialize. | |
| virtual bool | isClonable () const override |
| Specify if the algorithm is clonable. | |
| virtual StatusCode | sysExecute (const EventContext &ctx) override |
| Execute an algorithm. | |
| virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. | |
| virtual bool | filterPassed (const EventContext &ctx) const |
| Get filter decision: | |
| virtual void | setFilterPassed (bool state, const EventContext &ctx) const |
| Set filter decision: | |
| ServiceHandle< StoreGateSvc > & | evtStore () |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. | |
| const ServiceHandle< StoreGateSvc > & | detStore () const |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. | |
| virtual StatusCode | sysStart () override |
| Handle START transition. | |
| virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. | |
| virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. | |
| Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T, V, H > &t) |
| void | updateVHKA (Gaudi::Details::PropertyBase &) |
| MsgStream & | msg () const |
| bool | msgLvl (const MSG::Level lvl) const |
Protected Types | |
| using | EventStat = EventStatBase<TrackFindingValidationDetailedStat> |
Protected Member Functions | |
| const TruthParticleHitCounts & | getTruthParticleHitCounts (const EventContext &ctx) const |
| const IAthSelectionTool & | truthSelectionTool () const |
| std::size_t | perEtaSize () const |
| std::size_t | perPdgIdSize () const |
| TruthMatchResult | analyseTrackTruth (const TruthParticleHitCounts &truth_particle_hit_counts, const HitCountsPerTrack &track_hit_counts, EventStat &event_stat) const |
| void | postProcessEventStat (const TruthParticleHitCounts &truth_particle_hit_counts, std::size_t n_tracks, EventStat &event_stat) const |
| void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
| remove all handles from I/O resolution | |
| std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > | renounce (T &h) |
| void | extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps) |
| Add StoreName to extra input/output deps as needed. | |
Private Types | |
| enum | ECounter { NTracksTotal , NTruthWithCountsTotal , MissingTruthParticleHitCounts , NoAssociatedTruthParticle , NoSelectedTruthParticle , TruthParticleNoNoiseMismatch , kNCounter } |
| enum | ECategorisedCounter { kNTotalParticles , kNParticleWithAssociatedTrack , kNParticleWithMultipleAssociatedTracks , kNTotalTracks , kNCategorisedCounter } |
| enum | ECategorisedStat { kHitEfficiency , kHitPurity , kMatchProbability , kNCategorisedStat } |
| template<class Base> | |
| using | Property = std::conditional< TrackFindingValidationDetailedStat, Gaudi::Property<Base>, DummyProperty<Base> >::type |
| typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
| void | checkBinOrder (const std::vector< float > &bin_edges, const std::string &bin_label) const |
| check that bins are in increasing order. | |
| std::size_t | getPtEtaStatCategory (float pt, float eta) const |
| Return the category based on the provided eta value. | |
| std::size_t | getPtPdgIdStatCategory (float pt, int pdg_id) const |
| Return the category based on the PDG ID. | |
| void | initStatTables () |
| void | printStatTables () const |
| void | printCategories (const std::vector< std::string > &pt_category_labels, const std::vector< std::string > &eta_category_labels, std::vector< std::string > &counter_labels, std::vector< std::array< ActsUtils::Stat, kNCategorisedStat > > &stat_per_category, std::vector< std::array< std::size_t, kNCategorisedCounter > > &counts_per_category, const std::string &top_left_label, bool print_sub_categories) const |
| void | printData2D (const std::vector< std::string > &row_category_labels, const std::vector< std::string > &col_category_labels, const std::string &top_left_label, std::vector< std::array< ActsUtils::Stat, kNCategorisedStat > > &stat_per_category, std::vector< std::array< std::size_t, kNCategorisedCounter > > &counts_per_category, bool rotate) const |
| StatusCode | checkMatchWeights () |
| Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> | |
Static Private Member Functions | |
| static double | weightedCountSum (const ActsTrk::HitCounterArray &counts, const std::vector< float > &weights) |
| static double | noiseCorrection (const ActsTrk::HitCounterArray &noise_counts, const std::vector< float > &weights) |
Private Attributes | |
| SG::ReadHandleKey< TrackToTruthParticleAssociation > | m_trackToTruth {this, "TrackToTruthAssociationMap","", "Association map from tracks to generator particles." } |
| SG::ReadHandleKey< TruthParticleHitCounts > | m_truthHitCounts {this, "TruthParticleHitCounts","", "Map from truth particle to hit counts." } |
| Gaudi::Property< std::vector< float > > | m_weightsForProb |
| Gaudi::Property< std::vector< float > > | m_weights |
| Property< std::vector< float > > | m_statEtaBins {this, "StatisticEtaBins", {-4, -2.6, -2, 0, 2., 2.6, 4}, "Gather statistics separately for these eta bins."} |
| Property< std::vector< float > > | m_statPtBins {this, "StatisticPtBins", {1.e3,2.5e3,10e3, 100e3}, "Gather statistics separately for these pt bins."} |
| Property< bool > | m_pdgIdCategorisation {this, "PdgIdCategorisation", false, "Categorise by pdg id."} |
| Property< bool > | m_showRawCounts {this, "ShowRawCounts", false, "Show all counters."} |
| Property< bool > | m_printDetails {this, "ShowDetailedTables", false, "Show more details; stat. uncert., RMS, entries"} |
| Property< bool > | m_computeTrackRecoEfficiency {this, "ComputeTrackRecoEfficiency", true, "Compute and print track reconstruction efficiency."} |
| ToolHandle< IAthSelectionTool > | m_truthSelectionTool {this, "TruthSelectionTool","AthTruthSelectionTool", "Truth selection tool (for efficiencies and resolutions)"} |
| DebugCounter< TrackFindingValidationDebugHists > | m_debugCounter |
| bool | m_useAbsEtaForStat = false |
| std::mutex m_statMutex | ATLAS_THREAD_SAFE |
| std::array< std::size_t, kNCounter > m_counter | ATLAS_THREAD_SAFE {} |
| std::vector< int > m_pdgId | ATLAS_THREAD_SAFE |
| BaseStat< TrackFindingValidationDetailedStat > m_detailedStat | ATLAS_THREAD_SAFE |
| DataObjIDColl | m_extendedExtraObjects |
| Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks. | |
| StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default). | |
| StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default). | |
| std::vector< SG::VarHandleKeyArray * > | m_vhka |
| bool | m_varHandleArraysDeclared |
Static Private Attributes | |
| static constexpr unsigned int | s_NMeasurementTypes = static_cast<unsigned int>(xAOD::UncalibMeasType::nTypes) |
| static constexpr int | s_pdgIdMax = 1000000000 |
Definition at line 23 of file TrackFindingValidationAlg.h.
|
protectedinherited |
Definition at line 129 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 184 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
|
privateinherited |
| Enumerator | |
|---|---|
| kNTotalParticles | |
| kNParticleWithAssociatedTrack | |
| kNParticleWithMultipleAssociatedTracks | |
| kNTotalTracks | |
| kNCategorisedCounter | |
Definition at line 243 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
| Enumerator | |
|---|---|
| kHitEfficiency | |
| kHitPurity | |
| kMatchProbability | |
| kNCategorisedStat | |
Definition at line 250 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
| Enumerator | |
|---|---|
| NTracksTotal | |
| NTruthWithCountsTotal | |
| MissingTruthParticleHitCounts | |
| NoAssociatedTruthParticle | |
| NoSelectedTruthParticle | |
| TruthParticleNoNoiseMismatch | |
| kNCounter | |
Definition at line 233 of file TrackTruthMatchingBaseAlg.h.
|
protectedinherited |
| return | tuple containing pointer to best matching truth particle, matching probability, hit purity and hit efficiency. |
Definition at line 203 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
check that bins are in increasing order.
will cause a FATAL error if bins are not in increasing order.
Definition at line 397 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
Definition at line 771 of file TrackTruthMatchingBaseAlg.cxx.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
|
inlineinherited |
Definition at line 145 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 95 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 85 of file AthCommonDataStore.h.
|
overridevirtual |
Definition at line 23 of file TrackFindingValidationAlg.cxx.
|
protectedinherited |
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
|
overridevirtualinherited |
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 89 of file AthCommonAlgorithm.cxx.
|
inlinevirtualinherited |
Get filter decision:
Definition at line 93 of file AthCommonAlgorithm.h.
|
overridevirtual |
Reimplemented from ActsTrk::TrackTruthMatchingBaseAlg.
Definition at line 17 of file TrackFindingValidationAlg.cxx.
|
inlineprivateinherited |
Return the category based on the provided eta value.
| pt | the pt of the truth particle |
| eta | the eta of the truth particle |
Definition at line 362 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
Return the category based on the PDG ID.
| pt | the pt of the truth particle |
| pdg_id | the PDG ID |
Definition at line 373 of file TrackTruthMatchingBaseAlg.cxx.
|
inlineprotectedinherited |
Definition at line 60 of file TrackTruthMatchingBaseAlg.h.
|
overridevirtual |
Reimplemented from ActsTrk::TrackTruthMatchingBaseAlg.
Definition at line 10 of file TrackFindingValidationAlg.cxx.
|
privateinherited |
Definition at line 411 of file TrackTruthMatchingBaseAlg.cxx.
|
overridevirtualinherited |
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
inlineoverridevirtualinherited |
Specify if the algorithm is clonable.
Only relevant for non-reentrant algorithms. Actual number of clones needs to be set via the "Cardinality" property.
Reimplemented in AFP_DigiTop, AlgB, AlgT, BCM_Digitization, CscDigitBuilder, CscDigitToCscRDO, G4AtlasAlg, G4RunAlg, HGTD_Digitization, HiveAlgBase, InDet::GNNSeedingTrackMaker, InDet::SCT_Clusterization, InDet::SiSPGNNTrackMaker, InDet::SiSPSeededTrackFinder, InDet::SiTrackerSpacePointFinder, ISF::SimKernelMT, ITk::StripDigitization, ITkPixelCablingAlg, ITkStripCablingAlg, LArHitEMapMaker, LArTTL1Maker, LUCID_DigiTop, LVL1::L1TopoSimulation, MergeCalibHits, MergeGenericMuonSimHitColl, MergeHijingPars, MergeMcEventCollection, MergeTrackRecordCollection, MergeTruthJets, MergeTruthParticles, MuonDigitizer, PileUpMTAlg, PixelDigitization, RoIBResultToxAOD, SCT_ByteStreamErrorsTestAlg, SCT_CablingCondAlgFromCoraCool, SCT_CablingCondAlgFromText, SCT_ConditionsParameterTestAlg, SCT_ConditionsSummaryTestAlg, SCT_ConfigurationConditionsTestAlg, SCT_Digitization, SCT_FlaggedConditionTestAlg, SCT_LinkMaskingTestAlg, SCT_MajorityConditionsTestAlg, SCT_ModuleVetoTestAlg, SCT_MonitorConditionsTestAlg, SCT_PrepDataToxAOD, SCT_RawDataToxAOD, SCT_ReadCalibChipDataTestAlg, SCT_ReadCalibDataTestAlg, SCT_RODVetoTestAlg, SCT_SensorsTestAlg, SCT_SiliconConditionsTestAlg, SCT_StripVetoTestAlg, SCT_TdaqEnabledTestAlg, SCT_TestCablingAlg, SCTEventFlagWriter, SCTRawDataProvider, SCTSiLorentzAngleTestAlg, SCTSiPropertiesTestAlg, SGInputLoader, Simulation::BeamEffectsAlg, TileHitVecToCnt, TileMuonFitter, TilePulseForTileMuonReceiver, TileRawChannelMaker, TRTDigitization, and ZDC_DigiTop.
Definition at line 68 of file AthCommonAlgorithm.h.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
inlinestaticprivateinherited |
Definition at line 802 of file TrackTruthMatchingBaseAlg.cxx.
|
overridevirtualinherited |
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
inlineprotectedinherited |
Definition at line 71 of file TrackTruthMatchingBaseAlg.h.
|
inlineprotectedinherited |
Definition at line 74 of file TrackTruthMatchingBaseAlg.h.
|
protectedinherited |
Definition at line 325 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
Definition at line 564 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
Definition at line 711 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
Definition at line 542 of file TrackTruthMatchingBaseAlg.cxx.
|
inlineprotectedinherited |
Definition at line 380 of file AthCommonDataStore.h.
|
inlineprotectedinherited |
remove all handles from I/O resolution
Definition at line 364 of file AthCommonDataStore.h.
|
inlinevirtualinherited |
Set filter decision:
Reimplemented in AthFilterAlgorithm.
Definition at line 99 of file AthCommonAlgorithm.h.
|
overridevirtualinherited |
Execute an algorithm.
We override this in order to work around an issue with the Algorithm base class storing the event context in a member variable that can cause crashes in MT jobs.
Reimplemented in AthAnalysisAlgorithm.
Definition at line 80 of file AthCommonAlgorithm.cxx.
|
overridevirtualinherited |
Override sysInitialize.
Override sysInitialize from the base class.
Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc
Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc
Reimplemented from AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >.
Reimplemented in AthAnalysisAlgorithm, AthFilterAlgorithm, AthHistogramAlgorithm, HypoBase, InputMakerBase, and PyAthena::Alg.
Definition at line 60 of file AthCommonAlgorithm.cxx.
|
overridevirtualinherited |
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
| ActsTrk::TrackTruthMatchingBaseAlg::TrackTruthMatchingBaseAlg | ( | const std::string & | name, |
| ISvcLocator * | pSvcLocator ) |
Definition at line 53 of file TrackTruthMatchingBaseAlg.cxx.
|
inlineprotectedinherited |
Definition at line 69 of file TrackTruthMatchingBaseAlg.h.
|
inlineinherited |
Definition at line 308 of file AthCommonDataStore.h.
|
inlinestaticprivateinherited |
Definition at line 792 of file TrackTruthMatchingBaseAlg.cxx.
|
mutableprivateinherited |
Definition at line 361 of file TrackTruthMatchingBaseAlg.h.
|
mutableprivateinherited |
Definition at line 360 of file TrackTruthMatchingBaseAlg.h.
|
mutableprivateinherited |
Definition at line 359 of file TrackTruthMatchingBaseAlg.h.
|
mutableprivateinherited |
Definition at line 358 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 196 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 227 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Pointer to StoreGate (detector store by default).
Definition at line 393 of file AthCommonDataStore.h.
|
privateinherited |
Pointer to StoreGate (event store by default).
Definition at line 390 of file AthCommonDataStore.h.
|
privateinherited |
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
Empty if no symlinks were found.
Definition at line 108 of file AthCommonAlgorithm.h.
|
privateinherited |
Definition at line 190 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 194 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 192 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 186 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 188 of file TrackTruthMatchingBaseAlg.h.
|
private |
Definition at line 33 of file TrackFindingValidationAlg.h.
|
privateinherited |
Definition at line 152 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 199 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 260 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 158 of file TrackTruthMatchingBaseAlg.h.
|
privateinherited |
Definition at line 155 of file TrackTruthMatchingBaseAlg.h.
|
staticconstexprprivateinherited |
Definition at line 230 of file TrackTruthMatchingBaseAlg.h.
|
staticconstexprprivateinherited |
Definition at line 257 of file TrackTruthMatchingBaseAlg.h.