pylupnt.RinexNavLoader¶
- class pylupnt.RinexNavLoader¶
Loader for RINEX navigation (broadcast-ephemeris) files: Keplerian propagation of GNSS satellite ECEF state and clock correction
- static download_file_for_epoch(epoch: Real, time_scale: pylupnt._pylupnt.Time = <Time.UTC: 1>, cache_dir: str = '') → str¶
Download/cache the BRDC00IGS broadcast-ephemeris RINEX nav file covering epoch (in time_scale seconds) from NASA CDDIS and return the local uncompressed .rnx path. Needs Earthdata credentials (~/.netrc or EARTHDATA_USERNAME/EARTHDATA_PASSWORD). Cache defaults to output/gnss_files/brdc.
- static filename_for_epoch(epoch: Real, time_scale: pylupnt._pylupnt.Time = <Time.UTC: 1>) → str¶
BRDC filename covering epoch, e.g. ‘BRDC00IGS_R_20260140000_01D_MN.rnx’
- get_pos_vel(self: pylupnt._pylupnt.RinexNavLoader, sat_id: str, t_tai: Real) → Annotated[numpy.typing.NDArray[Real], '[6, 1]']¶
Broadcast-ephemeris ECEF position/velocity [m, m/s] only
- get_pos_vel_clock(self: pylupnt._pylupnt.RinexNavLoader, sat_id: str, t_tai: Real) → tuple[Annotated[numpy.typing.NDArray[Real], '[6, 1]'], Real]¶
Broadcast-ephemeris ECEF (position, velocity) [m, m/s] and clock correction [s] via Keplerian propagation of the closest navigation message; returns (rv_ecef, clock_corr_s)
- get_satellites(self: pylupnt._pylupnt.RinexNavLoader) → list[str]¶
Identifiers of all satellites with navigation messages loaded so far (GLONASS excluded), e.g. [‘G01’, ‘E11’, …]
- has_satellite(self: pylupnt._pylupnt.RinexNavLoader, sat_id: str) → bool¶
True if a navigation message for sat_id (e.g. ‘G01’) has been loaded
- load_file(self: pylupnt._pylupnt.RinexNavLoader, filepath: str) → None¶
Parse an additional RINEX nav file and merge its messages in