astrodynamics-gnss
GNSS domain layer built on the astrodynamics
core crate. A sibling crate, not a feature — a propagation-only consumer never
has to compile the SP3/RINEX/IONEX parsers.
What it provides
- SP3 precise ephemeris —
ephemeris::Sp3/ephemeris::SP3parsing and arbitrary-epoch position/clock interpolation. - Broadcast ephemeris — RINEX 3.x/4.xx navigation parsing and orbit/clock evaluation for GPS (LNAV), Galileo (I/NAV, F/NAV), BeiDou (D1/D2, including geostationary satellites), and GLONASS (PZ-90.11 state-vector propagation by Runge–Kutta integration).
- Atmospheric corrections — broadcast Klobuchar ionosphere (frequency-aware) and Saastamoinen + Niell troposphere.
- Single-point positioning — multi-constellation least-squares PVT with one receiver clock per system, elevation weighting, satellite rejection, and dilution of precision.
Public API shape
The public surface is organized by workflow:
use ;
The implementation modules are private; users should not need to know whether a function is backed by an SP3 parser, a broadcast store, or an SPP implementation module. Use the façade modules:
ephemerisfor SP3 and broadcast ephemeris products,rinexfor RINEX NAV/OBS parsing and CRINEX decoding,positioningfor SPP and DOP diagnostics,atmospherefor ionosphere/troposphere models,orbitfor reduced-orbit fitting and drift checks.
Parity bar
Every independently reproducible, libm-bound component (orbit and clock evaluation, ionosphere, troposphere, DOP) is held to bit-exact (0 ULP) parity against a pinned Python reference, proven by committed hex-float golden vectors; broadcast orbits are additionally validated against precise SP3 products. The least-squares solver's converged position is a sub-micron solver-agreement result, not a 0-ULP claim (the linear-algebra step is BLAS-bound).
Units are SI throughout, with the frame and datum encoded in the type
(ItrfPositionM, Wgs84Geodetic). 0 ULP is certified against a pinned target
(OS/arch, libm, toolchain, FMA policy); other platforms run the same algorithms
but need their own fixtures.
License
MIT