INNER CODE UNIT · Python
_EARTH_ROTATION_RATE
ATTron/astroz · bindings/python/astroz/__init__.py:123
_EARTH_ROTATION_RATE = 7.2921150e-5 # rad/s, constants.earth.rotationRate
_WGS84_A = 6378.137
_WGS84_E2 = 6.69437999014e-3
def _teme_to_ecef_into(pos, vel, jd, sats):
"""Rotate pos[:, sats] (and vel) from TEME to ECEF in place. Velocity is
the derivative of the ECEF track (rotation minus omega x r), matching the
Zig writeOutput path."""
theta = _gmst_rad(jd)[:, None]
c, s = np.cos(theta), np.sin(theta)
p = pos[:, sats]
x, y = p[..., 0].copy(), p[..., 1].copy()
p[..., 0] = c * x + s * y
p[..., 1] = c * y - s * x
if vel is not None:
v = vel[:, sats]
vx, vy = v[..., 0].copy(), v[..., 1].copy()