-Offset
-complex_conjugate (Offset o)
-{
- o[Y_AXIS] = -o[Y_AXIS];
- return o;
-}
-
-Offset
-complex_divide (Offset z1, Offset z2)
-{
- z2 = complex_conjugate (z2);
- Offset z = complex_multiply (z1, z2);
- z *= 1 / z2.length ();
- return z;
-}
-
-Offset
-complex_exp (Offset o)
-{
- Real s = sin (o[Y_AXIS]);
- Real c = cos (o[Y_AXIS]);
-
- Real r = exp (o[X_AXIS]);
-
- return Offset (r * c, r * s);
-}
-
-Real
-Offset::arg () const
-{
- return atan2 (coordinate_a_[Y_AXIS], coordinate_a_[X_AXIS]);
-}
-