Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::EigenStepper< extensionlist_t, auctioneer_t >::State Struct Reference

State for track parameter propagation. More...

#include <acts/blob/sPHENIX/Core/include/Acts/Propagator/EigenStepper.hpp>

+ Collaboration diagram for Acts::EigenStepper< extensionlist_t, auctioneer_t >::State:

Public Member Functions

 State ()=delete
 
 State (const GeometryContext &gctx, MagneticFieldProvider::Cache fieldCacheIn, const BoundTrackParameters &par, double ssize=std::numeric_limits< double >::max())
 

Public Attributes

FreeVector pars = FreeVector::Zero()
 Internal free vector parameters.
 
ParticleHypothesis particleHypothesis = ParticleHypothesis::pion()
 Particle hypothesis.
 
bool covTransport = false
 
Covariance cov = Covariance::Zero()
 
Jacobian jacobian = Jacobian::Identity()
 The full jacobian of the transport entire transport.
 
BoundToFreeMatrix jacToGlobal = BoundToFreeMatrix::Zero()
 Jacobian from local to the global frame.
 
FreeMatrix jacTransport = FreeMatrix::Identity()
 Pure transport jacobian part from runge kutta integration.
 
FreeVector derivative = FreeVector::Zero()
 The propagation derivative.
 
double pathAccumulated = 0.
 Accummulated path length state.
 
ConstrainedStep stepSize
 Adaptive step size of the runge-kutta integration.
 
double previousStepSize = 0.
 Last performed step (for overstep limit calculation)
 
MagneticFieldProvider::Cache fieldCache
 
std::reference_wrapper< const
GeometryContext
geoContext
 The geometry context.
 
extensionlist_t extension
 List of algorithmic extensions.
 
auctioneer_t auctioneer
 Auctioneer for choosing the extension.
 
struct {
   Vector3   B_first
 Magnetic field evaulations.
 
   Vector3   B_middle
 
   Vector3   B_last
 
   Vector3   k1
 k_i of the RKN4 algorithm
 
   Vector3   k2
 
   Vector3   k3
 
   Vector3   k4
 
   std::array< double, 4 >   kQoP {}
 k_i elements of the momenta
 
stepData
 

Detailed Description

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
struct Acts::EigenStepper< extensionlist_t, auctioneer_t >::State

State for track parameter propagation.

It contains the stepping information and is provided thread local by the propagator

Definition at line 62 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 62 of file EigenStepper.hpp

Constructor & Destructor Documentation

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::State ( )
delete
template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::State ( const GeometryContext gctx,
MagneticFieldProvider::Cache  fieldCacheIn,
const BoundTrackParameters par,
double  ssize = std::numeric_limits<double>::max() 
)
inlineexplicit

Constructor from the initial bound track parameters

Parameters
[in]gctxis the context object for the geometry
[in]fieldCacheInis the cache object for the magnetic field
[in]parThe track parameters at start
[in]ssizeis the maximum step size
Note
the covariance matrix is copied when needed

Definition at line 73 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 73 of file EigenStepper.hpp

References Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::cov, Acts::GenericBoundTrackParameters< particle_hypothesis_t >::covariance(), Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::covTransport, Acts::GenericBoundTrackParameters< particle_hypothesis_t >::direction(), Acts::eBoundQOverP, Acts::eFreeDir0, Acts::eFreePos0, Acts::eFreeQOverP, Acts::eFreeTime, Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::jacToGlobal, Acts::GenericBoundTrackParameters< particle_hypothesis_t >::parameters(), Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::pars, Acts::GenericBoundTrackParameters< particle_hypothesis_t >::position(), Acts::GenericBoundTrackParameters< particle_hypothesis_t >::referenceSurface(), writeMapConfig::surface, and Acts::GenericBoundTrackParameters< particle_hypothesis_t >::time().

+ Here is the call graph for this function:

Member Data Documentation

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
auctioneer_t Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::auctioneer

Auctioneer for choosing the extension.

Definition at line 141 of file EigenStepper.hpp.

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

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Vector3 Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::B_first

Magnetic field evaulations.

Definition at line 146 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 146 of file EigenStepper.hpp

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Vector3 Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::B_last

Definition at line 146 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 146 of file EigenStepper.hpp

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Vector3 Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::B_middle

Definition at line 146 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 146 of file EigenStepper.hpp

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Covariance Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::cov = Covariance::Zero()
template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
bool Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::covTransport = false

Covariance matrix (and indicator) associated with the initial error on track parameters

Definition at line 105 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 105 of file EigenStepper.hpp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::State().

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
FreeVector Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::derivative = FreeVector::Zero()
template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
extensionlist_t Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::extension

List of algorithmic extensions.

Definition at line 138 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 138 of file EigenStepper.hpp

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
MagneticFieldProvider::Cache Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::fieldCache

This caches the current magnetic field cell and stays (and interpolates) within it as long as this is valid. See step() code for details.

Definition at line 132 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 132 of file EigenStepper.hpp

Referenced by Acts::EigenStepper< extensionlist_t, auctioneer_t >::getField().

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
std::reference_wrapper<const GeometryContext> Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::geoContext
template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Jacobian Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::jacobian = Jacobian::Identity()
template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
BoundToFreeMatrix Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::jacToGlobal = BoundToFreeMatrix::Zero()
template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
FreeMatrix Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::jacTransport = FreeMatrix::Identity()
template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Vector3 Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::k1

k_i of the RKN4 algorithm

Definition at line 148 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 148 of file EigenStepper.hpp

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Vector3 Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::k2

Definition at line 148 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 148 of file EigenStepper.hpp

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Vector3 Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::k3

Definition at line 148 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 148 of file EigenStepper.hpp

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
Vector3 Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::k4

Definition at line 148 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 148 of file EigenStepper.hpp

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
std::array<double, 4> Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::kQoP {}

k_i elements of the momenta

Definition at line 150 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 150 of file EigenStepper.hpp

template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
ParticleHypothesis Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::particleHypothesis = ParticleHypothesis::pion()
template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
double Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::pathAccumulated = 0.
template<typename extensionlist_t = StepperExtensionList<DefaultExtension>, typename auctioneer_t = detail::VoidAuctioneer>
double Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::previousStepSize = 0.

Last performed step (for overstep limit calculation)

Definition at line 127 of file EigenStepper.hpp.

View newest version in sPHENIX GitHub at line 127 of file EigenStepper.hpp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::EigenStepper< extensionlist_t, auctioneer_t >::setStepSize().

struct { ... } Acts::EigenStepper< extensionlist_t, auctioneer_t >::State::stepData

The documentation for this struct was generated from the following file: