Skip to main content

geogst is a structural geology module

Project description

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:

python3 setup.py 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.orientations.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

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

geogst-2.0.0.tar.gz (54.8 MB view details)

Uploaded Source

Built Distribution

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

geogst-2.0.0-py3-none-any.whl (54.8 MB view details)

Uploaded Python 3

File details

Details for the file geogst-2.0.0.tar.gz.

File metadata

  • Download URL: geogst-2.0.0.tar.gz
  • Upload date:
  • Size: 54.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for geogst-2.0.0.tar.gz
Algorithm Hash digest
SHA256 c7adb1abb215f8ca1d63299a20529dde49722dd77824c21a4287ac45fe92041e
MD5 6130a0677ccb8aa917f62d1b50ada4f6
BLAKE2b-256 122cb1053e7671e0bdb5d5b92c6490eb960f44568a2c62e59f6d9df5b0d1558b

See more details on using hashes here.

File details

Details for the file geogst-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: geogst-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 54.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for geogst-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7f82d7a83edcad4fd0b9851e0b493a2949f1192299e4313a9d2ffbc407f35527
MD5 9f27780bba7ca2d261c33794888411fc
BLAKE2b-256 407396e7e90feef3e975c2686d0fb9aa8e90953eb2e8e2d5de9b0d4a28413a31

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