#include <KFUpdator.h>
Public Member Functions | |
virtual KFUpdator * | clone () const |
KFUpdator () | |
TrajectoryStateOnSurface | update (const TrajectoryStateOnSurface &, const TransientTrackingRecHit &) const |
template<unsigned int D> | |
TrajectoryStateOnSurface | update (const TrajectoryStateOnSurface &, const TransientTrackingRecHit &) const |
Public Member Functions inherited from TrajectoryStateUpdator | |
TrajectoryStateUpdator () | |
virtual | ~TrajectoryStateUpdator () |
Update trajectory state by combining predicted state and measurement as prescribed in the Kalman Filter algorithm (see R. Fruhwirth, NIM A262 (1987) 444).
x_filtered = x_predicted + K * (measurement - H * x_predicted)
x_filtered, x_predicted filtered and predicted state vectors
measurement measurement vector
H "measurement matrix" projects state vector onto measurement space
K Kalman gain matrix
(formulae for K and error matrix of filtered state not shown)
This implementation works for measurements of all dimensions. It relies on CLHEP double precision vectors and matrices for matrix calculations.
Arguments: TrajectoryState & predicted state
RecHit & reconstructed hit
Initial author: P.Vanlaer 25.02.1999 Ported from ORCA.
Definition at line 34 of file KFUpdator.h.
|
inline |
|
inlinevirtual |
Implements TrajectoryStateUpdator.
Definition at line 48 of file KFUpdator.h.
References KFUpdator().
|
virtual |
Implements TrajectoryStateUpdator.
Definition at line 10 of file KFUpdator.cc.
References TrackingRecHit::dimension(), edm::hlt::Exception, TransientTrackingRecHit::hit(), and mergeVDriftHistosByStation::name.
Referenced by CosmicTrajectoryBuilder::AddHit(), CRackTrajectoryBuilder::AddHit(), SiStripElectronSeedGenerator::altCheckHitsAndTSOS(), python.Vispa.Gui.VispaWidget.VispaWidget::autosize(), SeedFromConsecutiveHitsCreator::buildSeed(), SiStripElectronSeedGenerator::checkHitsAndTSOS(), SeedFromNuclearInteraction::construct(), python.Vispa.Views.LineDecayView.LineDecayContainer::createObject(), OutInConversionSeedFinder::createSeed(), InOutConversionSeedFinder::createSeed(), python.Vispa.Views.LineDecayView.LineDecayContainer::deselectAllObjects(), python.Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::deselectAllWidgets(), python.Vispa.Gui.VispaWidget.VispaWidget::enableAutosizing(), CosmicMuonSmoother::fit(), python.Vispa.Gui.MenuWidget.MenuWidget::leaveEvent(), python.Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::mouseMoveEvent(), python.Vispa.Gui.MenuWidget.MenuWidget::mouseMoveEvent(), python.Vispa.Views.LineDecayView.LineDecayContainer::mouseMoveEvent(), python.Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::mouseReleaseEvent(), python.Vispa.Views.LineDecayView.LineDecayContainer::objectMoved(), ConvBremSeedProducer::produce(), SimpleTrackRefitter::refitTrack(), python.Vispa.Views.LineDecayView.LineDecayContainer::removeObject(), python.Vispa.Gui.ConnectableWidget.ConnectableWidget::removePorts(), python.Vispa.Gui.FindDialog.FindDialog::reset(), SeedGeneratorForCRack::seeds(), SeedGeneratorForCosmics::seeds(), SimpleCosmicBONSeeder::seeds(), python.Vispa.Gui.PortConnection.PointToPointConnection::select(), python.Vispa.Gui.VispaWidget.VispaWidget::select(), python.Vispa.Views.LineDecayView.LineDecayContainer::select(), python.Vispa.Gui.VispaWidget.VispaWidget::setText(), python.Vispa.Gui.VispaWidget.VispaWidget::setTitle(), python.Vispa.Gui.ZoomableWidget.ZoomableWidget::setZoom(), python.Vispa.Views.LineDecayView.LineDecayContainer::setZoom(), CosmicMuonSmoother::smooth(), GsfMultiStateUpdator::update(), KFSwitchingUpdator::update(), KFSwitching1DUpdator::update(), and python.Vispa.Gui.PortConnection.PointToPointConnection::updateConnection().
|
virtual |
Implements TrajectoryStateUpdator.
Referenced by python.Vispa.Gui.VispaWidget.VispaWidget::autosize(), python.Vispa.Views.LineDecayView.LineDecayContainer::createObject(), python.Vispa.Views.LineDecayView.LineDecayContainer::deselectAllObjects(), python.Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::deselectAllWidgets(), python.Vispa.Gui.VispaWidget.VispaWidget::enableAutosizing(), python.Vispa.Gui.MenuWidget.MenuWidget::leaveEvent(), python.Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::mouseMoveEvent(), python.Vispa.Gui.MenuWidget.MenuWidget::mouseMoveEvent(), python.Vispa.Views.LineDecayView.LineDecayContainer::mouseMoveEvent(), python.Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::mouseReleaseEvent(), python.Vispa.Views.LineDecayView.LineDecayContainer::objectMoved(), python.Vispa.Views.LineDecayView.LineDecayContainer::removeObject(), python.Vispa.Gui.ConnectableWidget.ConnectableWidget::removePorts(), python.Vispa.Gui.FindDialog.FindDialog::reset(), python.Vispa.Gui.PortConnection.PointToPointConnection::select(), python.Vispa.Gui.VispaWidget.VispaWidget::select(), python.Vispa.Views.LineDecayView.LineDecayContainer::select(), python.Vispa.Gui.VispaWidget.VispaWidget::setText(), python.Vispa.Gui.VispaWidget.VispaWidget::setTitle(), python.Vispa.Gui.ZoomableWidget.ZoomableWidget::setZoom(), python.Vispa.Views.LineDecayView.LineDecayContainer::setZoom(), and python.Vispa.Gui.PortConnection.PointToPointConnection::updateConnection().