Skip to content

Commit

Permalink
Weekly snapshot
Browse files Browse the repository at this point in the history
  • Loading branch information
ginan-release-bot committed Feb 2, 2024
1 parent cb4efcf commit 3067481
Show file tree
Hide file tree
Showing 50 changed files with 824 additions and 982 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ name: Documentation
# events but only for the master branch
on:
push:
branches: [ main ]
branches: [ develop-weekly ]

jobs:
build-documentation:
Expand All @@ -16,8 +16,7 @@ jobs:

- name: Create folders
run: |
rm Docs/markdown/readme.md
cp README.md Docs/markdown/readme.md
cp README.md Docs/readme.md
mkdir -p src/build
# Build the HTML documentation
Expand All @@ -26,6 +25,14 @@ jobs:
with:
doxyfile-path: ../doc_templates/Doxyfile.in
working-directory: ./src/build

- name: Generate config docs
run: |
cd src/build
cmake ../
make docs
cd ../../
rm -rf src/build
# Deploy the HTML documentation to GitHub Pages
- name: GH Pages Deployment
Expand All @@ -36,4 +43,4 @@ jobs:
enable_jekyll: false
allow_empty_commit: false
force_orphan: true
publish_branch: gh-pages
publish_branch: gh-pages-staging
16 changes: 14 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ cmake_policy(SET CMP0063 NEW)

project(ginan)

include(CheckPIESupported)
check_pie_supported()

