ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
detray::material_validator::material_tracer< vector_t > Struct Template Reference

Actor that collects all material encountered by a track during navigation. More...

#include <detray/test/validation/material_validation_utils.hpp>

Inheritance diagram for detray::material_validator::material_tracer< vector_t >:
[legend]
Collaboration diagram for detray::material_validator::material_tracer< vector_t >:
[legend]

Classes

struct  state
 State used to collect material during propagation. More...

Public Types

using material_record_type = material_record
 Type storing one material step.
using track_material_type = track_material
 Type storing accumulated track material.

Public Member Functions

template<typename propagator_state_t>
void operator() (state &tracer, const propagator_state_t &prop_state) const
 Run in a propagation chain without covariance transport.
template<typename propagator_state_t, concepts::algebra algebra_t>
void operator() (state &tracer, const propagator_state_t &prop_state, const detray::actor::parameter_transporter_result< algebra_t > &res) const
 Run as observer to the parameter transporter (covariance transport).

Detailed Description

template<template< typename... > class vector_t>
struct detray::material_validator::material_tracer< vector_t >

Actor that collects all material encountered by a track during navigation.

The material is scaled with either the slab thickness or pathlength through the material.

Member Function Documentation

◆ operator()() [1/2]

template<template< typename... > class vector_t>
template<typename propagator_state_t>
void detray::material_validator::material_tracer< vector_t >::operator() ( state & tracer,
const propagator_state_t & prop_state ) const

Run in a propagation chain without covariance transport.

Parameters
tracerState collecting material.
prop_stateCurrent propagator state.

◆ operator()() [2/2]

template<template< typename... > class vector_t>
template<typename propagator_state_t, concepts::algebra algebra_t>
void detray::material_validator::material_tracer< vector_t >::operator() ( state & tracer,
const propagator_state_t & prop_state,
const detray::actor::parameter_transporter_result< algebra_t > & res ) const

Run as observer to the parameter transporter (covariance transport).

Parameters
tracerState collecting material.
prop_stateCurrent propagator state.
resParameter transport result.