RTKLIB is an open source program package for GNSS positioning.
Some features of RTKLIB:
It supports standard and precise positioning algorithms with: GPS, GLONASS, Galileo, QZSS, BeiDou and SBAS.
It supports various positioning modes with GNSS for both real-time and post-processing: Single, DGPS/DGNSS, Kinematic, Static, Moving-Baseline, Fixed, PPP-Kinematic, PPP-Staticand PPP-Fixed
It supports many standard formats and protocols for GNSS.
It supports several GNSS receivers' proprietary messages.
It supports external communication via: Serial, TCP/IP, NTRIP, local log file (record and playback) and FTP/HTTP (automatic download)
It provides many library functions and APIs for GNSS data processing
Please visit the RTKLIB website for more information.
GPSTk provides a C++ open source library and a suite of applications for GPS processing problems.
The design of the GPSTk suite is as platform-independent as possible. Platform independence is achieved through use of the ISO-standard C++ programming language. The principles of object-oriented programming are used throughout the GPSTk code base in order to ensure that the code is modular, extensible and maintainable.
The GPSTk suite consists of a core library, auxiliary libraries, and a set of applications. The GPSTk provides a wide array of functions that solve processing problems associated with GPS such as processing or using standard formats such as RINEX. The libraries are the basis for the more advanced applications distributed as part of the GPSTk suite.
The GPSTk is sponsored by Space and Geophysics Laboratory, within the Applied Research Laboratories at the University of Texas at Austin (ARL:UT). GPSTk is the by-product of GPS research conducted at ARL:UT since before the first satellite launched in 1978; it is the combined effort of many software engineers and scientists. In 2003, the research staff at ARL:UT decided to open source much of their basic GPS processing software as the GPSTk.
GPSTk Core Library
The GPSTk core library provides the most robust, broadly useful, and platform independent code in the GPSTk. It provides a number of models and algorithms found in GPS textbook and classic papers, such as solving for the user position or estimating atmospheric refraction. Common formats are supported as well, such as RINEX or SP3. There are several categories of function that provide the base functionality for the GPSTk applications and for a number of other independent projects:
GPS time. Conversion among time representations such as MJD, GPS week and seconds of week, and many others.
Ephemeris calculations. Position and clock interpolation for both broadcast and precise ephemerides.
Atmospheric delay models. Includes ionosphere and troposphere models.
Position solution. Includes an implementation of a Receiver Autonomous Integrity Monitoring algorithm.
Mathematics. Includes Matrix and Vector implementations, as well as interpolation and numerical integration.
GNSS data structure. Data structures that contain observations mapped to satellites.
Application framework. Includes processing command lines options, providing interactive help and working with file systems.
Please visit the GPSTk website for more information.
源代码下载(编译太费力,建议参考阅读)
GPSPACE software
Introduction
The GPSPACE software was developed in the Fortran programming language and used operationally at the Canadian Geodetic Survey (CGS) from the 90's until August 2018. From 2003 the software was operating behind the scene of the CSRS-PPP on-line service offered by CGS. In August 2018, the GPSPACE was replaced with a newer package offering better maintainability and performance and CGS decided to cease the support of GPSPACE. Over the years a number of organizations and individuals have obtained limited licensed use of the source code. CGS therefore opted to release the software under the MIT License to the larger community.
CGS released GPSPACE by posting the software and related configuration files along with test cases results as an archived repository on github.com. As an archived repository, it is not possible to update its content and pull requests will fail, but it is still possible to fork and modify its content as per the Licence terms, if anyone or any group is interested. CGS has no intention to support the application in the future, either through updates to the source code, or by adding documentation or test cases.
Precise Point Positioning
Precise Point Positioning is a processing methodology that combines Global Navigation Satellite Systems (GNSS) data collected on the ground, in air or in space, with precise GNSS satellite data products (positions and clock states) to generate positions of high precision. Factors such as the quality of GNSS data products, length of observation sessions, type of data collected, type of receiving hardware and conditions of collection will affect the quality of computed positions.
References :
[1] Zumberge J, Heflin MB, Jefferson DC, et al. (1997) Precise point positioning for the efficient and robust analysis of GPS data for large networks. J. Geophys. Res. 102 (B3), 5005-5017, doi:10.1029/96JB03860.
[2] Kouba J, and Héroux P (2001) Precise point positioning using IGS orbit and clock products. GPS Solutions 5 (2), 12-28, doi:10.1007/PL00012883.
GPSPACE capabilities
The GPSPACE software was developed in view of achieving the highest geodetic precision possible. The version released here can:
process GPS, Glonass, Galileo and/or Beidou data,
process in static or kinematic modes,
process dual frequency data,
process single frequency data (pseudoranges-only or pseudoranges+phases),
GPSPACE is a legacy software for which parts of the source code date back to the 70's. Over the years of its creation and improvement, very little attention was given to maintaining any kind of coding standard. Additionally no documentation is provided, other than the usage examples provided in the test cases. The software has however gone through very extensive testing during its active years supporting the CSRS-PPP service.
Copyright (c) 2018 Government of Canada. Under MIT Licence terms
示例数据和软件
暂无内容
Stanford GPS/GNSS Matlab Platform
Stanford GPS/GNSS Matlab is an integrated research platform for utilizing numerous positioning databases. It is intended to function as a platform providing universal access to various formats of GPS/GNSS data such as NSTB, NMEA, and RINEX.
Example databases include the NSTB stations that collect GPS information continuously in tens of sites and web-available and open to public.
Downloading an SGMP Overview Presentation and the SGMP ZIP Archive
The sgmp.zip archive contains everything you will need to learn about and use SGMP.
When you double-click on the file icon to uncompress the archive, you will find an SGMPrelease folder containing a few directories, including document. Within the document folder, there are a few helpful files, including quickstart and userguide.
Note: This sgmp.zip archive is preliminary; improved versions will be forthcoming.
Getting Started with SGMP
The best way to start is to use the quickstart guide or to follow the steps below:
Double-click on the sgmp.zip file icon to uncompress the archive. An SGMPRelease foler will appear on your computer's hard drive in the same location as the zip archive file.
gLAB performs precise modeling of GNSS observables (pseudorange and carrier phase) at the centimetre level, allowing both standalone GPS positioning and PPP. Every single error contributor may be assessed independently, which, in turn, provides a major educational benefit. gLAB is adapted to a variety of standard formats like RINEX-3.00, SP3, ANTEX and SINEX files, among others. Moreover, functionality is also included for GPS, Galileo and GLONASS, allowing performing some data analysis with real multi-constellation data.
The gLAB software tool is quite flexible, able to run under Linux, Windows and Mac operating systems and is provided free of charge by ESA Education Office to universities and GNSS professionals.
If you feel it is appropriate, you may consider paying us back by citing the gLAB paper:
Ibáñez D., Rovira-García A., Sanz J., Juan JM., Gonzalez-Casado G., Jimenez-Baños D., López-Echazarreta C., Lapin I. The GNSS Laboratory Tool Suite (gLAB) updates: SBAS, DGNSS and Global Monitoring System. 9th ESA Workshop on Satellite Navigation Technologies (NAVITEC 2018), Noordwijk, The Netherlands. December 5 - 7, 2018. DOI: 10.1109/NAVITEC.2018.8642707.
When papers containing results or illustrations obtained using gLAB are being published.
PPPLib: An open-source software for precise point positioning using GPS, BeiDou, Galileo, GLONASS, and QZSS with multi-frequency observations
by Chao Chen(1,2), Guobin Chang(1,2) 1 NASG Key Laboratory of Land Environment and Disaster Monitoring, China University of Mining and Technology, Xuzhou 221116, China 2 School of Environmental Science and Spatial Informatics, China University of Mining and Technology, Xuzhou 221116, China Abstract: Precise Point Positioning Library (PPPLib) is a multi-GNSS data processing software designed to process multi-frequency data from GPS, BeiDou, Galileo, GLONASS, and QZSS. PPPLib is written in the C/C++ programming language. It can compile and run on both Linux and Windows operating systems. PPPLib mainly performs precise point positioning from single- to triple-frequency based on either ionosphere-free or uncombined observations. Moreover, it solves for abundant parameters including position, tropospheric delay, ionospheric delay, and ambiguity information. Useful scripts and visualization tools are also provided for data download, batch processing, or solution presentation. We give a preliminary review, including positioning accuracy and convergence time of PPP using dual-frequency, ionosphere-free from single-system to multi-GNSS, to show the working status of current version of the software. In addition, the software also supports post-processing kinematic mode and INS/GNSS loosely coupled mode for realtime kinematic positioning. The technical paper that describes this software is in press.
论文描述:Mayer-Gürr, T., Behzadpour, S., Eicker, A., Ellmer, M., Koch, B., Krauss, S., Pock, C., Rieser, D., Strasser, S., Suesser-Rechberger, B., Zehentner, N., Kvas, A. (2020). GROOPS: A software toolkit for gravity field recovery and GNSS processing. Earth and Space Science Open Archive, 8. https://doi.org/10.1002/essoar.10505041.1
论文摘要:The Gravity Recovery Object Oriented Programming System (GROOPS) is a software toolkit written in C++ that enables the user to perform core geodetic tasks. Key features of the software include gravity field recovery from satellite and terrestrial data, the determination of satellite orbits from global navigation satellite system (GNSS) measurements, and the computation of GNSS constellations and ground station networks. Next to raw data processing, GROOPS is capable to operate on time series and spatial data to directly analyze and visualize the computed data sets. Most tasks and algorithms are (optionally) parallelized through the Message Passing Interface, thus the software enables a smooth transition from single-CPU desktop computers to large distributed computing environments for resource intensive tasks. For an easy and intuitive setup of complex workflows, GROOPS contains a graphical user interface to create and edit configuration files. The source code of the software is freely available on GitHub (https://github.com/groops-devs/groops) together with documentation, a cookbook with guided examples, and step-by-step installation instructions.
A configuration file consists of a list of [programs] that are executed in sequential order. Each program comes with its own config options and they work independently without any internal communication between programs. Data flow between programs is realized via files. Anoutputfile of one program can serve as an inputfile for the next program. Most programs are deliberately kept small and focused on a specific task. This modularity combined with the general purpose design of many programs enables the creation of complex workflows with little effort. Including loops and conditions in a config file provides even more flexibility.
Individual programs (and also other optional config elements) can be disabled and are ignored during execution. Mandatory config elements are indicated by a star (*). Empty optional elements are ignored or a meaningful default value is assumed.
The Gravity Recovery Object Oriented Programming System (GROOPS) is a software toolkit written in C++ that enables the user to perform core geodetic tasks. Key features of the software include gravity field recovery from satellite and terrestrial data, the determination of satellite orbits from global navigation satellite system (GNSS) measurements, and the processing of GNSS constellations and ground station networks.
Most tasks and algorithms are (optionally) parallelized through the Message Passing Interface (MPI), thus the software enables a smooth transition from single-CPU desktop computers to large distributed computing environments for resource intensive tasks.
For an easy and intuitive setup of complex workflows, GROOPS contains a graphical user interface where configuration files can be created and edited.
If you use data sets computed with GROOPS in a publication or publish the data itself, please cite our reference paper. A preprint is available on the ESSOAr, which can be cited as:
Mayer-Gürr, T., Behzadpour, S., Eicker, A., Ellmer, M., Koch, B., Krauss, S., Pock, C., Rieser, D., Strasser, S., Suesser-Rechberger, B., Zehentner, N., Kvas, A. (2020). GROOPS: A software toolkit for gravity field recovery and GNSS processing. Earth and Space Science Open Archive, 8. https://doi.org/10.1002/essoar.10505041.1
@article{10.1002/essoar.10505041.1,
author = {Mayer-Gürr, Torsten and Behzadpour, Saniya and Eicker, Annette and Ellmer, Matthias and Koch, Beate and
Krauss, Sandro and Pock, Christian and Rieser, Daniel and Strasser, Sebastian and Suesser-Rechberger, Barbara and
Zehentner, Norbert and Kvas, Andreas},
title = {{GROOPS}: A software toolkit for gravity field recovery and {GNSS} processing},
journal = {Earth and Space Science Open Archive},
pages = {8},
year = {2020},
DOI = {10.1002/essoar.10505041.1}
}
Installation
GROOPS is written in C++ and contains some legacy Fortran code. To enable an intuitive interaction with the software, GROOPS includes a graphical user interface (GUI). The GUI is also written in C++ and depends on the Qt toolkit.
A detailed installation guide for Microsoft Windows and various Linux distributions can be found on the Installation page.
Getting Started
After a successful installation our Documentation is the perfect way to get familiar with the different features of GROOPS.
GROOPS depends on data files such as Earth rotation, Love numbers, and wavelet coefficients. An initial data set that is regularly updated is available on our FTP server. You can choose between downloading the data directory or a single zip file with the same content.
Releases and Contributing
If you encounter a bug, please let us know by filing an issue.
At the moment we do not plan to have a regular release cycle, rather we will release a new version when a new feature has become mature enough, or for critical bug fixes. GROOPS has functionality in place to handle interface changes, however we cannot guarantee backwards compatibility for all config files.
We appreciate all contributions including documentation and examples for the cookbook. If you want to add new functionality to GROOPS, please open an issue and discuss the feature with us.
Please see our Contributing page to learn about how to best contribute to GROOPS.
License
GROOPS is licensed under GPLv3, as found in the LICENSE file. This license applies to all files in the repository unless otherwise indicated.
Information about external source code contained in the repository which is licensed differently can be found in the corresponding README.
Contributors
Parts of GROOPS originate from developments in the Astronomical, Physical and Mathematical Geodesy Group at the University of Bonn, Germany. Since 2010 it is developed and maintained at Graz University of Technology, Austria.