ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t > Class Template Reference

Propagator Actor plugin for the CombinatorialKalmanFilter. More...

+ Collaboration diagram for Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >:

Public Types

using TrackStateType = TrackState< source_link_t, parameters_t >
 
using TipState = CombinatorialKalmanFilterTipState
 
using BoundState = std::tuple< BoundParameters, BoundMatrix, double >
 
using CurvilinearState = std::tuple< CurvilinearParameters, BoundMatrix, double >
 
using result_type = CombinatorialKalmanFilterResult< source_link_t >
 Broadcast the result_type.
 

Public Member Functions

 Actor (updater_t pUpdater=updater_t(), smoother_t pSmoother=smoother_t(), source_link_selector_t pSourceLinkSelector=source_link_selector_t(), branch_stopper_t pBranchStopper=branch_stopper_t(), calibrator_t pCalibrator=calibrator_t())
 Explicit constructor with updater and calibrator.
 
template<typename propagator_state_t , typename stepper_t >
void operator() (propagator_state_t &state, const stepper_t &stepper, result_type &result) const
 CombinatorialKalmanFilter actor operation.
 
template<typename propagator_state_t , typename stepper_t >
void reset (propagator_state_t &state, stepper_t &stepper, result_type &result) const
 Kalman actor operation : reset propagation.
 
template<typename propagator_state_t , typename stepper_t >
Result< voidfilter (const Surface *surface, propagator_state_t &state, const stepper_t &stepper, result_type &result) const
 CombinatorialKalmanFilter actor operation :
 
Result< std::pair< size_t,
TipState > > 
addSourcelinkState (const TrackStatePropMask::Type &stateMask, const BoundState &boundState, const source_link_t &sourcelink, bool isOutlier, result_type &result, std::reference_wrapper< const GeometryContext > geoContext, const size_t &prevTip, const TipState &prevTipState, size_t neighborTip=SIZE_MAX, size_t sharedTip=SIZE_MAX) const
 CombinatorialKalmanFilter actor operation : add track state with source link: measurement or outlier.
 
size_t addHoleState (const TrackStatePropMask::Type &stateMask, const BoundState &boundState, result_type &result, size_t prevTip=SIZE_MAX) const
 CombinatorialKalmanFilter actor operation : add hole track state.
 
size_t addPassiveState (const TrackStatePropMask::Type &stateMask, const CurvilinearState &curvilinearState, result_type &result, size_t prevTip=SIZE_MAX) const
 CombinatorialKalmanFilter actor operation : add passive track state.
 
template<typename propagator_state_t , typename stepper_t >
void materialInteractor (const Surface *surface, propagator_state_t &state, stepper_t &stepper, const MaterialUpdateStage &updateStage=fullUpdate) const
 CombinatorialKalmanFilter actor operation : material interaction.
 
template<typename propagator_state_t , typename stepper_t >
Result< voidfinalize (propagator_state_t &state, const stepper_t &stepper, result_type &result) const
 Kalman actor operation : finalize.
 
const Loggerlogger () const
 Getter for the logger, to support logging macros.
 

Public Attributes

const SurfacetargetSurface = nullptr
 The target surface.
 
std::unordered_map< const
Surface *, std::vector
< source_link_t > > 
inputMeasurements
 Allows retrieving measurements for a surface.
 
bool multipleScattering = true
 Whether to consider multiple scattering.
 
bool energyLoss = true
 Whether to consider energy loss.
 
bool smoothing = true
 Whether to run smoothing to get fitted parameter.
 
const Loggerm_logger
 
updater_t m_updater
 The CombinatorialKalmanFilter updater.
 
smoother_t m_smoother
 The CombinatorialKalmanFilter smoother.
 
source_link_selector_t m_sourcelinkSelector
 The source link selector.
 
branch_stopper_t m_branchStopper
 The branch propagation stopper.
 
calibrator_t m_calibrator
 The Measuremetn calibrator.
 
SurfaceReached targetReached
 The Surface beeing.
 

Detailed Description

template<typename propagator_t, typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t, typename parameters_t>
class Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >

Propagator Actor plugin for the CombinatorialKalmanFilter.

Template Parameters
source_link_tis an type fulfilling the SourceLinkConcept
parameters_tThe type of parameters used for "local" paremeters.

The CombinatorialKalmanFilterActor does not rely on the measurements to be sorted along the track.

Definition at line 262 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 262 of file CombinatorialKalmanFilter.hpp

