docs: def cartesian_to_spherical(vectors):
      """
      Return the spherical coordinates for coordinates in Cartesian space.
  
      This function does an opposite to :func:`spherical_to_cartesian`.
  
      :param vectors:
          Array of 3d vectors in Cartesian space of shape (..., 3)
      :returns:
          Tuple of three arrays of the same shape as ``vectors`` representing
          longitude (decimal degrees), latitude (decimal degrees) and depth (km)
          in specified order.
      """
      rr = numpy.sqrt(numpy.sum(vectors * vectors, axis=-1))
      xx, yy, zz = vectors.T
      lats = numpy.degrees(numpy.arcsin((zz / rr).clip(-1., 1.)))
      lons = numpy.degrees(numpy.arctan2(yy, xx))
      depths = EARTH_RADIUS - rr
      return lons.T, lats.T, depths