set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/../../lib")
set (CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/../../lib")
set (CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/../../bin")
Expand Down Expand Up @@ -51,6 +54,15 @@ else ()
option(ENABLE_OPTIMISATION "ENABLE_OPTIMISATION" ON)
endif ()

find_program(CCACHE_FOUND ccache)
if(CCACHE_FOUND)
message(STATUS "Setting ccache on")
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) # Less useful to do it for linking, see edit2
else()
message(STATUS "Setting ccache off")
endif(CCACHE_FOUND)


if(ENABLE_OPTIMISATION)
message(STATUS "Setting optimisation on")
Expand Down Expand Up @@ -132,7 +144,7 @@ find_package(OpenSSL REQUIRED)

#set(Boost_NO_SYSTEM_PATHS ON)
set(Boost_USE_STATIC_LIBS ON)
find_package(Boost 1.73.0 REQUIRED COMPONENTS log log_setup date_time system thread program_options serialization timer)
find_package(Boost 1.73.0 REQUIRED COMPONENTS log log_setup date_time system thread program_options serialization timer stacktrace_addr2line stacktrace_backtrace)

find_package(Eigen3 3.3.0)
include_directories(${EIGEN3_INCLUDE_DIRS})
Expand Down Expand Up @@ -271,4 +283,4 @@ macro(print_all_variables)
message(STATUS "print_all_variables------------------------------------------}")
endmacro()

print_all_variables()
# print_all_variables()
15 changes: 8 additions & 7 deletions Docs/announcements.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@

> **5 Jul 2023** - the Ginan team is pleased to release v2.1 of the toolkit.
>
> **5 Feb 2024** - the Ginan team is pleased to release v3.0.0 of the toolkit.
>
> The improvements delivered by this version include:
>
>
> * Unified User and Network operation modes (One Observation Model & Filter),
> * Box-wing solar radiation modelling
> * Increased configurability and streamlining of configuration files
> * Grid-based model estimation
> * Full Multi-Constellation capability,
> * Better internal frequency indexing (complete multi-frequency capability),
> * UnCombined / UnDifferenced (UDUC) processing (v1.5.3 is Ionosphere-free only),
> * UnCombined / UnDifferenced (UDUC) processing
> * Integrated and coupled Precise Orbit Determination capability (POD),
> * More robust data handling in the filter for cycle slip and outlier detection and removal,
> * Complete RTCM3 phase 1 and Phase 2 message decoding and encoding,
> * Satellite Laser Ranging data handling fully implemented,
> * Performance improvements,
> * Numerous bug fixes.
> **11 May 2023** - Dr Simon McClusky's [presentation](resources/Locate23_S_McClusky_final.pdf) on Ginan from Locate 23.
> * Many bug fixes.
4 changes: 2 additions & 2 deletions Docs/ginanConfiguration.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ For options that include a list of files, e.g. `snx_files`, entries from differe
## Wildcard Tags
Output filenames can include wildcards wrapped in `< >` brackets to allow more generic names to be used. While processing, these tags are replaced with details gathered from processing, and allows for automatic generation of, for example, hourly output files.

#### `<CONFIG>`, `<AGENCY>, `<SOFTWARE>`
#### `<CONFIG>`, `<AGENCY>`, `<SOFTWARE>`
These are replaced with the `config_description`, `analysis_agency` and `analysis_software` values entered in the yaml file or at the command line
#### `<USER>`, `<PASS>`
These are replaced with the username and password passed at the command line
Expand Down Expand Up @@ -108,7 +108,7 @@ There are two types of trace file, receiver trace files which can be enable usin

Details about the computation of estimated ranges and other preprocessing are listed in the receiver trace files, while the details of the combination of those parameters in the kalman filter are recorded in the network trace file.

The primary filtered output of the pea can be seen in detail in the network trace's STATES blocks.
The primary filtered output of the pea can be seen in detail in the network trace's `STATES` blocks, with the details of filter input data and residuals in the `RESIDUALS` blocks.

The user can enable certain types of data included to be included in trace files.
The `output_residuals` option will enable the output of pre-fit and post-fit residual into the network trace file.
Expand Down
9 changes: 6 additions & 3 deletions Docs/ginanEDA.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Refer to the the MongoDB setup instructions in the `readme` *MongoDB (PEA, optio

## Configuring Ginan

To use the GinanEDA, Ginan needs to be configured to output some information into the MongoDB.
To use the GinanEDA, Ginan needs to be configured to output some information into the MongoDB.

This is done by configuring the `mongo:` section in the Ginan YAML configuration file

Expand Down Expand Up @@ -63,9 +63,9 @@ In the column to the left are the options for loading data from the MongoDB and

#### Connect

The Connect tab brings up the connection page that enables you to select the database from MongoDB that you want to explore.
The Connect tab brings up the connection page that enables you to select the database from MongoDB that you want to explore.

Click on the `Connect to DB` and then the `Select databases` tabs to see a list of the databases names available for exploration.
Click on the `Connect to DB` and then the `Select databases` tabs to see a list of the databases names available for exploration.

Click on the database you wish to load for visualisation and then click `Load DB`

Expand All @@ -91,3 +91,6 @@ The `Position Analysis` tab brings up the page that enables you to analyse the q

The Config tab brings up a page that renders the Ginan input configuration file that was used in the processing.

#### Advanced

An unlinked `/advanced` tab is available to create plots with varying degrees of complexity. It requires mongo trace outputs to be enabled, and may require some understanding of mongo request structure to operate effectively.
Binary file added Docs/images/AIMSThumb.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Docs/images/IonosphereFrontPage101X69.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Docs/images/McClusky202301FrontPage101X57.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Docs/images/TamDaoIonoPaperFrontPage101X57.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 4 additions & 2 deletions Docs/page.html
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
<script src="https://cdn.rawgit.com/afeld/bootstrap-toc/v0.3.0/dist/bootstrap-toc.min.js"></script>
<script src="scripts/marked.js"></script>
<script src="https://use.fontawesome.com/30c21ac8e0.js"></script>


<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" integrity="sha384-eOJMYsd53ii+scO/bJGFsiCZc+5NDVN2yr8+0RDqr0Ql0h+rP48ckxlpbzKgwra6" crossorigin="anonymous">
Expand Down Expand Up @@ -60,7 +61,7 @@
<body>
<a name="top">
<div class="container">

<nav class="navbar sticky-top navbar-expand-lg navbar-light bg-light rounded mx-3 ">
<a class="navbar-brand" href="page.html"><img src="images/GinanLogo60.png" width="60" height="60">Ginan</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#Ginan_navbar" aria-controls="Ginan_navbar" aria-expanded="false" aria-label="Toggle navigation">
Expand All @@ -78,6 +79,7 @@
<a class="dropdown-item" href="page.html?p=ga.md">Geoscience Australia</a>
<a class="dropdown-item" href="page.html?p=positioningProgram.md">Positioning Program</a>
<a class="dropdown-item" href="page.html?p=aboutGinan.md">Ginan</a>
<a class="dropdown-item" href="page.html?p=ginanFAQ.html">FAQ</a>
</div>
</li>
<li class="nav-item dropdown">
Expand All @@ -103,7 +105,7 @@
</div>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="https://github.com/GeoscienceAustralia/ginan" id="codeDropdown" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Source code</a>
<a class="nav-link dropdown-toggle" href="https://github.com/GeoscienceAustralia/ginan" id="codeDropdown" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Source code</a>
<div class="dropdown-menu" aria-labelledby="codeDropdown">
<a class="dropdown-item" href="https://github.com/GeoscienceAustralia/ginan" target="_blank">Github Repository</a>
<a class="dropdown-item" href="page.html?c=on&p=codingStandard.md">Coding Standard</a>
Expand Down
4 changes: 3 additions & 1 deletion Docs/resources.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@

# Resources - documents and presentations

![A library of information](images/LibraryBooksStrip.png)
Expand All @@ -17,6 +17,8 @@

## Ginan user stories

> [![](images/AIMSThumb.png) A demonstration showing Ginan on air and sea drones at AIMS Reefworks. August 2023.](resources/GinanAIMSCaseStudy.pdf)
> [![](images/Locate23_S_McClusky_frontpage101X57.jpg) Open-source Precise Point Positioning (PPP) with Ginan v2 - Simon McClusky, from Locate 23, 11 May 2023.](resources/Locate23_S_McClusky_final.pdf)
> [![](images/McClusky202301FrontPage101X57.jpg) Australian perspectives on the use of GNSS for tsunami warning - Simon McClusky, Adrienne Moseley, Phil Cummins, Shin-Chan Han, John Dawson, from February 2023.](resources/TourDelIGS5_04_McClusky.pdf)
Expand Down
Binary file added Docs/resources/GinanAIMSCaseStudy.pdf
Binary file not shown.
1 change: 0 additions & 1 deletion Docs/usingThePea.md
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,6 @@ In addition to trace files, the `pea` is capable of outputting most of the file-
* YAML files
* GPX files - an XML format for interchange of GPS data (waypoints, routes, and tracks) used by Google Earth among other software. (https://www.topografix.com/GPX/1/1/)
* JSON files
* Ginan PPP_OUT files

### Station Trace files

Expand Down
70 changes: 45 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# Ginan: Software toolkit and service

#### `Ginan v2.1.0`
#### `Ginan v3.0.0`

## Overview

Expand Down Expand Up @@ -35,11 +35,27 @@ The software consists of three main components:
* Precise Orbit Determination (POD), and
* Various scripts for combination and analysis of solutions

## Using Ginan with an AppImage

You can quickly download a precompiled binary of Ginan's pea from the `develop-weekly-appimage` branch of github.

git clone -b develop-weekly-appimage --depth 1 --single-branch https://github.com/GeoscienceAustralia/ginan.git

This contains no python scripts or example data, but is possible to run immediately on linux and windows systems as simply as:

ginan/Ginan-x86_64.AppImage

or on windows:

wsl --install -d ubuntu
ginan/Ginan-x86_64.AppImage


## Using Ginan with Docker

You can quickly download a ready-to-run Ginan environment using docker by running:

docker run -it -v ${host_data_folder}:/data gnssanalysis/ginan:v2.1.0 bash
docker run -it -v ${host_data_folder}:/data gnssanalysis/ginan:v3.0.0 bash

This command connects the `${host_data_folder}` directory on the host (your pc), with the `/data` directory in the container, to allow file access between the two systems, and opens a command line (`bash`) for executing commands.

Expand Down Expand Up @@ -105,7 +121,7 @@ To build every package simply run `make` or `make -jX` , where X is a number of
make -j2
```

Alternatively, to build only a specific package (`pea`, `pod`, `make_otl_blq`, `interpolate_loading`), run as below:
Alternatively, to build only a specific package (`pea`, `make_otl_blq`, `interpolate_loading`), run as below:

```bash
make pea -j2
Expand All @@ -123,7 +139,7 @@ cd ../../exampleConfigs

and you should see something similar to:
```
PEA starting... (main ginan-v2.1.0 from Fri Jun 30 15:15:22 2023)
PEA starting... (main ginan-v3.0.0 from Mon Feb 05 15:15:22 2024)
Options:
-h [ --help ] Help
Expand All @@ -141,40 +157,44 @@ PEA finished
```


Then download all of the example data using the python script provided. From the Ginan git root directory:
Then download all of the example data using the scripts and filelists provided. From the Ginan git root directory:

```bash
python3 scripts/s3_filehandler.py -d -p
cd inputData/data
./getData.sh
cd ../products
./getProducts.sh
```

### Directory Structure

Upon installation, the `ginan` directory should have the following structure:

ginan/
├── README.md ! General README information
├── LICENSE.md ! Software License information
├── ChangeLOG.md ! Release Change history
├── aws/ ! Amazon Web Services config
├── bin/ ! Binary executables directory*
├── Docs/ ! Documentation directory
├── inputData/ ! Input data for examples **
│ ├── data/ ! Example dataset (rinex files)**
│ └── products/ ! Example products and aux files**
├── exampleConfigs ! Example configuration files
│ └── Ex20x.yaml !
├── lib/ ! Compiled object library directory*
├── scripts/ ! Auxiliary Python and Shell scripts and libraries
└── src/ ! Source code directory
├── cpp/ ! Ginan source code
├── README.md ! General README information
├── LICENSE.md ! Software License information
├── ChangeLOG.md ! Release Change history
├── aws/ ! Amazon Web Services config
├── bin/ ! Binary executables directory*
├── Docs/ ! Documentation directory
├── inputData/ ! Input data for examples
│ ├── data/ ! Example dataset (rinex files)**
│ └── products/ ! Example products and aux files**
├── exampleConfigs ! Example configuration files
│ ├── ppp_example.yaml ! Basic user-mode example
│ └── pod_example.yaml ! Basic network-mode example
├── lib/ ! Compiled object library directory*
├── scripts/ ! Auxiliary Python and Shell scripts and libraries
└── src/ ! Source code directory
├── cpp/ ! Ginan source code
├── cmake/
├── doc_templates/
├── build/ ! Cmake build directory*
├── build/ ! Cmake build directory*
└── CMakeLists.txt

*\*created during installation process*

*\*\*created by `s3_filehandler.py` script*
*\*\* contents retrieved with getData.sh, getProducts.sh scripts*


## Documentation
Expand Down Expand Up @@ -217,10 +237,10 @@ To run the first example of the PEA:
```bash
cd ../exampleConfigs

../bin/pea --config ex201.yaml
../bin/pea --config ppp_example.yaml
```

This should create `outputs/ex201` directory with various `*.trace` files, which contain details about stations processing, a `Network*.trace` file, which contains the results of Kalman filtering, and other auxiliary output files as configured in the yamls.
This should create `outputs/ppp_example` directory with various `*.trace` files, which contain details about stations processing, a `Network*.trace` file, which contains the results of Kalman filtering, and other auxiliary output files as configured in the yamls.

You can remove the need for path specification to the executable by using the symlink within `exampleConfigs`, or by adding Ginan's bin directory to `~/.bashrc` file:
```
Expand Down
Loading

0 comments on commit 3067481

Please sign in to comment.