Ginan
Loading...
Searching...
No Matches
Ginan.cpp File Reference

High level operational flows for Ginan__() More...

Detailed Description

High level operational flows for Ginan__()

Functions

FileType JSON__ ()
 
FileType IGS_Files__ ()
 
Architecture State_Propagation__ ()
 
Architecture Error_Handling__ ()
 
Library Eigen__ ()
 Linear algebra library.
 
Library Boost__ ()
 C++ Extensions.
 
Library Yaml_Cpp__ ()
 YAML file-format parser.
 
Library Sofa__ ()
 Analytic reference frame and timing routines.
 
Library JPL_Planetary_Ephemerides__ ()
 
Library MongoCxx__ ()
 C++ MongoDB API.
 
Library Doxygen__ ()
 Automated source code documentation generator.
 
Library RTKLib__ ()
 GNSS processing toolkit.
 
Library IERS2010__ ()
 
Architecture Libraries__ ()
 3rd-party libraries extend functionality.
 
Architecture Augmentation__ ()
 
Architecture Pea__ ()
 Ginan's main processing executable.
 
Architecture Ginan_EDA__ ()
 Exploratory Data Analysis tool.
 
Architecture Auto_Download__ ()
 Download files required by processing.
 
Architecture Python_Scripts__ ()
 Utility scripts and visualisations.
 
Architecture Ginan__ ()
 Ginan is a toolkit for processing GNSS measurements to produce precise positioning products.
 

Function Documentation

◆ Augmentation__()

Architecture Augmentation__ ( )
Here is the call graph for this function:

◆ Auto_Download__()

Architecture Auto_Download__ ( )

Download files required by processing.

The utility allows the user to specify a date range and data of interest which will be downloaded from CDDIS, GA archives, and other sources.

Here is the caller graph for this function:

◆ Boost__()

Library Boost__ ( )

C++ Extensions.

Boost is a de-facto standard library that includes extensions for the C++ STL.

Ginan uses boost modules including

  • Logging : Extensible logging with severity
  • Runge Kutta : Differential equation propagators
  • Binary Archive : Automatic binary storage/retrieval of complex variables and containers
  • ASIO : TCP/IP networking
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Doxygen__()

Library Doxygen__ ( )

Automated source code documentation generator.

In addition to generating documentation from source code, it is used to produce architectural flow-charts of high-level software features.

Here is the caller graph for this function:

◆ Eigen__()

Library Eigen__ ( )

Linear algebra library.

A de-facto standard that provides scientific-familiar notation for linear algebra calculations. Eigen automatically performs calculations over multiple processor cores when possible, vastly increasing comutation throughput. It supports both dense and sparse matrices, slicing of subsets of matrices, and various decomposition and inversion methods - all of which are used extensively throughout Ginan.

Here is the caller graph for this function:

◆ Error_Handling__()

Architecture Error_Handling__ ( )
Here is the caller graph for this function:

◆ Ginan__()

Architecture Ginan__ ( )

Ginan is a toolkit for processing GNSS measurements to produce precise positioning products.

As a system it comprises a C++ executable known as the Pea, with additional scripts and databases used for visualisation and post-processing data.

Here is the call graph for this function:

◆ Ginan_EDA__()

Architecture Ginan_EDA__ ( )

Exploratory Data Analysis tool.

Allows the user to retrieve information from a mongo database for plotting. The tool runs in a web-browser and allows for plotting of states, measurements and their residuals, and various time-series comparisons. The datasets may be truncated to eliminate periods of unconverged data, and have polynomial trends calculated and removed.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IERS2010__()

Library IERS2010__ ( )
Here is the caller graph for this function:

◆ IGS_Files__()

FileType IGS_Files__ ( )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ JPL_Planetary_Ephemerides__()

Library JPL_Planetary_Ephemerides__ ( )
Here is the caller graph for this function:

◆ JSON__()

FileType JSON__ ( )
Here is the caller graph for this function:

◆ Libraries__()

Architecture Libraries__ ( )

3rd-party libraries extend functionality.

Open source de-facto industry standard libraries are used to ensure long-term support into the future. They provide functionality which is outside the scope of the Ginan project.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MongoCxx__()

Library MongoCxx__ ( )

C++ MongoDB API.

Here is the caller graph for this function:

◆ Pea__()

Architecture Pea__ ( )

Ginan's main processing executable.

Written in C++, the Pea is a highly-configurable, application-specific, robust, kalman filter. It

  • allows for vast configuration using the YAML configuration files,
  • contains parsers for nearly all file-formats used in GNSS positioning,
  • contains models and estimators for all major phyical phenomena affecting satellites, receivers, and the atmosphere between them,
  • has an extended-kalman-filter, with automatic bookkeeping, for estimation of parameters of interest,
  • can detect mismodelled states and measurements, and respond robustly to errors after attributing their source,
  • is capable of smoothing results using optimal sets of stored available data, and
  • can output nearly every applicable file format, making it a complete solution to GNSS processing.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Python_Scripts__()

Architecture Python_Scripts__ ( )

Utility scripts and visualisations.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RTKLib__()

Library RTKLib__ ( )

GNSS processing toolkit.

Ginan was once based heavily on the RTKLib library, but has been converted to c++, and modified heavily to be object-oriented and suit the processing schemes used in Ginan.

Here is the caller graph for this function:

◆ Sofa__()

Library Sofa__ ( )

Analytic reference frame and timing routines.

Here is the caller graph for this function:

◆ State_Propagation__()

Architecture State_Propagation__ ( )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Yaml_Cpp__()

Library Yaml_Cpp__ ( )

YAML file-format parser.

The Pea makes great use of the heirarchical structure provided by YAML configuration files. This library agnostically parses files, ensuring compatibility with the YAML standard, and provides structured output for the Peas configuration functions to traverse.

Here is the caller graph for this function: