georust / rinex

RINEX and GNSS data processing :artificial_satellite:
Apache License 2.0
76 stars 19 forks source link

Improve support for BDRC ephemeris #249

Closed FlowLoveV closed 3 months ago

FlowLoveV commented 3 months ago
gwbres commented 3 months ago

@FlowLoveV,

this is an amazing contribution, thank you so much!

Lately, I'm been working on the sbas branch and was able to myself slightly improve this portion of the library (i'm getting my first SBAS results, and mostly correct BDS results). But with this contribution, it should be close to perfection.

We have initiated this topic to discuss how Nyx-space could answer the need to resolve orbital attitudes from keplerian parameters.

I propose this plan:

gwbres commented 3 months ago

The next step is to refer to rtklib and update the satellite ephemeris calculations for GLONASS and SBAS to get their exact positions instead of the approximate positions reported.

Yes, exactly. My plan is the following

FlowLoveV commented 3 months ago

According to what I have learned, broadcast ephemeris predicts orbits in two main ways:

  1. Use Kepler orbital elements to describe orbits, such as GPS, BDS, GALIEO, QZSS
  2. Use numerical integration to calculate orbits, such as GLONASS, SBAS

In the first way, the relativistic correction of satellite clock errors depends on Kepler orbital parameters ($E_k$), I am not sure whether the Nyx library can perfectly meet our needs (if it can, that would be great)

gwbres commented 3 months ago

@FlowLoveV, @larsnaesbye,

I can already confirm that this contribution finalizes the work for BeiDou. This is what I get when surveying the Esbjerg (DNK) station using only radio messages from BeiDou (real time brdc)

My latest/best branch: x_err=5m, y_err=28cm, z_err=37m

beidou_prev

This branch: x_err=2.5m, y_err=1.17m, z_err=4m

beidou_new