Python RINEX reader that is very fast
RINEX 3 and RINEX 2 reader in Python – reads NAV and OBS files into xarray.Dataset for easy use in analysis and plotting.
Writes to NetCDF4 (subset of HDF5). This is couple order of magnitude speedup in reading and allows filtering/processing of gigantic files too large to fit into RAM.
python -m pip install -e .
Read RINEX3 or RINEX 2 Obs or Nav file:
python ReadRinex.py myrinex.XXx
import pyrinex obsdata,header = pyrinex.rinexobs('tests/demo.10o')
This returns a 4-D xarray DataArray of data within the .XXo observation file. Indexed by measurement x SV x time x signal
- read overall OBS header (so we know what to expect in the rest of the OBS file)
- preallocate 4-D arrayto fit all data – this is a key difference from other software out there, that repetitively reallocates memory via appending. The xarray.DataArray is a self-describing variable, each axis has text indices.
- fill the 4-D array with the data by reading in blocks – another key difference from other programs out there, instead of reading character by character I ingest a whole time step of text at once, helping keep the processing closer to CPU cache making it much faster.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, Size & Hash SHA256 Hash Help||File Type||Python Version||Upload Date|
(14.2 kB) Copy SHA256 Hash SHA256
|Wheel||py3||Mar 22, 2018|
(6.5 kB) Copy SHA256 Hash SHA256
|Source||None||Mar 22, 2018|