ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
ActsPlugins::GnnPipeline Class Reference

Graph Neural Network pipeline for track finding. More...

#include <ActsPlugins/Gnn/GnnPipeline.hpp>

Public Member Functions

 GnnPipeline (std::shared_ptr< GraphConstructionBase > graphConstructor, std::vector< std::shared_ptr< EdgeClassificationBase > > edgeClassifiers, std::shared_ptr< TrackBuildingBase > trackBuilder, std::unique_ptr< const Acts::Logger > logger)
 Construct GNN pipeline.
std::vector< std::vector< int > > run (std::vector< float > &features, const std::vector< std::uint64_t > &moduleIds, std::vector< int > &spacePointIDs, Device device, const GnnHook &hook={}, GnnTiming *timing=nullptr) const
 Run the GNN pipeline.

Detailed Description

Graph Neural Network pipeline for track finding.

Constructor & Destructor Documentation

◆ GnnPipeline()

ActsPlugins::GnnPipeline::GnnPipeline ( std::shared_ptr< GraphConstructionBase > graphConstructor,
std::vector< std::shared_ptr< EdgeClassificationBase > > edgeClassifiers,
std::shared_ptr< TrackBuildingBase > trackBuilder,
std::unique_ptr< const Acts::Logger > logger )

Construct GNN pipeline.

Parameters
graphConstructorGraph construction stage
edgeClassifiersEdge classification stages
trackBuilderTrack building stage
loggerLogger instance

Member Function Documentation

◆ run()

std::vector< std::vector< int > > ActsPlugins::GnnPipeline::run ( std::vector< float > & features,
const std::vector< std::uint64_t > & moduleIds,
std::vector< int > & spacePointIDs,
Device device,
const GnnHook & hook = {},
GnnTiming * timing = nullptr ) const

Run the GNN pipeline.

Parameters
featuresInput feature vector
moduleIdsModule identifiers for each space point
spacePointIDsSpace point identifiers
deviceDevice to run on (CPU/GPU)
hookOptional callback hook for pipeline execution
timingOptional timing output
Returns
Vector of track candidates (each track is a vector of space point IDs)