Metadata-Version: 2.4
Name: gsolve
Version: 5.6.0
Summary: A Python package for processing gravity survey data.
Author: Adrian Benson, Allison Kirkby, Craig Miller, Aleksandr Spesivtsev, Vaughan Stagpoole
License-Expression: GPL-3.0-or-later
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Dist: boule==0.5.*
Requires-Dist: harmonica<0.8
Requires-Dist: pandas[excel,plot]<3
Requires-Dist: pygtide>=0.8.2
Requires-Dist: pyhardisp>=0.2.1
Requires-Dist: rioxarray>=0.22.0
Requires-Dist: tqdm>=4.67.3
Requires-Dist: xarray>2025.12
Requires-Dist: pytest>=9.0.3 ; extra == 'dev'
Requires-Dist: pytest-cov>=7.1.0 ; extra == 'dev'
Requires-Dist: pytest-datadir>=1.8.0 ; extra == 'dev'
Requires-Dist: ruff ; extra == 'dev'
Requires-Python: >=3.12
Project-URL: Repository, https://git.gns.cri.nz/gravity-processing/gsolve.git
Provides-Extra: dev
Description-Content-Type: text/markdown

![gSolve logo](docs/source/_static/gsolve_logo.png)
    
[![codecov](https://codecov.io/gh/GNS-Science/gsolve/branch/main/graph/badge.svg)](https://codecov.io/gh/GNS-Science/gsolve)
![GitHub License](https://img.shields.io/github/license/GNS-Science/gsolve)
[![Publish to PyPI](https://github.com/GNS-Science/gsolve/actions/workflows/publish.yml/badge.svg)](https://github.com/GNS-Science/gsolve/actions/workflows/publish.yml)


# gSolve

gSolve, a Python computer library by Earth Sciences New Zealand (formerly GNS Science) to transform relative gravity survey measurements to absolute gravity values and gravity anomalies and disturbances.  

It is suitable for time varying gravity as well as Bouguer gravity.  

This version is a substantial re-write of the previous python version to remove the limitation of a graphical user interface and to update to python 3 with modern software management.

## Functionality

Process gravity data for time change microgravity and Bouguer surveys.

## Data Import

* Several input formats including manually read LaCoste and Romberg meters, Nomad upgraded L and R meters and the Scintrex CG6 meter instrument file.

## Algorithm

* calculate the meter calibration correction, beta.
* corrects for earth tide using Longman and ETERNA formula.
* option to correct for ocean loading using pyhardisp
* correct for drift across loops or whole survey.
* network adjustment with three different network adjustment algorithms depending on user requirements.
* residuals can be filtered using a percentile cut filter.  

## Corrections

* calculate normal gravity.
* calculate terrain corrections.
* calculate free air, simple and complete bouguer anomalies.

## Plotting

* plot raw observations
* residual cumuluative probability density functions, CDF.
* drift curve
* network map

## Data export

* export to csv or excel with comprehensive metadata
* save plot files

# Installation

pip install gsolve

# Usage

Example scripts are provided to demonstrate the software capability.

# Support

Full documentation is available here. [gSolve](https://silver-spork-5vqw3le.pages.github.io/fundamentals.html)

# Authors and acknowledgment

gSolve builds on many previous authors.  

The current author team is Adrian Benson, Alison Kirkby, Craig Miller, Aleksandr Spesivtsev, Vaughan Stagpoole.

This version supersedes previous Gsolve versions e.g.
McCubbine, J., Tontini, F. C., Stagpoole, V., Smith, E., & O’Brien, G. (2018). Gsolve, a Python computer program with a graphical user interface to transform relative gravity survey measurements to absolute gravity values and gravity anomalies. SoftwareX, 7, 129–137. 

# How to cite gSolve  

Link to JOSS paper here when it is ready.

# System requirements

Python 3.12+

# License

Licenced with GPLv3.
