docs: def orthonormalize_righthanded(basis):
      """Orthonormalizes righthandedly a given 3D basis.
  
      This functions returns a right handed orthonormalize_righthandedd basis.
      Since only the first two vectors in the basis are used, it does not matter
      if you give two or three vectors.
  
      Right handed means, that:
  
      .. math::
  
          \\vec{e_1} \\times \\vec{e_2} &= \\vec{e_3} \\\\
          \\vec{e_2} \\times \\vec{e_3} &= \\vec{e_1} \\\\
          \\vec{e_3} \\times \\vec{e_1} &= \\vec{e_2} \\\\
  
      Args:
          basis (np.array): An array of shape = (3,2) or (3,3)
  
      Returns:
          new_basis (np.array): A right handed orthonormalized basis.
      """
      v1, v2 = basis[:, 0], basis[:, 1]
      e1 = normalize(v1)
      e3 = normalize(np.cross(e1, v2))
      e2 = normalize(np.cross(e3, e1))
      return np.array([e1, e2, e3]).T