![]() |
LArSoft
v10_06_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "KHitMulti.h"
Public Member Functions | |
| KHitMulti () | |
| Default constructor. More... | |
| KHitMulti (const std::shared_ptr< const Surface > &psurf) | |
| Initializing Constructor – measurement surface only. More... | |
| virtual | ~KHitMulti () |
| Destructor. More... | |
| int | getMeasDim () const |
| Measurement space dimension. More... | |
| const std::vector< std::shared_ptr< const KHit< 1 > > > & | getMeasVec () const |
| Measurement collection. More... | |
| const ublas::vector< double > & | getMeasVector () const |
| Measurement vector. More... | |
| const ublas::symmetric_matrix< double > & | getMeasError () const |
| Measurement error matrix. More... | |
| const ublas::vector< double > & | getPredVector () const |
| Prediction vector. More... | |
| const ublas::symmetric_matrix< double > & | getPredError () const |
| Prediction matrix. More... | |
| const ublas::vector< double > & | getResVector () const |
| Residual vector. More... | |
| const ublas::symmetric_matrix< double > & | getResError () const |
| Residual error matrix. More... | |
| const ublas::symmetric_matrix< double > & | getResInvError () const |
| Residual inv. error matrix. More... | |
| const ublas::matrix< double > & | getH () const |
| Kalman H-matrix. More... | |
| double | getChisq () const |
| Incremental chisquare. More... | |
| void | addMeas (const std::shared_ptr< const KHitBase > &pmeas) |
| Add a measurement of unknown type. More... | |
| void | addMeas (const std::shared_ptr< const KHit< 1 >> &pmeas) |
| Add a one-dimensional measurement. More... | |
| bool | predict (const KETrack &tre, const Propagator &prop, const KTrack *ref=0) const |
| Prediction method (return false if fail). More... | |
| void | update (KETrack &tre) const |
| Update track method. More... | |
| virtual std::ostream & | Print (std::ostream &out, bool doTitle=true) const |
| Printout. More... | |
| const std::shared_ptr< const Surface > & | getPredSurface () const |
| Predition surface. More... | |
| double | getPredDistance () const |
| Prediction distance. More... | |
| const std::shared_ptr< const Surface > & | getMeasSurface () const |
| Measurement surface. More... | |
| int | getMeasPlane () const |
| Measurement plane index. More... | |
| int | getID () const |
| Unique id. More... | |
| void | setMeasSurface (const std::shared_ptr< const Surface > &psurf) |
| Measurement surface. More... | |
| void | setMeasPlane (int plane) |
| Measurement plane. More... | |
Protected Attributes | |
| std::shared_ptr< const Surface > | fPredSurf |
| Prediction surface. More... | |
| double | fPredDist |
| Prediction distance. More... | |
| int | fID |
| Unique id. More... | |
Private Attributes | |
| int | fMeasDim |
| Measurement space dimension. More... | |
| std::vector< std::shared_ptr< const KHit< 1 > > > | fMeasVec |
| Underlying measurements. More... | |
| ublas::vector< double > | fMvec |
| Measurement vector. More... | |
| ublas::symmetric_matrix< double > | fMerr |
| Measurement error matrix. More... | |
| ublas::vector< double > | fPvec |
| Prediction vector. More... | |
| ublas::symmetric_matrix< double > | fPerr |
| Prediction error matrix. More... | |
| ublas::vector< double > | fRvec |
| Residual vector. More... | |
| ublas::symmetric_matrix< double > | fRerr |
| Residual error matrix. More... | |
| ublas::symmetric_matrix< double > | fRinv |
| Residual inverse error matrix. More... | |
| ublas::matrix< double > | fH |
| Kalman H-matrix. More... | |
| double | fChisq |
| Incremental chisquare. More... | |
Definition at line 53 of file KHitMulti.h.
| trkf::KHitMulti::KHitMulti | ( | ) |
| trkf::KHitMulti::KHitMulti | ( | const std::shared_ptr< const Surface > & | psurf | ) |
Initializing Constructor – measurement surface only.
Initializing Constructor.
Arguments:
psurf - Measurement surface pointer.
Definition at line 25 of file KHitMulti.cxx.
|
virtual |
| void trkf::KHitMulti::addMeas | ( | const std::shared_ptr< const KHitBase > & | pmeas | ) |
Add a measurement of unknown type.
Add a measurement.
Arguments:
pmeas - Measurement.
This method tries to dynamic cast the measurement to a supported type. If the dynamic cast fails, throw an exception.
Definition at line 41 of file KHitMulti.cxx.
Referenced by getChisq().
| void trkf::KHitMulti::addMeas | ( | const std::shared_ptr< const KHit< 1 >> & | pmeas | ) |
Add a one-dimensional measurement.
Add a measurement.
Arguments:
pmeas - Measurement.
Definition at line 66 of file KHitMulti.cxx.
References fMeasDim, and fMeasVec.
|
inlinevirtual |
Incremental chisquare.
Implements trkf::KHitBase.
Definition at line 97 of file KHitMulti.h.
References addMeas(), fChisq, predict(), Print(), and update().
|
inline |
|
inlineinherited |
Unique id.
Definition at line 88 of file KHitBase.h.
References trkf::KHitBase::fID.
Referenced by trkf::KalmanFilterAlg::buildTrack(), trkf::KalmanFilterAlg::cleanTrack(), trkf::KalmanFilterAlg::extendTrack(), and trkf::KalmanFilterAlg::smoothTrack().
|
inline |
|
inline |
Measurement error matrix.
Definition at line 76 of file KHitMulti.h.
References fMerr.
|
inlineinherited |
Measurement plane index.
Definition at line 85 of file KHitBase.h.
References trkf::KHitBase::fMeasPlane.
Referenced by trkf::KalmanFilterAlg::buildTrack(), trkf::KalmanFilterAlg::cleanTrack(), trkf::KalmanFilterAlg::extendTrack(), and trkf::KGTrack::Print().
|
inlineinherited |
Measurement surface.
Definition at line 82 of file KHitBase.h.
References trkf::KHitBase::fMeasSurf.
Referenced by trkf::KHit< N >::predict(), trkf::KHitWireLine::subpredict(), and trkf::KHitWireX::subpredict().
|
inline |
Measurement collection.
Definition at line 70 of file KHitMulti.h.
References fMeasVec.
|
inline |
|
inlineinherited |
Prediction distance.
Definition at line 79 of file KHitBase.h.
References trkf::KHitBase::fPredDist.
Referenced by trkf::KalmanFilterAlg::buildTrack(), and trkf::KalmanFilterAlg::extendTrack().
|
inline |
Prediction matrix.
Definition at line 82 of file KHitMulti.h.
References fPerr.
|
inlineinherited |
Predition surface.
Definition at line 76 of file KHitBase.h.
References trkf::KHitBase::fPredSurf.
Referenced by update(), and trkf::KHit< N >::update().
|
inline |
|
inline |
Residual error matrix.
Definition at line 88 of file KHitMulti.h.
References fRerr.
|
inline |
Residual inv. error matrix.
Definition at line 91 of file KHitMulti.h.
References fRinv.
|
inline |
|
virtual |
Prediction method (return false if fail).
Prediction method (return false if fail).
Arguments:
tre - Track hypothesis. prop - Propagator. ref - Reference track.
Returns: True if success.
This class calls the predict method of each underlying measurement and updates the combined prediction attributes.
Implements trkf::KHitBase.
Definition at line 92 of file KHitMulti.cxx.
References fChisq, fH, fMeasDim, fMeasVec, fMerr, fMvec, fPerr, trkf::KHitBase::fPredDist, trkf::KHitBase::fPredSurf, fPvec, fRerr, fRinv, fRvec, trkf::KETrack::getError(), trkf::KHit< N >::getH(), trkf::KHit< N >::getMeasError(), trkf::KHit< N >::getMeasVector(), trkf::KHit< N >::getPredVector(), trkf::KTrack::getSurface(), trkf::KTrack::getVector(), trkf::KHit< N >::predict(), and trkf::syminvert().
Referenced by getChisq().
|
virtual |
Printout.
Reimplemented from trkf::KHitBase.
Definition at line 240 of file KHitMulti.cxx.
Referenced by getChisq().
|
inlineinherited |
Measurement plane.
Definition at line 96 of file KHitBase.h.
References trkf::KHitBase::fMeasPlane, trkf::KHitBase::getChisq(), trkf::KHitBase::predict(), trkf::KHitBase::Print(), and trkf::KHitBase::update().
Referenced by trkf::KHitWireLine::KHitWireLine(), and trkf::KHitWireX::KHitWireX().
|
inlineinherited |
Measurement surface.
Definition at line 93 of file KHitBase.h.
References trkf::KHitBase::fMeasSurf.
Referenced by trkf::KHitWireLine::KHitWireLine(), and trkf::KHitWireX::KHitWireX().
|
virtual |
Update track method.
Update track method.
Arguments:
tre - Track to be updated.
This method is almost an exact copy of the update method in KHit<N>.
Implements trkf::KHitBase.
Definition at line 198 of file KHitMulti.cxx.
References fH, fMeasDim, fMerr, fRinv, fRvec, trkf::KETrack::getError(), trkf::KHitBase::getPredSurface(), trkf::KTrack::getSurface(), trkf::KTrack::getVector(), trkf::KETrack::setError(), trkf::KTrack::setVector(), and util::size().
Referenced by getChisq().
|
mutableprivate |
Incremental chisquare.
Definition at line 131 of file KHitMulti.h.
Referenced by getChisq(), and predict().
|
mutableprivate |
Kalman H-matrix.
Definition at line 130 of file KHitMulti.h.
|
protectedinherited |
Unique id.
Definition at line 119 of file KHitBase.h.
Referenced by trkf::KHitBase::getID(), trkf::KHitWireLine::KHitWireLine(), and trkf::KHitWireX::KHitWireX().
|
private |
Measurement space dimension.
Definition at line 121 of file KHitMulti.h.
Referenced by addMeas(), getMeasDim(), predict(), and update().
|
private |
Underlying measurements.
Definition at line 122 of file KHitMulti.h.
Referenced by addMeas(), getMeasVec(), and predict().
|
mutableprivate |
Measurement error matrix.
Definition at line 124 of file KHitMulti.h.
Referenced by getMeasError(), predict(), and update().
|
mutableprivate |
Measurement vector.
Definition at line 123 of file KHitMulti.h.
Referenced by getMeasVector(), and predict().
|
mutableprivate |
Prediction error matrix.
Definition at line 126 of file KHitMulti.h.
Referenced by getPredError(), and predict().
|
mutableprotectedinherited |
Prediction distance.
Definition at line 118 of file KHitBase.h.
Referenced by trkf::KHitBase::getPredDistance(), predict(), trkf::KHit< N >::predict(), and trkf::KHitBase::Print().
|
mutableprotectedinherited |
Prediction surface.
Definition at line 117 of file KHitBase.h.
Referenced by trkf::KHitBase::getPredSurface(), predict(), trkf::KHit< N >::predict(), and trkf::KHitBase::Print().
|
mutableprivate |
Prediction vector.
Definition at line 125 of file KHitMulti.h.
Referenced by getPredVector(), and predict().
|
mutableprivate |
Residual error matrix.
Definition at line 128 of file KHitMulti.h.
Referenced by getResError(), and predict().
|
mutableprivate |
Residual inverse error matrix.
Definition at line 129 of file KHitMulti.h.
Referenced by getResInvError(), predict(), and update().
|
mutableprivate |
Residual vector.
Definition at line 127 of file KHitMulti.h.
Referenced by getResVector(), predict(), and update().