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
- Geological profiles - Valnerina
- Geological profiles with animation- Timpa San Lorenzo
- Profile with attitudes - Monte Alpi
- Seismological profiles - Colfiorito
Meta
Mauro Alberti – alberti.m65@gmail.com
Distributed under the MIT license. See LICENSE for more information.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file geogst-1.0.0.tar.gz.
File metadata
- Download URL: geogst-1.0.0.tar.gz
- Upload date:
- Size: 167.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/8.4.0 keyring/24.3.1 pkginfo/1.11.1 readme-renderer/34.0 requests-toolbelt/1.0.0 requests/2.32.3 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
39b32375f1ae771eb746d6104cb9cda531e18234d43c09aeef5e8aae9af54eb6
|
|
| MD5 |
c67d446b8df15731bc633c1b2db6a911
|
|
| BLAKE2b-256 |
637f035e0bcaa31b884ca834755565445c2bbc508ff23f16314ff92d75857683
|
File details
Details for the file geogst-1.0.0-py3-none-any.whl.
File metadata
- Download URL: geogst-1.0.0-py3-none-any.whl
- Upload date:
- Size: 192.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/8.4.0 keyring/24.3.1 pkginfo/1.11.1 readme-renderer/34.0 requests-toolbelt/1.0.0 requests/2.32.3 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
54c7d61f38ad428fe4edfa30f83dbb6ef6aea2adff88e4d3e38c88ed6c968cdf
|
|
| MD5 |
c1d5b42c0a768ad564bf0e705ad5cd63
|
|
| BLAKE2b-256 |
ddfa58f5b013cf39ccc680541cdad3bd52bb4d11e021dacbf8c7a2e84d1a5ea1
|