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

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

#include <acts/blob/master/Examples/Algorithms/Propagation/include/ACTFW/Propagation/PropagationAlgorithm.hpp>

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

Classes

struct  Config
 

Public Member Functions

 PropagationAlgorithm (const Config &cnf, Acts::Logging::Level loglevel)
 
FW::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 FW::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 (FW::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 FW::BareAlgorithm
const Acts::Loggerlogger () const
 

Detailed Description

template<typename propagator_t>
class FW::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 38 of file PropagationAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 38 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 FW::BareAlgorithm.

Definition at line 113 of file PropagationAlgorithm.hpp.

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

template<typename propagator_t >
template<typename parameters_t >
PropagationOutput FW::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 49 of file PropagationAlgorithm.ipp.

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

References ACTS_DEBUG, ACTS_VERBOSE, FW::AlgorithmContext::geoContext, FW::AlgorithmContext::magFieldContext, and Acts::VectorHelpers::perp().

+ Here is the call graph for this function:

template<typename propagator_t >
template<typename parameters_t >
PropagationOutput FW::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 50 of file PropagationAlgorithm.hpp.

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

template<typename propagator_t >
std::optional< Acts::BoundSymMatrix > PropagationAlgorithm::generateCovariance ( FW::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 15 of file PropagationAlgorithm.hpp.

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

Member Data Documentation

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

the config class

Definition at line 136 of file PropagationAlgorithm.hpp.

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


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