Member Typedef Documentation

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
using Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::BoundState = std::tuple<BoundParameters, BoundMatrix, double>

Definition at line 266 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 266 of file CombinatorialKalmanFilter.hpp

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
using Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::CurvilinearState = std::tuple<CurvilinearParameters, BoundMatrix, double>

Definition at line 268 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 268 of file CombinatorialKalmanFilter.hpp

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
using Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::result_type = CombinatorialKalmanFilterResult<source_link_t>

Broadcast the result_type.

Definition at line 270 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 270 of file CombinatorialKalmanFilter.hpp

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
using Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::TipState = CombinatorialKalmanFilterTipState

Definition at line 265 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 265 of file CombinatorialKalmanFilter.hpp

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
using Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::TrackStateType = TrackState<source_link_t, parameters_t>

Definition at line 264 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 264 of file CombinatorialKalmanFilter.hpp

Constructor & Destructor Documentation

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::Actor ( updater_t  pUpdater = updater_t(),
smoother_t  pSmoother = smoother_t(),
source_link_selector_t  pSourceLinkSelector = source_link_selector_t(),
branch_stopper_t  pBranchStopper = branch_stopper_t(),
calibrator_t  pCalibrator = calibrator_t() 
)
inline

Explicit constructor with updater and calibrator.

Definition at line 273 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 273 of file CombinatorialKalmanFilter.hpp

Member Function Documentation

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
size_t Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::addHoleState ( const TrackStatePropMask::Type stateMask,
const BoundState boundState,
result_type result,
size_t  prevTip = SIZE_MAX 
) const
inline

CombinatorialKalmanFilter actor operation : add hole track state.

Parameters
stateMaskThe bitmask that instructs which components to allocate
boundStateThe bound state on current surface
resultis the mutable result state object and which to leave invalid
prevTipThe index of the previous state
Returns
The tip of added state

Definition at line 837 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 837 of file CombinatorialKalmanFilter.hpp

References ACTS_VERBOSE, Acts::detail::boundState(), Acts::CombinatorialKalmanFilterResult< source_link_t >::fittedStates, Acts::HoleFlag, Acts::MaterialFlag, and Acts::ParameterFlag.

Referenced by Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
size_t Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::addPassiveState ( const TrackStatePropMask::Type stateMask,
const CurvilinearState curvilinearState,
result_type result,
size_t  prevTip = SIZE_MAX 
) const
inline

CombinatorialKalmanFilter actor operation : add passive track state.

Parameters
stateMaskThe bitmask that instructs which components to allocate
curvilinearStateThe curvilinear state on in-sensive material surface
resultis the mutable result state object and which to leave invalid
prevTipThe index of the previous state
Returns
The tip of added state

Definition at line 880 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 880 of file CombinatorialKalmanFilter.hpp

References ACTS_VERBOSE, Acts::detail::curvilinearState(), Acts::CombinatorialKalmanFilterResult< source_link_t >::fittedStates, Acts::MaterialFlag, and Acts::ParameterFlag.

Referenced by Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
Result<std::pair<size_t, TipState> > Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::addSourcelinkState ( const TrackStatePropMask::Type stateMask,
const BoundState boundState,
const source_link_t &  sourcelink,
bool  isOutlier,
result_type result,
std::reference_wrapper< const GeometryContext geoContext,
const size_t &  prevTip,
const TipState prevTipState,
size_t  neighborTip = SIZE_MAX,
size_t  sharedTip = SIZE_MAX 
) const
inline

CombinatorialKalmanFilter actor operation : add track state with source link: measurement or outlier.

Parameters
stateMaskThe bitmask that instructs which components to allocate and which to leave invalid
boundStateThe bound state on current surface
sourcelinkThe source link to be stored
isOutlierIndicator for outlier or not
resultis the mutable result state object
geoContextThe geometry context (needed for Kalman update)
neighborTipThe neighbor state tip on this surface (the predicted parameters could be shared between neighbors)
sharedTipThe tip of state with shared source link
Returns
The tip of added state and its state

Definition at line 744 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 744 of file CombinatorialKalmanFilter.hpp

