geospace-code / georinex

Python RINEX 2 / 3 NAV / OBS / sp3 reader & batch convert to HDF5 with C-like speed
MIT License
220 stars 91 forks source link

Extract ionospheric correction parameters from NAV files #32

Closed nmayorov closed 5 years ago

nmayorov commented 5 years ago

Hi!

First of all, thank you for creating this package. I'm learning GNSS signal processing and use your package to read RINEX files.

Now I'm investigating broadcaset ionospheric delay compensation models, so I decided to include model coefficients in the returned data:

Several notes:

  1. Model coefficeints are stored in attrs as numpy arrays with 8 or 4 (for Galieo) coefficients.
  2. I put rinex_string_to_float into io, because putting it into utils creates a cyclic import. I guess conceptually utils should not import other modules.
  3. I had to modify "galileo3.15n" file. I assume you created it by hand. If I understand RINEX correctly --- the right way to parse it is to strictly follow Fortran format specifies. So "IONOSPHERIC CORR" line as provided seems to violate it. Edited: I had to do the same with demo.10n.

Do I miss something in RINEX format specification? Specifically for ION ALPHA it reads 2X,4D12.4, so I convert substring of length 12 asfter skipping first 2 symbols. Or am I theoreticall right, however this strict following is impractical (i.e. every second RINEX file won't conform to it)?

nmayorov commented 5 years ago

Hey, are you interested at all in accepting pull requests?

I constantly spot and fix different problems, but if you are slow to response it is hard to separate different fixes/improvements in different pull request. So I will probably end up maintaining my own branch with many unrelated fixes.

scivision commented 5 years ago

Thanks @nmayorov everyone is glad for your improvements. As you see the user community is growing everyday. We were unusually busy the past few weeks, thanks for your patience. I modified your contribution slightly to use Pytest framework--thanks again.