Skip to content

Deltares-research/geost

GeoST - Geological Subsurface Toolbox

PyPI - Python Version PyPI version Conda-forge version License: LGPLv3 Build: status codecov Formatting: ruff

The Geological Subsurface Toolbox (GeoST) package is designed to be an easy-to-use Python interface for working with subsurface point data in The Netherlands (boreholes, well logs and CPT's). It provides selection, analysis and export methods that can be applied generically to the loaded data.

The internal Collection object and GeoST accessor rely on Pandas for storing data and header information and. For spatial functions Geopandas is used. The package also supports reading/writing parquet and geoparquet files through Pandas and Geopandas respectively.

GeoST is a work-in-progress and aims to support an increasing number of data sources.

Installation (user)

GeoST is distributed via the Python package index (PyPi) and Conda-forge. In a Python >= 3.12 environment, install the latest stable release in your environment with either pip, Pixi or Conda:

pip install geost
pixi add geost

When using Conda, make sure to specify the conda-forge channel:

conda install -c conda-forge geost

Or when using miniforge, which uses the conda-forge channel by default:

conda install geost

Installation (developer)

GeoST uses Pixi for package management and workflows.

With pixi installed, navigate to the folder of the cloned repository and run the following to install all GeoST dependencies and the package itself in editable mode:

pixi install

See the Pixi documentation for more information. Next open the Pixi shell by running:

pixi shell

Finally install the pre-commit hooks that enable automatic checks upon committing changes:

pre-commit install

Documentation

All documentation can be found on our GitHub pages

Examples

For an overview of examples, go directly to the examples page on our documentation.

We collect additional examples that make use of GeoST and other Subsurface Toolbox developments in the Deltares sst-examples repository.

Contributing

You can contribute by testing, raising issues and making pull requests. Some general guidelines:

  • Use new branches in your fork for developing new features or bugfixes. Use prefixes such as feature/ bugfix/ experimental/ to indicate the type of branch
  • Add unit tests (and test data) for new methods and functions using pytest.
  • Add Numpy-style docstrings
  • Use pre-commit (see installation for developers on this page)

About

GeoST is a Python interface for subsurface data

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Contributors

Languages