![]() |
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 unsigned int | cardinality () const override |
| Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant. | |
| 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 |
| virtual void | setFilterPassed (bool state, const EventContext &ctx) const |
| 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 209 of file TrackTruthMatchingBaseAlg.cxx.
|
overridevirtualinherited |
Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant.
Override this to return 0 for reentrant algorithms.
Definition at line 75 of file AthCommonReentrantAlgorithm.cxx.
|
privateinherited |
check that bins are in increasing order.
will cause a FATAL error if bins are not in increasing order.
Definition at line 403 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
Definition at line 777 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 94 of file AthCommonReentrantAlgorithm.cxx.
|
inlinevirtualinherited |
Definition at line 96 of file AthCommonReentrantAlgorithm.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 368 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
Return the category based on the PDG ID.
Definition at line 379 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 417 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.
|
overridevirtualinherited |
Specify if the algorithm is clonable.
Reentrant algorithms are clonable.
Reimplemented in InDet::GNNSeedingTrackMaker, InDet::SCT_Clusterization, InDet::SiSPGNNTrackMaker, InDet::SiSPSeededTrackFinder, InDet::SiTrackerSpacePointFinder, ITkPixelCablingAlg, ITkStripCablingAlg, RoIBResultToxAOD, SCT_ByteStreamErrorsTestAlg, SCT_CablingCondAlgFromCoraCool, SCT_CablingCondAlgFromText, SCT_ConditionsParameterTestAlg, SCT_ConditionsSummaryTestAlg, SCT_ConfigurationConditionsTestAlg, 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, and Simulation::BeamEffectsAlg.
Definition at line 68 of file AthCommonReentrantAlgorithm.cxx.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
inlinestaticprivateinherited |
Definition at line 808 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 331 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
Definition at line 570 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
Definition at line 717 of file TrackTruthMatchingBaseAlg.cxx.
|
privateinherited |
Definition at line 548 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 |
Definition at line 100 of file AthCommonReentrantAlgorithm.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.
Definition at line 85 of file AthCommonReentrantAlgorithm.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 HypoBase, and InputMakerBase.
Definition at line 61 of file AthCommonReentrantAlgorithm.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 798 of file TrackTruthMatchingBaseAlg.cxx.
|
mutableprivateinherited |
Definition at line 358 of file TrackTruthMatchingBaseAlg.h.
|
mutableprivateinherited |
Definition at line 359 of file TrackTruthMatchingBaseAlg.h.
|
mutableprivateinherited |
Definition at line 360 of file TrackTruthMatchingBaseAlg.h.
|
mutableprivateinherited |
Definition at line 361 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 114 of file AthCommonReentrantAlgorithm.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.