code: def eci2aer(eci: Tuple[float, float, float],
              lat0: float, lon0: float, h0: float,
              t: datetime,
              useastropy: bool = True) -> Tuple[float, float, float]:
      
      ecef = np.atleast_2d(eci2ecef(eci, t, useastropy))
  
      return ecef2aer(ecef[:, 0], ecef[:, 1], ecef[:, 2], lat0, lon0, h0)
docs: takes ECI coordinates of point and gives az, el, slant range from Observer
  
      Parameters
      ----------
  
      eci : tuple
            [meters] Nx3 target ECI location (x,y,z)
      lat0 : float
             Observer geodetic latitude
      lon0 : float
             Observer geodetic longitude
      h0 : float
           observer altitude above geodetic ellipsoid (meters)
      t : datetime.datetime
          Observation time
  
  
      Returns
      -------
      az : float
           azimuth to target
      el : float
           elevation to target
      srange : float
           slant range [meters]