Skip to content
Guillaume W. Bres edited this page Jul 25, 2024 · 5 revisions

Report Synthesis

GNSS data analysis and report synthesis is the main opmode supported by rinex-cli. In fact, any other opmodes should be considered as subsidaries.

By default, rinex-cli will generate a complete report that depends on the provided Data. This does not apply if you have selected an operation that falls in the File Operations. Any other opmodes will run in conjonction to the analysis and will enhance the synthesized report. One example of those would be the ppp opmode.

The analysis report is similar to a teqc like report and will emphasize everything that is required for precise navigation and other studies.

Report versus Input data

It is possible to use rinex-cli to analyze RINEX, SP3 and CGGTTS files.
The generated report automatically adapts to the provided input.
Therefore, it possible for example to generate a report from SP3 data solely.

Similarities with teqc

We share similarities with teqc which will prove convenient
to advanced "teqc" users. Among them:

  • Quick GNSS filters (-G, -R, ...) still exist
  • Similar position analysis and reporting
  • Similar signals analysis and reporting

Differences with teqc

  • Unlike teqc we are not limited to RINEX V2, V3 and V4 Observations are fully supported.
  • we do not support BINEX input data/files as of today.
  • we do not report an average receiver position (code based positioning), from partial post processed navigation, that teqc used as a context quality indicator. Instead, we have a complete position solver (similar to rtklib), which you can use to augment your analysis reports.
  • we are not limited to L1/L2 signals
  • we are not limited to GPS and Glonass
  • we have no means to detect data duplicates as of today

Report synthesis versus File Operations

File operations (like tbin or diff) are the only opmodes that will not generate a report: they aim at generating data (either RINEX or other).

It is possible though, to invoke RINEX-Cli once again, on the output products you have just generated. Refer to our scripts database for example of this kind of runs.

Report synthesis and Workflow

In this example, we deploy rinex-cli and generate a report. This is BRDC navigation context:

rinex-cli \
    --fp test_resources/CRNX/V3/MOJN00DNK_R_20201770000_01D_30S_MO.crx.gz \
    --fp test_resources/NAV/V3/MOJN00DNK_R_20201770000_01D_MN.rnx.gz

Rerunning rinex-cli with similar setup, does not update the report, because it would produce the exact same results:

rinex-cli \
    --fp test_resources/CRNX/V3/MOJN00DNK_R_20201770000_01D_30S_MO.crx.gz \
    --fp test_resources/NAV/V3/MOJN00DNK_R_20201770000_01D_MN.rnx.gz

You can force report synthesis with --force,-f to change that, on any run:

rinex-cli \
    -f \
    --fp test_resources/CRNX/V3/MOJN00DNK_R_20201770000_01D_30S_MO.crx.gz \
    --fp test_resources/NAV/V3/MOJN00DNK_R_20201770000_01D_MN.rnx.gz

If you modify the provided context, the report regenerated, because it will most likely permit new analysis. In this example, we move to a partially PPP compliant context:

rinex-cli \
    --fp test_resources/CRNX/V3/MOJN00DNK_R_20201770000_01D_30S_MO.crx.gz \
    --fp test_resources/NAV/V3/MOJN00DNK_R_20201770000_01D_MN.rnx.gz \
    --fp test_resources/SP3/GRG0MGXFIN_20201770000_01D_15M_ORB.SP3.gz

Report synthesis and other operations (like ppp)

Subsidary opmodes, like ppp will enhance the previous report with extra chapters. For example, ppp will generate PVT solutions that are presented in a dedicated tab.

In this example, we generate a report and then request ppp solutions. rinex-cli will not generate the first part of the report, because it would produce the same results. The ppp solutions are generated and added to the previous report:

# Report synthesis
rinex-cli \
    --fp test_resources/CRNX/V3/MOJN00DNK_R_20201770000_01D_30S_MO.crx.gz \
    --fp test_resources/NAV/V3/MOJN00DNK_R_20201770000_01D_MN.rnx.gz

# Report is solely augmented (only ppp chapter is generated and appended)
rinex-cli \
    --fp test_resources/CRNX/V3/MOJN00DNK_R_20201770000_01D_30S_MO.crx.gz \
    --fp test_resources/NAV/V3/MOJN00DNK_R_20201770000_01D_MN.rnx.gz \
    ppp

# Modifying the context will force complete report regeneration (both chapters)
# just like --force`
rinex-cli \
    --fp test_resources/CRNX/V3/MOJN00DNK_R_20201770000_01D_30S_MO.crx.gz \
    --fp test_resources/NAV/V3/MOJN00DNK_R_20201770000_01D_MN.rnx.gz \
    --fp test_resources/SP3/GRG0MGXFIN_20201770000_01D_15M_ORB.SP3.gz \
    ppp

Refer to their own documentation for specific examples:

Clone this wiki locally