#include <KalmanAlignmentUserVariables.h>
Public Member Functions | |
virtual KalmanAlignmentUserVariables * | clone (void) const |
void | fixAlignable (void) |
void | histogramParameters (std::string histoNamePrefix) |
Histogram current estimate of the alignment parameters wrt. the true values. More... | |
void | hit (void) |
Call this function in case the associated Alignable was hit by a particle. More... | |
const std::string | identifier (void) const |
bool | isAligned (void) const |
KalmanAlignmentUserVariables (Alignable *parent, int frequency=100) | |
KalmanAlignmentUserVariables (void) | |
int | numberOfHits (void) const |
Return the number of hits. More... | |
int | numberOfUpdates (void) const |
Return the number of updates. More... | |
void | setAlignmentFlag (bool flag) |
void | unfixAlignable (void) |
void | update (bool enforceUpdate=false) |
Call this function in case the associated Alignable was updated by the alignment algorithm. More... | |
void | update (const AlignmentParameters *param) |
Update user variables with given alignment parameters. More... | |
virtual | ~KalmanAlignmentUserVariables (void) |
Protected Member Functions | |
const AlgebraicVector | extractTrueParameters (void) const |
const std::string | selectedParameter (const int &selected) const |
const float | selectedScaling (const int &selected) const |
const std::string | toString (const int &i) const |
Protected Attributes | |
bool | theAlignmentFlag |
bool | theFirstUpdate |
std::string | theIdentifier |
int | theNumberOfHits |
int | theNumberOfUpdates |
Alignable * | theParentAlignable |
std::string | theTypeAndLayer |
int | theUpdateFrequency |
Static Protected Attributes | |
static const TrackerAlignableId * | theAlignableId = new TrackerAlignableId |
static const AlignableObjectId * | theObjectId = new AlignableObjectId |
User variables used by the KalmanAlignmentAlgorithm. The evolution of the estimated alignment parameters is stored in graphs using the DataCollector.
Definition at line 15 of file KalmanAlignmentUserVariables.h.
KalmanAlignmentUserVariables::KalmanAlignmentUserVariables | ( | Alignable * | parent, |
int | frequency = 100 |
||
) |
Create new user variables by specifying the associated Alignable, the Alignable's Id and how often the evolution of the estimated parameters should be updated.
Definition at line 21 of file KalmanAlignmentUserVariables.cc.
References Alignable::alignableObjectId(), Alignable::geomDetId(), Alignable::id(), theAlignableId, theIdentifier, theObjectId, theTypeAndLayer, toString(), TrackerAlignableId::typeAndLayerFromDetId(), and AlignableObjectId::typeToName().
|
inline |
Definition at line 25 of file KalmanAlignmentUserVariables.h.
Referenced by clone().
|
inlinevirtual |
Definition at line 34 of file KalmanAlignmentUserVariables.h.
|
inlinevirtual |
Implements AlignmentUserVariables.
Definition at line 36 of file KalmanAlignmentUserVariables.h.
References KalmanAlignmentUserVariables().
|
protected |
Definition at line 299 of file KalmanAlignmentUserVariables.cc.
References PV3DBase< T, PVType, FrameType >::basicVector(), Alignable::displacement(), TkRotation< T >::multiplyInverse(), Alignable::rotation(), Alignable::surface(), theParentAlignable, align::toAngles(), AlignableSurface::toLocal(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by histogramParameters(), and update().
void KalmanAlignmentUserVariables::fixAlignable | ( | void | ) |
Definition at line 281 of file KalmanAlignmentUserVariables.cc.
References Alignable::alignmentParameters(), AlignmentParameters::clone(), AlignmentParameters::covariance(), AlignmentParameters::parameters(), Alignable::setAlignmentParameters(), and theParentAlignable.
void KalmanAlignmentUserVariables::histogramParameters | ( | std::string | histoNamePrefix | ) |
Histogram current estimate of the alignment parameters wrt. the true values.
Definition at line 179 of file KalmanAlignmentUserVariables.cc.
References Alignable::alignmentParameters(), extractTrueParameters(), KalmanAlignmentDataCollector::fillGraph(), KalmanAlignmentDataCollector::fillHistogram(), Alignable::globalPosition(), i, Parameters::parameters, AlignmentParameters::parameters(), PV3DBase< T, PVType, FrameType >::perp(), AlignmentParameters::selectedCovariance(), selectedParameter(), AlignmentParameters::selectedParameters(), selectedScaling(), AlignmentParameters::selector(), mathSSE::sqrt(), Alignable::surface(), theParentAlignable, theTypeAndLayer, align::toAngles(), AlignableSurface::toGlobal(), align::toMatrix(), and PV3DBase< T, PVType, FrameType >::y().
Referenced by KalmanAlignmentAlgorithm::terminate().
|
inline |
Call this function in case the associated Alignable was hit by a particle.
Definition at line 41 of file KalmanAlignmentUserVariables.h.
References theNumberOfHits.
|
inline |
Definition at line 52 of file KalmanAlignmentUserVariables.h.
References theIdentifier.
|
inline |
Definition at line 55 of file KalmanAlignmentUserVariables.h.
References theAlignmentFlag.
|
inline |
Return the number of hits.
Definition at line 39 of file KalmanAlignmentUserVariables.h.
References theNumberOfHits.
|
inline |
Return the number of updates.
Definition at line 44 of file KalmanAlignmentUserVariables.h.
References theNumberOfUpdates.
Referenced by KalmanAlignmentAlgorithm::terminate().
|
protected |
Definition at line 351 of file KalmanAlignmentUserVariables.cc.
References edm::hlt::Exception.
Referenced by histogramParameters(), and update().
|
protected |
Definition at line 380 of file KalmanAlignmentUserVariables.cc.
References edm::hlt::Exception.
Referenced by histogramParameters(), and update().
|
inline |
Definition at line 54 of file KalmanAlignmentUserVariables.h.
References theAlignmentFlag.
Referenced by KalmanAlignmentAlgorithm::initializeAlignmentParameters().
|
protected |
Definition at line 406 of file KalmanAlignmentUserVariables.cc.
References cond::rpcobtemp::temp.
Referenced by KalmanAlignmentUserVariables().
void KalmanAlignmentUserVariables::unfixAlignable | ( | void | ) |
Definition at line 290 of file KalmanAlignmentUserVariables.cc.
References Alignable::alignmentParameters(), AlignmentParameters::clone(), AlignmentParameters::covariance(), AlignmentParameters::parameters(), Alignable::setAlignmentParameters(), and theParentAlignable.
void KalmanAlignmentUserVariables::update | ( | bool | enforceUpdate = false | ) |
Call this function in case the associated Alignable was updated by the alignment algorithm.
Definition at line 54 of file KalmanAlignmentUserVariables.cc.
References Alignable::alignmentParameters(), AlignmentParameters::covariance(), extractTrueParameters(), KalmanAlignmentDataCollector::fillGraph(), i, Parameters::parameters, AlignmentParameters::parameters(), AlignmentParameters::selectedCovariance(), selectedParameter(), AlignmentParameters::selectedParameters(), selectedScaling(), AlignmentParameters::selector(), mathSSE::sqrt(), Alignable::surface(), theFirstUpdate, theIdentifier, theNumberOfUpdates, theParentAlignable, theUpdateFrequency, align::toAngles(), AlignableSurface::toGlobal(), and align::toMatrix().
Referenced by python.seqvaluedict.seqdict::__setslice__(), 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.seqvaluedict.seqdict::extend(), KalmanAlignmentAlgorithm::initializeAlignmentParameters(), 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(), KalmanAlignmentAlgorithm::terminate(), python.Vispa.Gui.PortConnection.PointToPointConnection::updateConnection(), and KalmanAlignmentUpdator::updateUserVariables().
void KalmanAlignmentUserVariables::update | ( | const AlignmentParameters * | param | ) |
Update user variables with given alignment parameters.
Definition at line 146 of file KalmanAlignmentUserVariables.cc.
References extractTrueParameters(), KalmanAlignmentDataCollector::fillGraph(), i, Parameters::parameters, AlignmentParameters::selectedCovariance(), selectedParameter(), AlignmentParameters::selectedParameters(), selectedScaling(), AlignmentParameters::selector(), mathSSE::sqrt(), theFirstUpdate, theIdentifier, theNumberOfUpdates, theParentAlignable, and theUpdateFrequency.
Referenced by python.seqvaluedict.seqdict::__setslice__(), 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.seqvaluedict.seqdict::extend(), 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().
|
staticprotected |
Definition at line 81 of file KalmanAlignmentUserVariables.h.
Referenced by KalmanAlignmentUserVariables().
|
protected |
Definition at line 76 of file KalmanAlignmentUserVariables.h.
Referenced by isAligned(), and setAlignmentFlag().
|
protected |
Definition at line 75 of file KalmanAlignmentUserVariables.h.
Referenced by update().
|
protected |
Definition at line 78 of file KalmanAlignmentUserVariables.h.
Referenced by identifier(), KalmanAlignmentUserVariables(), and update().
|
protected |
Definition at line 71 of file KalmanAlignmentUserVariables.h.
Referenced by hit(), and numberOfHits().
|
protected |
Definition at line 72 of file KalmanAlignmentUserVariables.h.
Referenced by numberOfUpdates(), and update().
|
staticprotected |
Definition at line 82 of file KalmanAlignmentUserVariables.h.
Referenced by KalmanAlignmentUserVariables().
|
protected |
Definition at line 69 of file KalmanAlignmentUserVariables.h.
Referenced by extractTrueParameters(), fixAlignable(), histogramParameters(), unfixAlignable(), and update().
|
protected |
Definition at line 79 of file KalmanAlignmentUserVariables.h.
Referenced by histogramParameters(), and KalmanAlignmentUserVariables().
|
protected |
Definition at line 73 of file KalmanAlignmentUserVariables.h.
Referenced by update().