Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsExamples::TrackFindingAlgorithm Exception Referencefinal

#include <acts/blob/sPHENIX/Examples/Algorithms/TrackFinding/include/ActsExamples/TrackFinding/TrackFindingAlgorithm.hpp>

+ Inheritance diagram for ActsExamples::TrackFindingAlgorithm:
+ Collaboration diagram for ActsExamples::TrackFindingAlgorithm:

Classes

struct  Config
 
class  TrackFinderFunction
 

Public Types

using TrackFinderOptions = Acts::CombinatorialKalmanFilterOptions< IndexSourceLinkAccessor::Iterator, Acts::VectorMultiTrajectory >
 
using TrackFinderResult = Acts::Result< std::vector< TrackContainer::TrackProxy >>
 

Public Member Functions

 TrackFindingAlgorithm (Config config, Acts::Logging::Level level)
 
ActsExamples::ProcessCode execute (const ActsExamples::AlgorithmContext &ctx) const final
 
const Configconfig () const
 Get readonly access to the config parameters.
 
- Public Member Functions inherited from ActsExamples::IAlgorithm
 IAlgorithm (std::string name, Acts::Logging::Level level=Acts::Logging::INFO)
 
std::string name () const override
 The algorithm name.
 
ProcessCode internalExecute (const AlgorithmContext &context) final
 
ProcessCode initialize () override
 Initialize the algorithm.
 
ProcessCode finalize () override
 Finalize the algorithm.
 

Static Public Member Functions

static std::shared_ptr
< TrackFinderFunction
makeTrackFinderFunction (std::shared_ptr< const Acts::TrackingGeometry > trackingGeometry, std::shared_ptr< const Acts::MagneticFieldProvider > magneticField, const Acts::Logger &logger)
 

Private Member Functions

template<typename source_link_accessor_container_t >
void computeSharedHits (const source_link_accessor_container_t &sourcelinks, TrackContainer &tracks) const
 
ActsExamples::ProcessCode finalize () override
 Finalize the algorithm.
 

Private Attributes

Config m_cfg
 
std::optional
< Acts::TrackSelector
m_trackSelector
 
ReadDataHandle
< MeasurementContainer
m_inputMeasurements
 
ReadDataHandle
< IndexSourceLinkContainer
m_inputSourceLinks
 
ReadDataHandle
< TrackParametersContainer
m_inputInitialTrackParameters
 
WriteDataHandle
< ConstTrackContainer
m_outputTracks {this, "OutputTracks"}
 
std::atomic< size_t > m_nTotalSeeds {0}
 
std::atomic< size_t > m_nFailedSeeds {0}
 
tbb::combinable
< Acts::VectorMultiTrajectory::Statistics
m_memoryStatistics
 

Additional Inherited Members

- Protected Member Functions inherited from ActsExamples::IAlgorithm
const Acts::Loggerlogger () const
 

Detailed Description

Definition at line 50 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 50 of file TrackFindingAlgorithm.hpp

Member Typedef Documentation

Track finder function that takes input measurements, initial trackstate and track finder options and returns some track-finder-specific result.

Definition at line 56 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 56 of file TrackFindingAlgorithm.hpp

Definition at line 58 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 58 of file TrackFindingAlgorithm.hpp

Constructor & Destructor Documentation

ActsExamples::TrackFindingAlgorithm::TrackFindingAlgorithm ( Config  config,
Acts::Logging::Level  level 
)

Constructor of the track finding algorithm

Parameters
configis the config struct to configure the algorithm
levelis the logging level

Definition at line 42 of file TrackFindingAlgorithm.cpp.

View newest version in sPHENIX GitHub at line 42 of file TrackFindingAlgorithm.cpp

References m_cfg, and ActsExamples::TrackFindingAlgorithm::Config::trackSelectorCfg.

Member Function Documentation

template<typename source_link_accessor_container_t >
void ActsExamples::TrackFindingAlgorithm::computeSharedHits ( const source_link_accessor_container_t &  sourcelinks,
TrackContainer tracks 
) const
private

Definition at line 154 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 154 of file TrackFindingAlgorithm.hpp

