|
CbmRoot
|
The class implements vertex fitting with Kalman filter. More...
#include <KfVertexFitter.h>
Public Member Functions | |
| VertexFitter ()=default | |
| Default constructor. | |
| VertexFitter (std::shared_ptr< const Setup< double > > kfSetup) | |
| ~VertexFitter ()=default | |
| Destructor. | |
| void | SetKfSetup (std::shared_ptr< const Setup< double > > kfSetup) |
| Set Kalman Filter setup. | |
| void | SetConstrainToTargetZ () |
| Set flag to constrain vertex to target. | |
| void | SetNoConstrainToTargetZ () |
| Unset flag to constrain vertex to target. | |
| void | SetConstrainToBeamXY (double x, double y, double sigmaX, double sigmaY) |
| Set flag and values to constrain vertex to beamline. | |
| void | SetNoConstrainToBeamXY () |
| Unset flag to constrain vertex to beamline. | |
| void | SetRmsCut (double c) |
| Set cut in standard deviation for track inclusion. | |
| void | SetNoRmsCut () |
| Unset cut in standard deviation for track inclusion. | |
| void | SetNofIterations (int n) |
| Set N of iterations for vertex fitting. | |
| bool | IsConstrainToTargetZ () const |
| Getters. | |
| bool | IsConstrainToBeamXY () const |
| double | GetRmsCut () const |
| int | GetNofIterations () const |
| std::shared_ptr< const Setup< double > > | GetKfSetup () const |
| template<typename T> | |
| std::tuple< VertexD, std::vector< char > > | FitVertex (const std::vector< const TrackParam< T > * > &tracks, const std::vector< const TrackParam< T > * > &linearizations, const VertexD &vtxGuess) const |
| Fit vertex from the given tracks. | |
| VertexD | GetGuessFromTheTarget () const |
Private Member Functions | |
| void | dummy () |
| template instantiation dummy function | |
Private Attributes | |
| std::shared_ptr< const Setup< double > > | fKfSetup {} |
| Kalman Filter setup. | |
| bool | fConstrainToTargetZ {false} |
| Flag to constrain vertex to target. | |
| bool | fConstrainToBeamXY {false} |
| Flag to constrain vertex to beamline. | |
| double | fBeamX {0.} |
| Width of beamline constraint in X [cm]. | |
| double | fBeamY {0.} |
| Width of beamline constraint in Y [cm]. | |
| double | fBeamSigmaX {0.1} |
| Sigma of beamline constraint in X [cm]. | |
| double | fBeamSigmaY {0.1} |
| Sigma of beamline constraint in Y [cm]. | |
| double | fRmsCut {5.} |
| Cut in standard deviation for track to be included in vertex fit. | |
| int | fNofIterations {3} |
| N of iterations for vertex fitting. | |
The class implements vertex fitting with Kalman filter.
Definition at line 27 of file KfVertexFitter.h.
|
default |
Default constructor.
|
inline |
| kfSetup | Kalman Filter setup |
Definition at line 33 of file KfVertexFitter.h.
References fKfSetup.
|
default |
Destructor.
|
private |
template instantiation dummy function
Definition at line 264 of file KfVertexFitter.cxx.
References FitVertex().
| std::tuple< VertexD, std::vector< char > > VertexFitter::FitVertex | ( | const std::vector< const TrackParam< T > * > & | tracks, |
| const std::vector< const TrackParam< T > * > & | linearizations, | ||
| const VertexD & | vtxGuess ) const |
Fit vertex from the given tracks.
Definition at line 40 of file KfVertexFitter.cxx.
References C, cbm::algo::kf::Vertex< T >::ChiSq(), cbm::algo::kf::Vertex< T >::ChiSqTime(), cbm::algo::kf::Vertex< T >::CovMatrix(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::Extrapolate(), fBeamSigmaX, fBeamSigmaY, fBeamX, fBeamY, fConstrainToBeamXY, fConstrainToTargetZ, cbm::algo::kf::GlobalField::fgOriginalField, cbm::algo::kf::GlobalField::fgOriginalFieldType, fKfSetup, fNofIterations, fRmsCut, cbm::algo::kf::Vertex< T >::GetNofTracks(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::Linearization(), cbm::algo::kf::Vertex< T >::Ndf(), cbm::algo::kf::Vertex< T >::NdfTime(), cbm::algo::kf::Vertex< T >::NofTracks(), cbm::algo::kf::Vertex< T >::Parameters(), cbm::algo::kf::Vertex< T >::ResetErrors(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::SetLinearization(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::SetMaxExtrapolationStep(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::SetTrack(), cbm::algo::kf::Vertex< T >::SetX(), cbm::algo::kf::Vertex< T >::SetY(), cbm::algo::kf::Vertex< T >::SetZ(), cbm::algo::kf::Tag00, cbm::algo::kf::Tag10, cbm::algo::kf::Tag11, cbm::algo::kf::Tag20, cbm::algo::kf::Tag21, cbm::algo::kf::Tag22, cbm::algo::kf::Tag33, cbm::algo::kf::Vertex< T >::Time(), cbm::algo::kf::Vertex< T >::ToString(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::Tr(), tracks, and cbm::algo::kf::Y.
Referenced by dummy().
Definition at line 21 of file KfVertexFitter.cxx.
|
inline |
Definition at line 75 of file KfVertexFitter.h.
References fKfSetup.
|
inline |
Definition at line 74 of file KfVertexFitter.h.
References fNofIterations.
|
inline |
Definition at line 73 of file KfVertexFitter.h.
References fRmsCut.
|
inline |
Definition at line 72 of file KfVertexFitter.h.
References fConstrainToBeamXY.
|
inline |
|
inline |
Set flag and values to constrain vertex to beamline.
Definition at line 48 of file KfVertexFitter.h.
References fBeamSigmaX, fBeamSigmaY, fBeamX, fBeamY, fConstrainToBeamXY, x, and y.
|
inline |
Set flag to constrain vertex to target.
Definition at line 42 of file KfVertexFitter.h.
References fConstrainToTargetZ.
|
inline |
|
inline |
Unset flag to constrain vertex to beamline.
Definition at line 58 of file KfVertexFitter.h.
References fConstrainToBeamXY.
|
inline |
Unset flag to constrain vertex to target.
Definition at line 45 of file KfVertexFitter.h.
References fConstrainToTargetZ.
|
inline |
Set N of iterations for vertex fitting.
Definition at line 67 of file KfVertexFitter.h.
References fNofIterations.
|
inline |
Unset cut in standard deviation for track inclusion.
Definition at line 64 of file KfVertexFitter.h.
References fRmsCut.
|
inline |
Set cut in standard deviation for track inclusion.
Definition at line 61 of file KfVertexFitter.h.
References fRmsCut.
|
private |
Sigma of beamline constraint in X [cm].
Definition at line 95 of file KfVertexFitter.h.
Referenced by FitVertex(), and SetConstrainToBeamXY().
|
private |
Sigma of beamline constraint in Y [cm].
Definition at line 96 of file KfVertexFitter.h.
Referenced by FitVertex(), and SetConstrainToBeamXY().
|
private |
Width of beamline constraint in X [cm].
Definition at line 93 of file KfVertexFitter.h.
Referenced by FitVertex(), and SetConstrainToBeamXY().
|
private |
Width of beamline constraint in Y [cm].
Definition at line 94 of file KfVertexFitter.h.
Referenced by FitVertex(), and SetConstrainToBeamXY().
|
private |
Flag to constrain vertex to beamline.
Definition at line 91 of file KfVertexFitter.h.
Referenced by FitVertex(), IsConstrainToBeamXY(), SetConstrainToBeamXY(), and SetNoConstrainToBeamXY().
|
private |
Flag to constrain vertex to target.
Definition at line 90 of file KfVertexFitter.h.
Referenced by FitVertex(), IsConstrainToTargetZ(), SetConstrainToTargetZ(), and SetNoConstrainToTargetZ().
|
private |
Kalman Filter setup.
Definition at line 88 of file KfVertexFitter.h.
Referenced by FitVertex(), GetGuessFromTheTarget(), GetKfSetup(), SetKfSetup(), and VertexFitter().
|
private |
N of iterations for vertex fitting.
Definition at line 98 of file KfVertexFitter.h.
Referenced by FitVertex(), GetNofIterations(), and SetNofIterations().
|
private |
Cut in standard deviation for track to be included in vertex fit.
Definition at line 97 of file KfVertexFitter.h.
Referenced by FitVertex(), GetRmsCut(), SetNoRmsCut(), and SetRmsCut().