References ACTS_CHECK_BIT, ACTS_ERROR, ACTS_VERBOSE, Acts::detail::boundState(), Acts::CombinatorialKalmanFilterResult< source_link_t >::fittedStates, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_calibrator, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_updater, Acts::MaterialFlag, Acts::MeasurementFlag, Acts::CombinatorialKalmanFilterTipState::nMeasurements, Acts::CombinatorialKalmanFilterTipState::nOutliers, Acts::CombinatorialKalmanFilterTipState::nSensitiveSurfaces, Acts::CombinatorialKalmanFilterTipState::nStates, Acts::OutlierFlag, Acts::ParameterFlag, Acts::TrackStatePropMask::Predicted, and Acts::TrackStatePropMask::Uncalibrated.

Referenced by Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
template<typename propagator_state_t , typename stepper_t >
Result<void> Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter ( const Surface surface,
propagator_state_t &  state,
const stepper_t &  stepper,
result_type result 
) const
inline

CombinatorialKalmanFilter actor operation :

  • filtering for all measurement(s) on surface
  • store selected track states in multiTrajectory
  • update propagator state to the (last) selected track state
Template Parameters
propagator_state_tis the type of Propagagor state
stepper_tType of the stepper
Parameters
surfaceThe surface where the update happens
stateThe mutable propagator state object
stepperThe stepper in use
resultThe mutable result state object

Definition at line 516 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 516 of file CombinatorialKalmanFilter.hpp

