Skip to main content

Implementation of TurboEdit algorithm for GNSS data

Project description

TurboEdit Algorithm Implementation

This project provides a C implementation of the TurboEdit algorithm for detecting potential GPS cycle slips, along with a Python wrapper for identifying and correcting those slips when possible.

📖 Reference

  • Original paper: Blewitt, G. (1990)An Automatic Editing Algorithm for GPS Data (Geophysical Research Letters, Vol. 17, No. 3)

🧱 Requirements

🛠️ Build Instructions

  1. Clone this repository.

  2. Make sure libopenblas.dll and cblas.h are available in the lib/ and include/ folders respectively.

  3. From the project root, run:

    run.bat
    

    This will build the shared library and run the example script.


⚙️ C Function Overview

main.cfind_cycle_slips

This is the core C function. It is responsible for detecting potential cycle slips in GPS phase and pseudorange data.

Function Signature

void find_cycle_slips(
    double* phase_L1,      // e.g., L1 carrier phase
    double* phase_L2,      // e.g., L2 carrier phase
    double* range_L1,      // e.g., L1 pseudorange
    double* range_L2,      // e.g., L2 pseudorange
    size_t n_samples       // number of data points
);
  • It is assumed that all arrays have the same length.
  • The function returns a list containing the indices of all detected slips.

Example Usage

int N = 5000;
double phase_L1[N] = {1.0, 2.0, 3.0, ...};
double phase_L2[N] = {5.0, 3.0, 7.0, ...};
double range_L1[N] = {2.0, 5.0, 9.0, ...};
double range_L2[N] = {8.0, 3.0, 6.0, ...};

find_cycle_slips(phase_L1, phase_L2, range_L1, range_L2, N);

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

turboedit-0.0.5.tar.gz (12.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

turboedit-0.0.5-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file turboedit-0.0.5.tar.gz.

File metadata

  • Download URL: turboedit-0.0.5.tar.gz
  • Upload date:
  • Size: 12.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for turboedit-0.0.5.tar.gz
Algorithm Hash digest
SHA256 9c4b04b5cb44420b68f0698fd0edf7708f73623faf5e1b61a50819af4559aa82
MD5 1ffac49071d0589f6227239c58c27bf2
BLAKE2b-256 f8395fe4cd2bd397703b2a8a50bc4af4f2213eacfbadd75a85974e8c5538d821

See more details on using hashes here.

File details

Details for the file turboedit-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: turboedit-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for turboedit-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 7353ad6e4fd9cdbfb64af3bab2ca4febe6b87d5f99301c70997d3530e78afc9b
MD5 202c4d90dbc0cc3f03b3706b7e479ab6
BLAKE2b-256 331dc4d93a6eed807cdea3adb80b6867d9e6dcfdc8ea5ff7552d83ffe1eeaad2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page