Coder Social home page Coder Social logo

jbangelo / rinex Goto Github PK

View Code? Open in Web Editor NEW

This project forked from georust/rinex

0.0 0.0 0.0 28.5 MB

:artificial_satellite: :rocket: RINEX data in Rust: compression, analysis, processing

License: Apache License 2.0

Rust 99.60% Shell 0.01% Python 0.39%

rinex's Introduction

RINEX

Rust crates.io crates.io

minimum rustc: 1.64 License License

Rust tool suites to parse, analyze and process RINEX Data.

  • rinex is the core library

  • rinex-cli is a command line application based on the core library.
    It can be used to process RINEX files and perform operations similar to teqc.
    The application is auto-generated for a few architectures, download it from the release portal

  • rnx2crx is a RINEX compression program

  • crx2rnx is a CRINEX decompression program (Compact RINEX to RINEX)

  • sinex SNX dedicated core library

  • ublox-rnx is an application that connects to a Ublox receiver and generates RINEX data quickly & easily.
    It is the combination of the ublox and rinex crates.

By default, all timestamps are in UTC with leap seconds correctly managed.

This RINEX toolsuite is part of the GeoRust community, and we aim towards advanced geodesic and ionospheric analysis.

RINEX files

Type Parser Writer CLI UBX Notes
Navigation (NAV) โœ”๏ธ Ephemeris ๐Ÿšง V4 ๐Ÿšง โœ”๏ธ ๐Ÿ“ˆ ๐Ÿšง Epoch iteration
Observation (OBS) โœ”๏ธ โœ”๏ธ โœ”๏ธ ๐Ÿ“ˆ ๐Ÿšง Epoch iteration
CRINEX (Compressed OBS) โœ”๏ธ RNX2CRX1 โœ”๏ธ RNX2CRX3 ๐Ÿšง โœ”๏ธ ๐Ÿ“ˆ ๐Ÿšง Epoch iteration
Meteorological data (MET) โœ”๏ธ โœ”๏ธ โœ”๏ธ ๐Ÿ“ˆ ๐Ÿšง Epoch iteration
Clocks (CLK) โœ”๏ธ ๐Ÿšง ๐Ÿšง ๐Ÿšง Epoch iteration
Antenna (ATX) โœ”๏ธ ๐Ÿšง ๐Ÿšง ๐Ÿšง Sorted by antex::Antenna
Ionosphere Maps (IONEX) โœ”๏ธ ๐Ÿšง โœ”๏ธ ๐Ÿ“ˆ ๐Ÿšง Epoch iteration
SINEX (SNX) ๐Ÿšง ๐Ÿšง โž– ๐Ÿšง SINEX are special RINEX, they are managed by a dedicated core library
Troposphere (TRO) ๐Ÿšง ๐Ÿšง โ“ ๐Ÿšง Troposphere are one possible SINEX declination
Bias (BIA) โœ”๏ธ ๐Ÿšง โ“ ๐Ÿšง Bias solutions are one possible SINEX declination

โœ”๏ธ means all revisions supported
๐Ÿšง under development
CLI + ๐Ÿ“ˆ means record analysis is supported by the CLI, README

File formats

Format File name restrictions Support
RINEX โž– โœ”๏ธ
CRINEX โž– โœ”๏ธ
gzip compressed RINEX Name must end with .gz --flate2 feature must be enabled
gzip compressed CRINEX Name must end with .gz --flate2 feature must be enabled

โž– No restrictions: file names do not have to follow naming conventions.

Known weaknesses โš ๏ธ

  • Glonass Time Scale is not known to this day. We cannot parse and apply system time corrections from other time scales into the glonass time scale.

Benchmarking

Test Results
textdiff/decompression/epoch 979.55 ns
textdiff/decompression/flag 147.16 ns
numdiff/decompression/small 191.86 ns
numdiff/decompression/big 1.0973 ยตs
parsing/OBSv2/zegv0010.21o 951.40 ยตs
parsing/OBSv3/ACOR00ESP 4.1139 ms
processing/esbc00dnkr2021/mask:gnss 352.81 ms
processing/esbc00dnkr2021/mask:obs 438.73 ms
processing/esbc00dnkr2021/mask:sv 341.42 ms
processing/esbc00dnkr2021/smooth:hatch:l1c,l2c 502.90 ms

Contributions

Contributions are welcomed, do not hesitate to open new issues and submit Pull Requests through Github.

If you want to take part in active developments, check out our contribution guidelines and hints to navigate this library quicker.

rinex's People

Contributors

gwbres avatar larsnaesbye avatar dependabot[bot] avatar jbangelo avatar lnicola avatar nyurik avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.