Skip to main content

A collection of tools for gravimeter data analysis

Project description

gravitools

A collection of tools to analyze gravimeter data.

This Python package is a collaborative effort by the gravity metrology group at the German Federal Agency for Carthography and Geoesy (BKG) and the hydrology section at GFZ German Research Centre for Geosciences.

Features

  • Read and process raw data of the Exail Absolute Quantum Gravimeter (AQG)
  • Apply standardized or customized AQG data processing and outlier detection
  • Read and write processed datasets with metadata to .nc-files in NETCDF4-format
  • Handle Earth orientation parameters (EOP) from iers.org for polar motion correction
  • Evaluate tilt calibration measurements
  • Visualize data with matplotlib
  • CLI for standard processing of AQG raw data to .nc-file
  • Dashboard for real-time processing and visualization during measurements (on AQG laptop)
  • Dashboard includes a proposed standard template for a measurement protocol

Planned

  • Handling of Scintrex CG6 data and standard analyses
  • Generation of PDF-report for tilt calibration analyses

Dependencies

Optional

AQG dashboard

Documentation

Unit tests

Installation

For the latest stable release, install from PyPI.org

    $ pip install gravitools

For the latest (development) version, install from Git repository

    $ pip install git+https://gitlab.opencode.de/bkg/gravitools.git

For further install instructions please see the respective section in the documentation.

Getting started with AQG data processing

Example usage:

    from gravitools.aqg import read_aqg_raw_dataset

    # Read raw data to an AQGRawData object (which wraps a pandas.DataFrame)
    raw = read_aqg_raw_dataset("20240620_163341.zip")

    # Apply standard processing
    raw.process()

    # Finalize processing by converting to an AQGDataset (which wraps an
    # xarray.Dataset)
    dataset = raw.to_dataset()

    # Save processed dataset to file in NETCDF-4 format
    dataset.to_nc("20240620_163341.nc")

    # Generate and save a measurement report in PDF format
    dataset.save_report("report_20240620_163341.pdf")

AQG dashboard

The dashboard has to be run on the AQG laptop in order to profit from its full functionality. It has the purpose to provide an alternative, customizable way of viewing and interacting with measurement data, during the process of live measurements. This is especially helpful for updated, on-the-fly outlier detection and plots of parameters as time series (e.g. temperatures, tilts). More information on this, including all offered options, are addressed in the documentation.

Install gravitools with the optional dependencies for the dashboard, preferably in an isolated virtual environment.

    $ pip install gravitools[dashboard]

Run the dashboard

    $ gt-aqg-dash

You can now access the dashboard at http://localhost:8000/.

Documentation

The documenation is available at readthedocs.io.

To build the documentation, clone the repository and install gravitools with the necessary dependencies into a virtual environment.

    $ git clone https://gitlab.opencode.de/bkg/gravitools.git
    $ cd gravitools/
    $ python -m venv venv
    $ source venv/bin/activate
    $ pip install -e .[docs]

Build the documentation

    $ mkdocs build

The documentation can be accessed at public/index.html.

Conventions

Data

  • All corrections are subtracted from the measured gravity value.
  • Units are assumed as follows (if not provided and parameters are passed only as numbers). Input data in other units is converted.
    • Gravity: nm s^-2^
    • Gravity gradient: nm s^-2^ m^-1^
    • Heights: m
    • Tilt angle: rad
    • Polar angles: arcsec
    • Coordinates: degree
    • Orientation of sensor: degree from North
  • Timestamps are always UTC.

Terminology

Point : A precisely defined measurement location, usually identified by a point code. For example, the gravimeter lab at the Geodetic Observatory Wettzell has points WET_CA, WET_DA, WET_EA, and WET_FA. The vertical gravity gradient is a property of each point. An Earth tide model can apply to multiple points.

site_name : The AQG control software has an input field for the measurement site name. It is recored in the metadata (.info file) as measurement_site_name. Here, this parameter name is shortened to site_name and its value kept unchanged. Since this field can contain supplementary metadata, such as sensor orientation, it is not necessarily identical to the point code. When reading a dataset, Gravitools attempts to guess the point code and sensor orientation from the site_name by a formatting pattern.

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

gravitools-0.2.0.tar.gz (70.8 kB view details)

Uploaded Source

Built Distribution

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

gravitools-0.2.0-py3-none-any.whl (66.2 kB view details)

Uploaded Python 3

File details

Details for the file gravitools-0.2.0.tar.gz.

File metadata

  • Download URL: gravitools-0.2.0.tar.gz
  • Upload date:
  • Size: 70.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for gravitools-0.2.0.tar.gz
Algorithm Hash digest
SHA256 5a502256bd4fbc1f7274f28760fc3688a60680856f9bcc341916835285db0233
MD5 8f09b74b737e95af4d998b5fe18b7778
BLAKE2b-256 90bfcde6ab14ce8b1593e55fa21674a40fff8293683bdf2810a6db272e30c786

See more details on using hashes here.

File details

Details for the file gravitools-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: gravitools-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 66.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for gravitools-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 99d61c921300f58b819129a006b09f02bd26e508a1d7916beed7ba5f2b9fda03
MD5 f4dbc1081244c42cac12f6802ce51601
BLAKE2b-256 181f7c5204259d35093a429ff3d93f3aeb75034dfeb2be43183f991ba959c55f

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