ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
Kalman fitter implementation of Acts as a plugin. More...
#include <acts/blob/master/Core/include/Acts/Fitter/KalmanFitter.hpp>
Classes | |
class | Aborter |
class | Actor |
Propagator Actor plugin for the KalmanFilter. More... | |
Public Types | |
using | MeasurementSurfaces = std::multimap< const Layer *, const Surface * > |
Shorthand definition. | |
using | KalmanNavigator = typename propagator_t::Navigator |
The navigator type. | |
Public Member Functions | |
KalmanFitter ()=delete | |
Default constructor is deleted. | |
KalmanFitter (propagator_t pPropagator, std::unique_ptr< const Logger > logger=getDefaultLogger("KalmanFilter", Logging::INFO), input_converter_t pInputCnv=input_converter_t(), output_converter_t pOutputCnv=output_converter_t()) | |
Constructor from arguments. | |
template<typename source_link_t , typename start_parameters_t , typename kalman_fitter_options_t , typename parameters_t = BoundParameters, typename result_t = Result<KalmanFitterResult<source_link_t>>> | |
auto | fit (const std::vector< source_link_t > &sourcelinks, const start_parameters_t &sParameters, const kalman_fitter_options_t &kfOptions) const -> std::enable_if_t<!isDirectNavigator, result_t > |
template<typename source_link_t , typename start_parameters_t , typename kalman_fitter_options_t , typename parameters_t = BoundParameters, typename result_t = Result<KalmanFitterResult<source_link_t>>> | |
auto | fit (const std::vector< source_link_t > &sourcelinks, const start_parameters_t &sParameters, const kalman_fitter_options_t &kfOptions, const std::vector< const Surface * > &sSequence) const -> std::enable_if_t< isDirectNavigator, result_t > |
Static Public Attributes | |
static constexpr bool | isDirectNavigator |
The navigator has DirectNavigator type or not. | |
Private Member Functions | |
const Logger & | logger () const |
Logger getter to support macros. | |
Private Attributes | |
propagator_t | m_propagator |
The propgator for the transport and material update. | |
input_converter_t | m_inputConverter |
The input converter to Fittable measurements. | |
output_converter_t | m_outputConverter |
The output converter into a given format. | |
std::shared_ptr< const Logger > | m_logger |
Owned logging instance. | |
Kalman fitter implementation of Acts as a plugin.
to the Propgator
propagator_t | Type of the propagation class |
updater_t | Type of the kalman updater class |
smoother_t | Type of the kalman smoother class |
outlier_finder_t | Type of the outlier finder class |
calibrator_t | Type of the calibrator class |
input_converter_t | Type of the input converter class |
output_converter_t | Type of the output converter class |
The Kalman filter contains an Actor and a Sequencer sub-class. The Sequencer has to be part of the Navigator of the Propagator in order to initialize and provide the measurement surfaces.
The Actor is part of the Propagation call and does the Kalman update and eventually the smoothing. Updater, Smoother and Calibrator are given to the Actor for further use:
Measurements are not required to be ordered for the KalmanFilter, measurement ordering needs to be figured out by the navigation of the propagator.
The Input converter is a converter that transforms the input measurement/track/segments into a set of FittableMeasurements
The Output converter is a converter that transforms the set of track states into a given track/track particle class
The void components are provided mainly for unit testing.
Definition at line 188 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 188 of file KalmanFitter.hpp
using Acts::KalmanFitter< propagator_t, updater_t, smoother_t, outlier_finder_t, calibrator_t, input_converter_t, output_converter_t >::KalmanNavigator = typename propagator_t::Navigator |
The navigator type.
Definition at line 193 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 193 of file KalmanFitter.hpp
using Acts::KalmanFitter< propagator_t, updater_t, smoother_t, outlier_finder_t, calibrator_t, input_converter_t, output_converter_t >::MeasurementSurfaces = std::multimap<const Layer*, const Surface*> |
Shorthand definition.
Definition at line 191 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 191 of file KalmanFitter.hpp
|
delete |
Default constructor is deleted.
|
inline |
Constructor from arguments.
Definition at line 203 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 203 of file KalmanFitter.hpp
|
inline |
Fit implementation of the foward filter, calls the the forward filter and backward smoother
source_link_t | Source link type identifying uncalibrated input measurements. |
start_parameters_t | Type of the initial parameters |
kalman_fitter_options_t | Type of the kalman fitter options |
parameters_t | Type of parameters used for local parameters |
sourcelinks | The fittable uncalibrated measurements |
sParameters | The initial track parameters |
kfOptions | KalmanOptions steering the fit |
SourceLinks
. It's calibrator_t's
job to turn them into calibrated measurements used in the fit.Get the result of the fit
It could happen that the fit ends in zero processed states. The result gets meaningless so such case is regarded as fit failure.
Definition at line 928 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 928 of file KalmanFitter.hpp
References Acts::PropagatorOptions< action_list_t, aborter_list_t >::actionList, ACTS_ERROR, and ACTS_VERBOSE.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
inline |
Fit implementation of the foward filter, calls the the forward filter and backward smoother
source_link_t | Source link type identifying uncalibrated input measurements. |
start_parameters_t | Type of the initial parameters |
kalman_fitter_options_t | Type of the kalman fitter options |
parameters_t | Type of parameters used for local parameters |
sourcelinks | The fittable uncalibrated measurements |
sParameters | The initial track parameters |
kfOptions | KalmanOptions steering the fit |
sSequence | surface sequence used to initialize a DirectNavigator |
SourceLinks
. It's calibrator_t's
job to turn them into calibrated measurements used in the fit.Get the result of the fit
It could happen that the fit ends in zero processed states. The result gets meaningless so such case is regarded as fit failure.
Definition at line 1027 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 1027 of file KalmanFitter.hpp
References Acts::PropagatorOptions< action_list_t, aborter_list_t >::actionList, ACTS_ERROR, and ACTS_VERBOSE.
|
inlineprivate |
Logger getter to support macros.
Definition at line 224 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 224 of file KalmanFitter.hpp
|
static |
The navigator has DirectNavigator type or not.
Definition at line 196 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 196 of file KalmanFitter.hpp
|
private |
The input converter to Fittable measurements.
Definition at line 218 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 218 of file KalmanFitter.hpp
|
private |
Owned logging instance.
Definition at line 227 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 227 of file KalmanFitter.hpp
|
private |
The output converter into a given format.
Definition at line 221 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 221 of file KalmanFitter.hpp
|
private |
The propgator for the transport and material update.
Definition at line 215 of file KalmanFitter.hpp.
View newest version in sPHENIX GitHub at line 215 of file KalmanFitter.hpp