next up previous contents
Next: HepLorentzRotation Class Up: HepRotation Class Previous: The Rotation Group   Contents

Rectifying Rotations

The operations on HepRotations are such that mathematically, the orthonormality of the representation is always preserved. And methods take advantage of this property. However, a long series of operations could, due to round-off, produce a HepRotation object with a representation that slightly deviates from the mathematical ideal. This deviation can be repaired by extracting the axis and delta for the HepRotation, and freshly setting the axis and delta to those values.


\begin{displaymath}
\mbox{R.rectify()} \rightarrow \mbox{R.set (R.axis(), R.delta())}
\end{displaymath} (167)

A technical point: If the rotation has strayed significantly from a true orthonormal matrix, then extracting the axis is not necessarily an accurate process. To minimze such effects, before performing the formal algorithm to extract the axis, the rectify() method averages the purported rotation with the transpose of its inverse. (A true rotaion is identical to the transpose of its inverse). This in principle eliminates errors to lowest order.



Fermilab ZOOM Physics Class Library Task Force