docs: def MT2Axes(mt):
      """
      Calculates the principal axes of a given moment tensor.
  
      :param mt: :class:`~MomentTensor`
      :return: tuple of :class:`~PrincipalAxis` T, N and P
  
      Adapted from ps_tensor / utilmeca.c /
      `Generic Mapping Tools (GMT) <http://gmt.soest.hawaii.edu>`_.
      """
      (D, V) = np.linalg.eigh(mt.mt)
      pl = np.arcsin(-V[0])
      az = np.arctan2(V[2], -V[1])
      for i in range(0, 3):
          if pl[i] <= 0:
              pl[i] = -pl[i]
              az[i] += np.pi
          if az[i] < 0:
              az[i] += 2 * np.pi
          if az[i] > 2 * np.pi:
              az[i] -= 2 * np.pi
      pl *= R2D
      az *= R2D
  
      T = PrincipalAxis(D[2], az[2], pl[2])
      N = PrincipalAxis(D[1], az[1], pl[1])
      P = PrincipalAxis(D[0], az[0], pl[0])
      return (T, N, P)