Skip to main content

CNRDIFF

A library used to compare signal-to-noise ratio for GNSS observation data.

Dependencies

  • pandas >= 2.0.0
  • pyrtcm >= 1.0.0

Usage

Compute carrier-to-noise ratio differences of stations SN04 and SN02 relative to reference station SN01:

cnrdiff SN01001a.24O SN02001a.24O SN04001a.24O

Optional arguments

Compute differences by satellite system and save the output to a file:

cnrdiff --ftype RTCM3_MSM4 a.rtcm b.rtcm --by-sys > result.txt

Supported file types and auto-detected suffixes:

File type Suffix examples
BNC_QC_LOG .log
RINEX3_OBS .rnx, .obs, .*O
RTCM3_MSM4 .rtcm

Use --ftype to override auto-detection when needed.

Averaging algorithm

Assumptions

  1. Each station records observation data normally, with no missing epochs or event interruptions.
  2. Observation data from all stations is time-synchronized, with start and end times as consistent as possible.
  3. The epoch interval of observation data does not exceed 1 second; data is processed as 1-second intervals.

By satellite PRN (default)

The intermediate CNR binary file generated during execution is an SQLite database that stores the carrier-to-noise ratio for each epoch, each satellite, and each signal type.

  1. First, compute the average of each signal type over all epochs for each satellite to obtain a table indexed by satellite PRN and signal type.
  2. Then align the tables from all stations and compute differences to obtain a table indexed by satellite PRN + signal type and station (data file name).

By satellite system

Extract the satellite system from the satellite PRN as a new dimension.

  1. First, compute the average of each signal type over all satellites and all epochs for each satellite system (equivalent to a weighted average by epoch count per satellite) to obtain a table indexed by satellite system and signal type.
  2. Then align the tables from all stations and compute differences to obtain a table indexed by satellite system + signal type and station (data file name).

License

MIT

Authors and contributors

Lead Programmer: Sheng Guoliang shengguoliang@sinognss.com

Contributors:

Metadata

Release files for cnrdiff 2.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cnrdiff 2.2.0
File Size Uploaded
cnrdiff-2.2.0.tar.gz 6.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cnrdiff 2.2.0
File Interpreter ABI Platform
cnrdiff-2.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 13.3 kB

Release files / cnrdiff-2.2.0.tar.gz

Download URL cnrdiff-2.2.0.tar.gz
Size 6.5 kB
Tags Source
SHA-256 checksum
How to use checksums
2b55947fd5eeeb4d347cf51c8c1b012b10d7ccdb2fe924bd32f4faa671c39a16
BLAKE2b-256 checksum
How to use checksums
cacf04f4ae2cda7fd96507d848dc496b96d02234e1734c50a3ba52b3a075fe72
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.

Transparency log

Release files / cnrdiff-2.2.0-py3-none-any.whl

Download URL cnrdiff-2.2.0-py3-none-any.whl
Size 6.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a0ce7bbd2e80e9054ddf9a367fdb95469a712f29254e7f2cb36c7ee3a55866b0
BLAKE2b-256 checksum
How to use checksums
3a858ff29c19aed8814be25a20983cb8eee1a9bf76dacf862024ac7c474e993b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.2.0 This release

2 release files

2.1.2

2 release files

1.3.0

2 release files

1.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page