References Acts::CombinatorialKalmanFilterResult< source_link_t >::activeTips, ACTS_DEBUG, ACTS_ERROR, ACTS_VERBOSE, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::addHoleState(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::addPassiveState(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::addSourcelinkState(), Acts::TrackStatePropMask::All, Acts::Surface::associatedDetectorElement(), Acts::detail::boundState(), Acts::TrackStatePropMask::Calibrated, Acts::detail::curvilinearState(), Acts::TrackStatePropMask::Filtered, Acts::CombinatorialKalmanFilterResult< source_link_t >::fittedStates, Acts::CombinatorialKalmanFilterResult< source_link_t >::forwardFiltered, Acts::fullUpdate, Acts::GeometryObject::geoID(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::inputMeasurements, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_branchStopper, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_calibrator, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_sourcelinkSelector, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::materialInteractor(), Acts::CombinatorialKalmanFilterTipState::nHoles, Acts::CombinatorialKalmanFilterTipState::nMeasurements, Acts::CombinatorialKalmanFilterTipState::nSensitiveSurfaces, Acts::CombinatorialKalmanFilterTipState::nStates, Acts::postUpdate, Acts::TrackStatePropMask::Predicted, Acts::preUpdate, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::reset(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::smoothing, Acts::CombinatorialKalmanFilterResult< source_link_t >::sourcelinkCandidateIndices, Acts::CombinatorialKalmanFilterResult< source_link_t >::sourcelinkChi2, Acts::CombinatorialKalmanFilterResult< source_link_t >::sourcelinkTips, surface(), Acts::Surface::surfaceMaterial(), Acts::CombinatorialKalmanFilterResult< source_link_t >::trackTips, and Acts::TrackStatePropMask::Uncalibrated.

Referenced by Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::operator()().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
template<typename propagator_state_t , typename stepper_t >
Result<void> Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::finalize ( propagator_state_t &  state,
const stepper_t &  stepper,
result_type result 
) const
inline

Kalman actor operation : finalize.

Template Parameters
propagator_state_tis the type of Propagagor state
stepper_tType of the stepper
Parameters
stateis the mutable propagator state object
stepperThe stepper in use
resultis the mutable result state object

Definition at line 977 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 977 of file CombinatorialKalmanFilter.hpp

References ACTS_ERROR, ACTS_VERBOSE, Acts::backward, Acts::CombinatorialKalmanFilterResult< source_link_t >::fittedStates, Acts::CombinatorialKalmanFilterResult< source_link_t >::iSmoothed, Acts::detail_lt::IndexData::kInvalid, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_smoother, Acts::MeasurementFlag, and Acts::CombinatorialKalmanFilterResult< source_link_t >::trackTips.

Referenced by Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::operator()().

+ Here is the caller graph for this function:

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
const Logger& Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::logger ( ) const
inline
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
template<typename propagator_state_t , typename stepper_t >
void Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::materialInteractor ( const Surface surface,
propagator_state_t &  state,
stepper_t &  stepper,
const MaterialUpdateStage updateStage = fullUpdate 
) const
inline

CombinatorialKalmanFilter actor operation : material interaction.

Template Parameters
propagator_state_tis the type of Propagagor state
stepper_tType of the stepper
Parameters
surfaceThe surface where the material interaction happens
stateThe mutable propagator state object
stepperThe stepper in use
updateStageThe materal update stage

Definition at line 925 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 925 of file CombinatorialKalmanFilter.hpp

References ACTS_VERBOSE, Acts::detail::PointwiseMaterialInteraction::Eloss, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::energyLoss, Acts::detail::PointwiseMaterialInteraction::evaluateMaterialProperties(), Acts::detail::PointwiseMaterialInteraction::evaluatePointwiseMaterialInteraction(), Acts::GeometryObject::geoID(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::multipleScattering, Acts::Surface::surfaceMaterial(), Acts::detail::PointwiseMaterialInteraction::updateState(), Acts::detail::PointwiseMaterialInteraction::variancePhi, Acts::detail::PointwiseMaterialInteraction::varianceQoverP, and Acts::detail::PointwiseMaterialInteraction::varianceTheta.

Referenced by Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter(), and Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::reset().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
template<typename propagator_state_t , typename stepper_t >
void Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::operator() ( propagator_state_t &  state,
const stepper_t &  stepper,
result_type result 
) const
inline

CombinatorialKalmanFilter actor operation.

Template Parameters
propagator_state_tis the type of Propagagor state
stepper_tType of the stepper
Parameters
stateis the mutable propagator state object
stepperThe stepper in use
resultis the mutable result state object

Definition at line 306 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 306 of file CombinatorialKalmanFilter.hpp

References Acts::CombinatorialKalmanFilterResult< source_link_t >::activeTips, ACTS_ERROR, ACTS_VERBOSE, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::finalize(), Acts::CombinatorialKalmanFilterResult< source_link_t >::fittedParameters, Acts::CombinatorialKalmanFilterResult< source_link_t >::fittedStates, Acts::forward, Acts::CombinatorialKalmanFilterResult< source_link_t >::forwardFiltered, Acts::CombinatorialKalmanFilterResult< source_link_t >::initialized, Acts::CombinatorialKalmanFilterResult< source_link_t >::iSmoothed, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::reset(), Acts::CombinatorialKalmanFilterResult< source_link_t >::result, Acts::CombinatorialKalmanFilterResult< source_link_t >::smoothed, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::smoothing, surface(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::targetReached, Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::targetSurface, and Acts::CombinatorialKalmanFilterResult< source_link_t >::trackTips.

+ Here is the call graph for this function:

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
template<typename propagator_state_t , typename stepper_t >
void Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::reset ( propagator_state_t &  state,
stepper_t &  stepper,
result_type result 
) const
inline

Kalman actor operation : reset propagation.

Template Parameters
propagator_state_tis the type of Propagagor state
stepper_tType of the stepper
Parameters
stateis the mutable propagator state object
stepperThe stepper in use
resultis the mutable result state object

Definition at line 465 of file CombinatorialKalmanFilter.hpp.

View newest version in sPHENIX GitHub at line 465 of file CombinatorialKalmanFilter.hpp

References Acts::CombinatorialKalmanFilterResult< source_link_t >::activeTips, Acts::CombinatorialKalmanFilterResult< source_link_t >::fittedStates, Acts::Surface::initJacobianToGlobal(), Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::materialInteractor(), and Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::targetSurface.

Referenced by Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::filter(), and Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::operator()().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
bool Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::energyLoss = true
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
std::unordered_map<const Surface*, std::vector<source_link_t> > Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::inputMeasurements
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
branch_stopper_t Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_branchStopper
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
calibrator_t Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_calibrator
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
const Logger* Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_logger
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
smoother_t Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_smoother
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
source_link_selector_t Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_sourcelinkSelector
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
updater_t Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::m_updater
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
bool Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::multipleScattering = true
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
bool Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::smoothing = true
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
SurfaceReached Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::targetReached
template<typename propagator_t , typename updater_t = VoidKalmanUpdater, typename smoother_t = VoidKalmanSmoother, typename source_link_selector_t = CKFSourceLinkSelector, typename branch_stopper_t = VoidBranchStopper, typename calibrator_t = VoidMeasurementCalibrator, typename input_converter_t = VoidKalmanComponents, typename output_converter_t = VoidKalmanComponents>
template<typename source_link_t , typename parameters_t >
const Surface* Acts::CombinatorialKalmanFilter< propagator_t, updater_t, smoother_t, source_link_selector_t, branch_stopper_t, calibrator_t, input_converter_t, output_converter_t >::Actor< source_link_t, parameters_t >::targetSurface = nullptr

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