EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsExamples::PropagationAlgorithm< propagator_t > Class Template Reference

this test algorithm performs test propagation within the Acts::Propagator More...

#include <acts/blob/sPHENIX/Examples/Algorithms/Propagation/include/ActsExamples/Propagation/PropagationAlgorithm.hpp>

+ Inheritance diagram for ActsExamples::PropagationAlgorithm< propagator_t >:
+ Collaboration diagram for ActsExamples::PropagationAlgorithm< propagator_t >:

Classes

struct  Config
 

Public Member Functions

 PropagationAlgorithm (const Config &cnf, Acts::Logging::Level loglevel)
 
ActsExamples::ProcessCode execute (const AlgorithmContext &context) const finaloverride
 
template<typename parameters_t >
PropagationOutput executeTest (const AlgorithmContext &context, const parameters_t &startParameters, double pathLength) const
 
- Public Member Functions inherited from ActsExamples::BareAlgorithm
 BareAlgorithm (std::string name, Acts::Logging::Level level=Acts::Logging::INFO)
 
std::string name () const finaloverride
 The algorithm name.
 

Private Member Functions

std::optional
< Acts::BoundSymMatrix
generateCovariance (ActsExamples::RandomEngine &rnd, std::normal_distribution< double > &gauss) const
 
template<typename parameters_t >
PropagationOutput executeTest (const AlgorithmContext &context, const parameters_t &startParameters, double pathLength=std::numeric_limits< double >::max()) const
 

Private Attributes

Config m_cfg
 the config class
 

Additional Inherited Members

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

Detailed Description

template<typename propagator_t>
class ActsExamples::PropagationAlgorithm< propagator_t >

this test algorithm performs test propagation within the Acts::Propagator

If the propagator is equipped appropriately, it can also be used to test the Extrapolator within the geomtetry

Template Parameters
propagator_tType of the Propagator to be tested

Definition at line 60 of file PropagationAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 60 of file PropagationAlgorithm.hpp

Constructor & Destructor Documentation

template<typename propagator_t >
PropagationAlgorithm::PropagationAlgorithm ( const Config cnf,
Acts::Logging::Level  loglevel 
)

Constructor

Parameters
[in]cnfis the configuration struct
[in]loglevelis the loggin level

Definition at line 40 of file PropagationAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 40 of file PropagationAlgorithm.hpp

Member Function Documentation

template<typename propagator_t >
ProcessCode PropagationAlgorithm::execute ( const AlgorithmContext context) const
finaloverridevirtual

Framework execute method

Parameters
[in]thealgorithm context for event consistency
Returns
is a process code indicating succes or not

get the d0 and z0

Implements ActsExamples::BareAlgorithm.

Definition at line 107 of file PropagationAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 107 of file PropagationAlgorithm.hpp

template<typename propagator_t >
template<typename parameters_t >
PropagationOutput ActsExamples::PropagationAlgorithm< propagator_t >::executeTest ( const AlgorithmContext context,
const parameters_t &  startParameters,
double  pathLength 
) const

Templated execute test method for charged and netural particles

Parameters
[in]contextis the contextual data of this event
[in]startParametersthe start parameters
[in]pathLengththe maximal path length to go

Definition at line 51 of file PropagationAlgorithm.ipp.

View newest version in sPHENIX GitHub at line 51 of file PropagationAlgorithm.ipp

References ACTS_DEBUG, ActsExamples::AlgorithmContext::geoContext, ActsExamples::AlgorithmContext::magFieldContext, eicpy.build::options, and ActsTests::PropagationDatasets::pathLength.

template<typename propagator_t >
template<typename parameters_t >
PropagationOutput ActsExamples::PropagationAlgorithm< propagator_t >::executeTest ( const AlgorithmContext context,
const parameters_t &  startParameters,
double  pathLength = std::numeric_limits<double>::max() 
) const
private

Templated execute test method for charged and netural particles

Parameters
[in]contextThe Context for this call
[in]startParametersthe start parameters
[in]pathLengthethe path limit of this propagation
Returns
collection of Propagation steps for further analysis

Templated execute test method for charged and netural particles

Parameters
[in]contextis the contextual data of this event
[in]startParametersthe start parameters
[in]pathLengththe maximal path length to go

Definition at line 52 of file PropagationAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 52 of file PropagationAlgorithm.hpp

template<typename propagator_t >
std::optional< Acts::BoundSymMatrix > PropagationAlgorithm::generateCovariance ( ActsExamples::RandomEngine rnd,
std::normal_distribution< double > &  gauss 
) const
private

Private helper method to create a corrleated covariance matrix

Parameters
[in]rndis the random engine
[in]gaussis a gaussian distribution to draw from

Definition at line 16 of file PropagationAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 16 of file PropagationAlgorithm.hpp

Member Data Documentation

template<typename propagator_t >
Config ActsExamples::PropagationAlgorithm< propagator_t >::m_cfg
private

the config class

Definition at line 137 of file PropagationAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 137 of file PropagationAlgorithm.hpp


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