References index, Acts::MeasurementFlag, Acts::SharedHitFlag, and filter::state.

const Config& ActsExamples::TrackFindingAlgorithm::config ( ) const
inline

Get readonly access to the config parameters.

Definition at line 118 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 118 of file TrackFindingAlgorithm.hpp

References m_cfg.

ActsExamples::ProcessCode ActsExamples::TrackFindingAlgorithm::finalize ( )
overrideprivatevirtual

Finalize the algorithm.

Implements ActsExamples::SequenceElement.

Definition at line 194 of file TrackFindingAlgorithm.cpp.

View newest version in sPHENIX GitHub at line 194 of file TrackFindingAlgorithm.cpp

References KFPMath::a, ACTS_DEBUG, ACTS_INFO, KFPMath::b, Acts::PhysicalConstants::c, Acts::detail_vmt::VectorMultiTrajectoryBase::Statistics::hist, and SUCCESS.

std::shared_ptr< ActsExamples::TrackFindingAlgorithm::TrackFinderFunction > ActsExamples::TrackFindingAlgorithm::makeTrackFinderFunction ( std::shared_ptr< const Acts::TrackingGeometry trackingGeometry,
std::shared_ptr< const Acts::MagneticFieldProvider magneticField,
const Acts::Logger logger 
)
static

Create the track finder function implementation.

The magnetic field is intentionally given by-value since the variant contains shared_ptr anyway.

Definition at line 68 of file TrackFindingAlgorithmFunction.cpp.

View newest version in sPHENIX GitHub at line 68 of file TrackFindingAlgorithmFunction.cpp

References cfg, Acts::Logger::cloneWithSuffix(), filter::Config, testing::internal::move(), Acts::Test::navigator, and propagation_timing::stepper.

+ Here is the call graph for this function:

Member Data Documentation

Config ActsExamples::TrackFindingAlgorithm::m_cfg
private

Definition at line 128 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 128 of file TrackFindingAlgorithm.hpp

Referenced by config(), and TrackFindingAlgorithm().

ReadDataHandle<TrackParametersContainer> ActsExamples::TrackFindingAlgorithm::m_inputInitialTrackParameters
private
Initial value:
{
this, "InputInitialTrackParameters"}

Definition at line 136 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 136 of file TrackFindingAlgorithm.hpp

ReadDataHandle<MeasurementContainer> ActsExamples::TrackFindingAlgorithm::m_inputMeasurements
private
Initial value:
{this,
"InputMeasurements"}

Definition at line 131 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 131 of file TrackFindingAlgorithm.hpp

ReadDataHandle<IndexSourceLinkContainer> ActsExamples::TrackFindingAlgorithm::m_inputSourceLinks
private
Initial value:
{
this, "InputSourceLinks"}

Definition at line 133 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 133 of file TrackFindingAlgorithm.hpp

tbb::combinable<Acts::VectorMultiTrajectory::Statistics> ActsExamples::TrackFindingAlgorithm::m_memoryStatistics
mutableprivate
Initial value:
{[]() {
auto mtj = std::make_shared<Acts::VectorMultiTrajectory>();
return mtj->statistics();
}}

Definition at line 145 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 145 of file TrackFindingAlgorithm.hpp

std::atomic<size_t> ActsExamples::TrackFindingAlgorithm::m_nFailedSeeds {0}
mutableprivate

Definition at line 142 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 142 of file TrackFindingAlgorithm.hpp

std::atomic<size_t> ActsExamples::TrackFindingAlgorithm::m_nTotalSeeds {0}
mutableprivate

Definition at line 141 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 141 of file TrackFindingAlgorithm.hpp

WriteDataHandle<ConstTrackContainer> ActsExamples::TrackFindingAlgorithm::m_outputTracks {this, "OutputTracks"}
private

Definition at line 139 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 139 of file TrackFindingAlgorithm.hpp

std::optional<Acts::TrackSelector> ActsExamples::TrackFindingAlgorithm::m_trackSelector
private

Definition at line 129 of file TrackFindingAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 129 of file TrackFindingAlgorithm.hpp


The documentation for this exception was generated from the following files: