docs: def julian2sidereal(Jdate: float) -> float:
      """
      Convert Julian time to sidereal time
  
      D. Vallado Ed. 4
  
      Parameters
      ----------
  
      Jdate: float
          Julian centuries from J2000.0
  
      Results
      -------
  
      tsr : float
          Sidereal time
  
      """
  
      jdate = np.atleast_1d(Jdate)
      assert jdate.ndim == 1
  
      tsr = np.empty(jdate.size)
      for i, jd in enumerate(jdate):
          # %% Vallado Eq. 3-42 p. 184, Seidelmann 3.311-1
          tUT1 = (jd - 2451545.0) / 36525.
  
          # Eqn. 3-47 p. 188
          gmst_sec = (67310.54841 + (876600 * 3600 + 8640184.812866) *
                      tUT1 + 0.093104 * tUT1**2 - 6.2e-6 * tUT1**3)
  
          # 1/86400 and %(2*pi) implied by units of radians
          tsr[i] = gmst_sec * (2 * pi) / 86400. % (2 * pi)
  
      return tsr.squeeze()