Skip to main content

geogst

Structural geology tools with Python.

geogst is a Python 3 module library for structural geology geodata processing.

It allows to perform geological operations, such as determining the intersections between a geological plane and a topographic surface, creating multiple parallel geological profiles with attitudes, geological outcrop and line intersections.

Plane-DEM intersections

Geological profiles

Moreover, it allows to perform geometric operations on orientation data (planes, axes) and to plot the attitudes of geological plane and axes in stereonets.

Installation

You should have python-setuptools already installed, otherwise you can install it via apt or pip3, e.g.:

Linux:

sudo apt-get install python-setuptools

To install geogst, from the shell (you should be in the geogst directory) you can run:

pip install .

You can then check if the module was successfully installed in Python3 by importing the module via:

import geogst

Usage example

Orientations

Orientations can refer to linear or planar features. When referring to linear orientations, we subdivide them into directional, with a defined direction, or axial, without direction. We import all classes/methods from the orientations sub-module:

from geogst.core.geology.orientations import *

A Direct is equivalent to a unit vector in the 3D space, with orientation expressed by polar coordinates: a direction defined by a trend (from the North, 0°-360°) and a plunge (-90° to 90°, where positive values are downward-directed while negative ones are upward-directed):

or1 = Direct(130, 10)  # orientation defined by its trend and plunge. Pointing downward, since positive plunge.
or2 = Direct(312, -45)  # or2 points upwards, since it has a negative plunge
or3 = Direct(300, -20)  # as or2

We can plot using the plot function. The data to plot have to be inserted into a list.

plot([or1, or2, or3]) # we provide the function arguments in a list

P-T focal mechanisms

Creation of a P-T axes instance from a FaultSlick instance:

ptbx_from_fltsl = PTBAxes.from_fault_slickenline(Fault(90, 45, slickenlines=[Slickenline(90, 45)]))
print(ptbx_from_fltsl)

PTBAxes(P Axis(az: 180.00°, pl: 90.00°), T Axis(az: 90.00°, pl: 0.00°))

For tutorials, please refer to the Jupyter Notebooks in the doc/tutorials folder:

Geometries

Intersections

Orientations

Profiles

Meta

Mauro Alberti – alberti.m65@gmail.com

Distributed under the MIT license. See LICENSE for more information.

https://gitlab.com/mauroalberti/geogst

Metadata

Release files for geogst 2.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for geogst 2.3.1
File Size Uploaded Provenance
geogst-2.3.1.tar.gz 50.7 MB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for geogst 2.3.1
File Interpreter ABI Platform
geogst-2.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 81.9 MB

Release files / geogst-2.3.1.tar.gz

Download URL geogst-2.3.1.tar.gz
Size 50.7 MB
Tags Source
SHA-256 checksum
How to use checksums
023f0854073c63af20e0218a0941f36664840eff64260abbc535a13165ef50c2
BLAKE2b-256 checksum
How to use checksums
ac8c1883b83d95ebe23e62ce06fac954f4de75bac6e131b33900d38e36cca837
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / geogst-2.3.1-py3-none-any.whl

Download URL geogst-2.3.1-py3-none-any.whl
Size 31.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
162950b16038416d5ecef1bd4bbe634f43184e1f8a26adbf5f038ec3cf62fe50
BLAKE2b-256 checksum
How to use checksums
7b277f5b99e1f8e9e09c595576395038d3adc2643d9198f218c7cb3ff8328811
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.12.14

Security for geogst 2.3.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page