|
ACTS
Experiment-independent tracking
|
This class performs the Ridders algorithm to estimate the propagation of the covariance to a certain point in space. More...
#include <Acts/Propagator/RiddersPropagator.hpp>
Public Types | |
| using | Navigator = Propagator::Navigator |
| Type of the navigator in use. | |
| using | NavigatorOptions = Propagator::NavigatorOptions |
| Type of the navigator options. | |
| using | NavigatorState = Propagator::NavigatorState |
| Type of the navigator state. | |
| template<typename actor_list_t = ActorList<>> | |
| using | Options = RiddersPropagatorOptions<propagator_t, actor_list_t> |
| Type of the propagator options with actor list. | |
| using | Propagator = propagator_t |
| Type of the propagator used internally. | |
| template<typename propagator_options_t> | |
| using | ResultType |
| Type of the propagation result derived from the propagator options. | |
| template<typename propagator_options_t> | |
| using | State = Propagator::template State<propagator_options_t> |
| Type of the propagation state derived from the propagator options. | |
| using | Stepper = Propagator::Stepper |
| Type of the stepper in use. | |
| using | StepperOptions = Propagator::StepperOptions |
| Type of the stepper options. | |
| using | StepperState = Propagator::StepperState |
| Type of the stepper state. | |
Public Member Functions | |
| RiddersPropagator (propagator_t propagator) | |
| Constructor using a propagator. | |
| template<typename parameters_t, typename propagator_options_t> | |
| Result< ResultType< propagator_options_t > > | propagate (const parameters_t &start, const propagator_options_t &options) const |
| Propagation method targeting curvilinear parameters. | |
| template<typename parameters_t, typename propagator_options_t> | |
| Result< ResultType< propagator_options_t > > | propagate (const parameters_t &start, const Surface &target, const propagator_options_t &options) const |
| Propagation method targeting bound parameters. | |
This class performs the Ridders algorithm to estimate the propagation of the covariance to a certain point in space.
The algorithm is based on the small deviations of the start parameters based on their uncertainty at the beginning of the propagation. This deviation is represented here by a vector of relative deviations of these parameters and fix for all parameters. So, a common choice has to be found that is able to actually fit into the order of magnitude of the uncertainty of each parameter. Using these deviations, the propagation is repeated multiple times and the final covariance matrix at a given target surface is afterwards evaluated by first order derivatives of the final state parameters wrt. the initial parameters. Therefore this evaluation represents a first order approximation of the transport jacobian. Since performing multiple propagations and a numerical evaluation of the covariance requires more time than a single propagation towards a target + a common propagation of the covariance, this class just serves to verify the results of the latter classes.
| using Acts::RiddersPropagator< propagator_t >::Navigator = Propagator::Navigator |
Type of the navigator in use.
| using Acts::RiddersPropagator< propagator_t >::NavigatorOptions = Propagator::NavigatorOptions |
Type of the navigator options.
| using Acts::RiddersPropagator< propagator_t >::NavigatorState = Propagator::NavigatorState |
Type of the navigator state.
| using Acts::RiddersPropagator< propagator_t >::Options = RiddersPropagatorOptions<propagator_t, actor_list_t> |
Type of the propagator options with actor list.
| using Acts::RiddersPropagator< propagator_t >::Propagator = propagator_t |
Type of the propagator used internally.
| using Acts::RiddersPropagator< propagator_t >::ResultType |
Type of the propagation result derived from the propagator options.
| propagator_options_t | Type of the propagator options |
| using Acts::RiddersPropagator< propagator_t >::State = Propagator::template State<propagator_options_t> |
Type of the propagation state derived from the propagator options.
| propagator_options_t | Type of the propagator options |
| using Acts::RiddersPropagator< propagator_t >::Stepper = Propagator::Stepper |
Type of the stepper in use.
| using Acts::RiddersPropagator< propagator_t >::StepperOptions = Propagator::StepperOptions |
Type of the stepper options.
| using Acts::RiddersPropagator< propagator_t >::StepperState = Propagator::StepperState |
Type of the stepper state.
|
explicit |
Constructor using a propagator.
| [in] | propagator | The propagator to use |
| Result< ResultType< propagator_options_t > > Acts::RiddersPropagator< propagator_t >::propagate | ( | const parameters_t & | start, |
| const propagator_options_t & | options ) const |
Propagation method targeting curvilinear parameters.
| parameters_t | Type of the start parameters |
| propagator_options_t | Type of the propagator options |
| [in] | start | Start parameters |
| [in] | options | Options of the propagations |
| Result< ResultType< propagator_options_t > > Acts::RiddersPropagator< propagator_t >::propagate | ( | const parameters_t & | start, |
| const Surface & | target, | ||
| const propagator_options_t & | options ) const |
Propagation method targeting bound parameters.
| parameters_t | Type of the start parameters |
| propagator_options_t | Type of the propagator options |
| [in] | start | Start parameters |
| [in] | target | The target surface |
| [in] | options | Options of the propagations |