#include <FrameToFrameDerivative.h>
Public Member Functions | |
AlgebraicMatrix | frameToFrameDerivative (const Alignable *object, const Alignable *composedObject) const |
Return the derivative DeltaFrame(object)/DeltaFrame(composedobject) More... | |
AlgebraicMatrix66 | getDerivative (const align::RotationType &objectRot, const align::RotationType &composeRot, const align::GlobalPoint &objectPos, const align::GlobalPoint &composePos) const |
Private Member Functions | |
AlgebraicMatrix | derivativePosPos (const AlgebraicMatrix &RotDet, const AlgebraicMatrix &RotRot) const |
Calculates the derivative DPos/DPos. More... | |
AlgebraicMatrix | derivativePosRot (const AlgebraicMatrix &RotDet, const AlgebraicMatrix &RotRot, const AlgebraicVector &S) const |
Calculates the derivative DPos/DRot. More... | |
AlgebraicMatrix | derivativeRotRot (const AlgebraicMatrix &RotDet, const AlgebraicMatrix &RotRot) const |
Calculates the derivative DRot/DRot. More... | |
AlgebraicMatrix | getDerivative (const align::RotationType &objectRot, const align::RotationType &composeRot, const align::GlobalVector &posVec) const |
Calculates derivatives using the orientation Matrixes and the origin difference vector. More... | |
AlgebraicVector | linearEulerAngles (const AlgebraicMatrix &rotDelta) const |
Gets linear approximated euler Angles. More... | |
Static Private Member Functions | |
static AlgebraicMatrix | transform (const align::RotationType &) |
Helper to transform from RotationType to AlgebraicMatrix. More... | |
class for calculating derivatives between different frames
(last update by
)
Definition at line 17 of file FrameToFrameDerivative.h.
|
private |
Calculates the derivative DPos/DPos.
Definition at line 106 of file FrameToFrameDerivative.cc.
Referenced by getDerivative().
|
private |
Calculates the derivative DPos/DRot.
Definition at line 117 of file FrameToFrameDerivative.cc.
Referenced by getDerivative().
|
private |
Calculates the derivative DRot/DRot.
Definition at line 155 of file FrameToFrameDerivative.cc.
References linearEulerAngles().
Referenced by getDerivative().
AlgebraicMatrix FrameToFrameDerivative::frameToFrameDerivative | ( | const Alignable * | object, |
const Alignable * | composedObject | ||
) | const |
Return the derivative DeltaFrame(object)/DeltaFrame(composedobject)
Definition at line 16 of file FrameToFrameDerivative.cc.
References getDerivative(), Alignable::globalPosition(), and Alignable::globalRotation().
Referenced by RigidBodyAlignmentParameters4D::derivatives(), BeamSpotAlignmentParameters::derivatives(), RigidBodyAlignmentParameters::derivatives(), MillePedeMonitor::fillFrameToFrame(), ParametersToParametersDerivatives::initBowedRigid(), and ParametersToParametersDerivatives::initRigidRigid().
AlgebraicMatrix66 FrameToFrameDerivative::getDerivative | ( | const align::RotationType & | objectRot, |
const align::RotationType & | composeRot, | ||
const align::GlobalPoint & | objectPos, | ||
const align::GlobalPoint & | composePos | ||
) | const |
Calculates derivatives DeltaFrame(object)/DeltaFrame(composedobject) using their positions and orientations. As a new method it gets a new interface avoiding CLHEP that should anyway be replaced by SMatrix at some point...
Definition at line 28 of file FrameToFrameDerivative.cc.
Referenced by frameToFrameDerivative().
|
private |
Calculates derivatives using the orientation Matrixes and the origin difference vector.
Definition at line 38 of file FrameToFrameDerivative.cc.
References funct::derivative(), derivativePosPos(), derivativePosRot(), derivativeRotRot(), transform(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
|
private |
Gets linear approximated euler Angles.
Definition at line 194 of file FrameToFrameDerivative.cc.
References funct::C.
Referenced by derivativeRotRot().
|
inlinestaticprivate |
Helper to transform from RotationType to AlgebraicMatrix.
Definition at line 61 of file FrameToFrameDerivative.h.
References dttmaxenums::R, TkRotation< T >::xx(), TkRotation< T >::xy(), TkRotation< T >::xz(), TkRotation< T >::yx(), TkRotation< T >::yy(), TkRotation< T >::yz(), TkRotation< T >::zx(), TkRotation< T >::zy(), and TkRotation< T >::zz().
Referenced by Vispa.Views.LineDecayView.DecayLine::boundingRect(), Vispa.Views.LineDecayView.DecayLine::containsPoint(), getDerivative(), and Vispa.Views.LineDecayView.DecayLine::paint().