ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
detray::actor::parameter_transporter< algebra_t > Struct Template Reference

Transport the free track parameters at the destination surface and the covariance at the departure surface to bound track parameters at the destination surface (current sensitive/material surface). More...

#include <detray/propagator/actors/parameter_updater.hpp>

Inheritance diagram for detray::actor::parameter_transporter< algebra_t >:
[legend]
Collaboration diagram for detray::actor::parameter_transporter< algebra_t >:
[legend]

Classes

struct  get_bound_to_free_dpos_dangle_visitor
 Visitor computing position derivatives with respect to direction angles. More...
struct  get_bound_to_free_dpos_dloc_visitor
 Visitors to the surface local coordinate frameCompute position derivatives with respect to local coordinates. More...
struct  get_free_to_bound_dloc_dpos_visitor
 Visitor computing local-coordinate derivatives with respect to position. More...
struct  select_frame
 Filter the masks of a detector according to the local frame type. More...

Public Types

using bound_matrix_type = bound_matrix<algebra_t>
 Bound matrix type (bound covariance).
using bound_track_parameters_type = bound_track_parameters<algebra_t>
 The track parameters bound to the current sensitive/material surface.
using free_track_parameters_type = free_track_parameters<algebra_t>
 The current free track parameters in the stepper algorithm.
using result = parameter_transporter_result<algebra_t>
 Result returned to observers after transporting parameters.
using state = parameter_updater_state<algebra_t>
 Use the parameter updater state.
using transform3_type = dtransform3D<algebra_t>
 Transformation type used for surface-frame Jacobians.

Public Member Functions

template<typename propagator_state_t>
constexpr bound_matrix_type get_full_jacobian (propagator_state_t &propagation, const bound_track_parameters_type &departure_params) const
 Assemble the full bound-to-bound Jacobian for this propagation step.
template<typename propagator_state_t>
result operator() (state &updater_state, propagator_state_t &propagation) const
 Actor interface.

Detailed Description

template<concepts::algebra algebra_t>
struct detray::actor::parameter_transporter< algebra_t >

Transport the free track parameters at the destination surface and the covariance at the departure surface to bound track parameters at the destination surface (current sensitive/material surface).

Member Function Documentation

◆ get_full_jacobian()

template<concepts::algebra algebra_t>
template<typename propagator_state_t>
bound_matrix_type detray::actor::parameter_transporter< algebra_t >::get_full_jacobian ( propagator_state_t & propagation,
const bound_track_parameters_type & departure_params ) const
constexpr

Assemble the full bound-to-bound Jacobian for this propagation step.

Template Parameters
propagator_state_tPropagator state type.
Parameters
propagationCurrent propagation state.
departure_paramsBound parameters at the departure surface.
Returns
the full Jacobian between departure and destination surfaces

◆ operator()()

template<concepts::algebra algebra_t>
template<typename propagator_state_t>
result detray::actor::parameter_transporter< algebra_t >::operator() ( state & updater_state,
propagator_state_t & propagation ) const

Actor interface.

Template Parameters
propagator_state_tPropagator state type.
Parameters
updater_stateShared parameter-updater state.
propagationCurrent propagation state.
Returns
Transport status and destination bound parameters.