The basic RINEX epoch measurement looks like:

Pseudorange, Carrier phase, Doppler, SNR

(In that order?)

Is this correct for post processing:

  1. Using Pseudorange code technique (RTKLIB positioning mode DGPS/DGNSS) we can use only Pseudorange.

  2. Using Carrier phase technique (RTK but post processing not real time) (RTKLIB positioning mode Kinematic) we can use only Carrier phase. [I assume this is not correct, since RTK using code for inital estimation and from that point improves accuracy with phase measurements]

  3. Doppler, SNR theoretically useless for both of the above, but using them can improve results (maybe some internal algorithm taking advantage of them).

The nature of the question is to store minimum set of data for post processing.


RINEX is nothing just an interface format for transfering GNSS measurements. Receivers produce proprietary binary format then this binary format convert to RINEX via third party program. Thus the order of observation you have mentioned is not major order. It can be changed.

About RTKLIB and GNSS data processing:

  1. Doppler observation: is not useless, it helps to estimate receiver velocity in kinematic application.

  2. SNR: in Some GNSS Remote Sensing application is usable. In addition SNR can be use as weight of observations during unknowns estimation procedure.

  • So still it sounds like kind of auxiliary nice to have fields
    – michael
    Jul 6 '18 at 5:38
  • Yes, for improved accuracy, it is nice to have those fields. SNR is used in RTKLIB to help choose when to include/exclude satellites in a solution. If you are concerned about minimal storage, maybe think about compression like CRINEX, BINEX, gzip or Z. The USGS CORS system uses 30s decimated Z compressed CRINEX: ngs.noaa.gov/CORS/data.shtml
    – Dave X
    Nov 15 '18 at 16:51

The order of observable types (i.e., P, L, D, SNR) is stated in one of the RINEX header lines. It is actually up to the Receiver's firmware to determine the order.

DGPS refers to bias correction techniques using only the P (i.e., coded) ranges.

RTK refers to on-the-fly bias correction techniques using both P and L observables on at least two bands, e.g., L1 + L2.

Relative Positioning refers to post-mission (e.g., later in office) bias correction techniques using both P and L observables also on at least two bands.

For RTK and Relative Positioning, the P ranges together with the Navigation data are used to compute the initial rover position. The corrections are then applied over successive epochs.

Most GNSS textbooks agree with the above definitions (loosely), but not all. For instance, at least one textbook lumped Relative Positioning with DGPS.

Doppler observables are an important input for:-

  • Estimating acceleration
  • Cycle slips (e.g., via L-D combination)

SNR is a important quality indicator. Directly, those values could be used to filter off "problematic" satellites. In other situations, they could be used as weights in processing.

For storage purposes, I would suggest that all observables be stored/kept because you could never recreate the decimated observable type via any interpolation techniques. As Dave X correctly suggested - try compression. And if that is still unsatisfactory, decimate every X seconds.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.