| 
| template<typename Scalar >  | 
| Scalar  | Eta_FromRhoZ (Scalar rho, Scalar z) | 
|   | Calculate eta given rho and zeta.  More...
  | 
|   | 
| template<typename Scalar >  | 
| Scalar  | Eta_FromTheta (Scalar theta, Scalar r) | 
|   | Implementation of eta from -log(tan(theta/2)).  More...
  | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const AxisAngle &r, const Transform3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const AxisAngle &r, const Translation3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const EulerAngles &r, const Transform3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const EulerAngles &r, const Translation3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Quaternion &r, const Transform3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Quaternion &r, const Translation3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Rotation3D &r, const Transform3D< T > &t) | 
|   | combine a rotation and a transformation to give a transform3d First the transformation then the rotation  More...
  | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Rotation3D &r, const Translation3D< T > &t) | 
|   | combine a translation and a rotation to give a transform3d First the translation then the rotation  More...
  | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const RotationX &r, const Transform3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const RotationX &r, const Translation3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const RotationY &r, const Transform3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const RotationY &r, const Translation3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const RotationZ &r, const Transform3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const RotationZ &r, const Translation3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const RotationZYX &r, const Transform3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const RotationZYX &r, const Translation3D< T > &t) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Transform3D< T > &t, const AxisAngle &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Transform3D< T > &t, const EulerAngles &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Transform3D< T > &t, const Quaternion &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Transform3D< T > &t, const Rotation3D &r) | 
|   | combine a transformation and a rotation to give a transform3d First the rotation then the transform3D  More...
  | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Transform3D< T > &t, const RotationX &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Transform3D< T > &t, const RotationY &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Transform3D< T > &t, const RotationZ &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Transform3D< T > &t, const RotationZYX &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Transform3D< T > &t, const Translation3D< T > &d) | 
|   | combine a transformation and a translation to give a transform3d First the translation then the transform3D  More...
  | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Translation3D< T > &d, const Transform3D< T > &t) | 
|   | combine a translation and a transformation to give a transform3d First the transformation then the translation  More...
  | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Translation3D< T > &t, const AxisAngle &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Translation3D< T > &t, const EulerAngles &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Translation3D< T > &t, const Quaternion &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Translation3D< T > &t, const Rotation3D &r) | 
|   | combine a rotation and a translation to give a transform3d First a rotation then the translation  More...
  | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Translation3D< T > &t, const RotationX &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Translation3D< T > &t, const RotationY &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Translation3D< T > &t, const RotationZ &r) | 
|   | 
| template<class T >  | 
| Transform3D< T >  | operator* (const Translation3D< T > &t, const RotationZYX &r) | 
|   | 
| template<typename T >  | 
| std::ostream &  | operator<< (std::ostream &os, const Plane3D< T > &p) | 
|   | Stream Output and Input.  More...
  | 
|   | 
| template<class T >  | 
| std::ostream &  | operator<< (std::ostream &os, const Transform3D< T > &t) | 
|   | print the 12 components of the Transform3D  More...
  | 
|   | 
| template<class T >  | 
| std::ostream &  | operator<< (std::ostream &os, const Translation3D< T > &t) | 
|   | 
Calculate eta given rho and zeta. 
This formula is faster than the standard calculation (below) from log(tan(theta/2) but one has to be careful when rho is much smaller than z (large eta values) Formula is eta = log( zs + sqrt(zs^2 + 1) ) where zs = z/rho
For large value of z_scaled (tan(theta) ) one can appoximate the sqrt via a Taylor expansion We do the approximation of the sqrt if the numerical error is of the same order of second term of the sqrt.expansion: eps > 1/zs^4 => zs > 1/(eps^0.25)
When rho == 0 we use etaMax (see definition in etaMax.h) 
Definition at line 48 of file eta.h.