Awesome
Awesome Open Geoscience
Geoscience is awesome.
Open geoscience is even more awesome, so we made a list. This list is curated from repositories that make our lives as geoscientists, hackers and data wranglers easier or just more awesome. In accordance with the awesome manifesto, we add awesome repositories. We are open to contributions of course, this is a community effort after all.
If you are interested in being a maintainer of this repository, leave the maintainer role file.
Contents
Related Awesome
- Awesome-Spatial – Awesome list for geospatial, not specific to geoscience but significant overlap.
- Awesome GIS - Awesome list related to all things Geographic Information Systems (GIS).
- Awesome Open Climate Science – Awesome list for atmospheric, ocean, climate, and hydrologic science.
- Awesome Coastal – Awesome list for coastal engineers and scientists.
- Awesome Earth Artificial Intelligence – Awesome list for artificial intelligence use cases in Earth Science maintinaed by ESIP (<a href="https://wiki.esipfed.org/Main_Page">Earth Science Information Partners</a>, which is a earth science informatics community) Machine Learning Cluster.
- Awesome Historic(al) Maps - Awesome list of resources, databases and tools related to Historic Maps.
- Awesome Open Hydrology - Awesome list of resources and tools related to hydrology
Open Books
Software
Awesome software projects sub-categorized by focus.
Seismic and Seismology
- Auralib – / Python package to support investigation of geoscience problems including geophysics, rock physics, petrophysics, and data read/write in common formats.
- Bruges – Various geophysical equations and tools.
- Madagascar – Multi-dimensional data processing suite.
- MDIO – Open source chunked and compressed cloud storage for seismic data based on Zarr with fast seismic ingestion and export tools – Docs, Source.
- ObsPy – Framework for reading, writing and processing seismic and seismological data.
- OpendTect-Plugins – open source plugins for the OpendTect seismic interpretation platform. See the docs for more information.
- OpenSeaSeis – Seismic workflow generator and seismic viewer.
- Pastas – Open-source Python framework for the analysis of groundwater time series.
- Pyrocko – Seismology toolkit.
- pyVDS – Convenience wrapper around Bluware's OpenVDS+ Python bindings which enables reading of VDS files with a syntax familiar to users of segyio.
- pyZGY – Convenience wrapper around Schlumberger's OpenZGY Python package which enables reading of ZGY files with a syntax familiar to users of segyio.
- RedPy – Auto-clustering for seismic events.
- rsudp – Continuous ObsPy-based visual display, sudden motion monitoring, and historical replay of Raspberry Shake data.
- Segyio – / Fast library for seismic SEGY files.
- SeisComp – Seismic observatory automation toolkit. Autodetection, storage, sharing, processing data and more.
- Seismic Un*x – Seismic data processing suite.
- SeismicZFP – Convert SEG-Y/ZGY files to compressed SGZ files & retrieve arbitrary sub-volumes from these, fast.
- synthoseis – Synthoseis is an open-source, Python-based tool used for generating pseudo-random seismic data.
Ground-penetrating radar
- gprMax – Finite-difference time-domain electromagnetic wave propagation simulator (on CPU and GPU).
- GPRPy – Multi-format, GUI-based GPR processing and visualization.
- RAGU – Radar interpretation GUI compatible with multiple radar datasets.
- readgssi – Fast command line or console-based visualization, filtering, and translation of GSSI radar data.
- RGPR – Reads, exports, processes, and plots ground-penetrating radar data.
Well Log
- dlisio – Parser for dlis and lis well log files.
- lasio – Reading and writing well data using Log ASCII Standard (LAS) files.
- PetroPy – – Petrophysics package for conventional and unconventional formation evaluation and includes basic well log visualization via matplotlib.
- Striplog – Display lithological and stratigraphic logs for wells and outcrop.
- Wellioviz – – Visualizes well logs using d3.js. Companion to Wellio.js.
- Wellpathpy – – Light package to load well deviations.
- Welly – Analyzing and processing well log data.
Simulation and Modelling
- Basic Model Interface (BMI) – A standardized set of functions for model-model and model-data coupling.
- bh_tomo – Borehole radar and seismic tomography package.
- Devito – Finite-Difference computation from high-level symbolic problem definitions.
- disba – Numba-accelerated computation of surface wave dispersion.
- emsig – Controlled-source electromagnetic modellers for layered (
empymod
) and three-dimensional (emg3d
) anisotropic media.
- Fatiando a Terra – Modelling and inversion in geophysics.
- GemPy – 3-D structural geological modelling software with implicit modelling and support for stochastic modelling.
- GeoPhyInv – Julia Toolbox for Geophysical Modeling and Inverse Problems.
- HyVR – 3-D anisotropic subsurface models based on geological concepts that can be used with groundwater flow simulators (e.g., ModFlow).
- Landlab – Simulate surface processes using a large suite of existing interoperable process components (landscape evolution, sediment dynamics, surface hydrology, ecohydrology), exensible by own modules.
- LoopStructural – an open-source 3D structural geological modelling library.
- modelr.io – Web app for simple synthetic seismic forward modelling.
- ModFlow – Flow modelling software distributed by the USGS to simulate and predict groundwater conditions and groundwater/surface-water interactions with additional variants and add-ons.
- OccamyPy – an object-oriented optimization framework for small- and large-scale problems.
- PyFWI – It can be used to perform full-waveform inversion (FWI) and time-lapse FWI of seismic data.
- pyGeoPressure – Pore pressure prediction using well log data and seismic velocity data.
- pyGIMLi – Multi-method library for solving inverse and forward tasks related to geophysical problems.
- PyGMI– It is a modelling and interpretation suite aimed at magnetic, gravity and other datasets.
- PyLops – Linear Operators with some geophysics/seismic modules (e.g., pre- and post-stack AVO inversion, deconvolution, Marchenko redatuming, Radon filtering).
- PyMT – Python toolkit for coupling models and datasets that expose the Basic Model Interface (BMI).
- PySIT – A Toolbox for seismic inversion and seismic imaging.
- ResIPy – an intuitive open source software for complex geoelectrical inversion/modeling.
- SimPEG – Simulation and parameter estimation in geophysics.
- ttcrpy – Traveltime computation and raytracing on 2D & 3D rectilinear grids and unstructured meshes.
- XTgeo – Python library with C backend to support manipulation of (oil industry) subsurface reservoir modelling.
Reservoir Engineering
- DuMu<sup>x</sup> – Simulator for flow and transport processes in porous media.
- DeepField - A framework for reading and writing Eclipse reservoir data, reservoir preprocessing and interactive visualization.
- ecl – Reading and writing Eclipse reservoir simulator files.
- Fesapi – Reading and writing RESQML2 files.
- libres – Tool for managing an ensemble of reservoir models.
- MRST – Rapid prototyping and demonstration of new simulation methods in reservoir modelling and simulation.
- ResInsight – ResInsight is a powerful open source, cross-platform 3D visualization, curve plotting, and post processing tool for reservoir models and simulations.
- SHEMAT-Suite – Simulator for flow, heat and species transport in porous media including stochastic and deterministic parameter estimation.
Geostatistics
- GeostatsPy – GSLIB reimplimented in Python.
- GeoStats.jl – High-performance geostatistics in Julia.
- GeoStat-Framework – Framework for geostatistical simulations.
- gstat – Geostatistical modelling, prediction and simulation.
- gstlearn – Complete cross-platform library and packages for Geostatistics proposed by MINES PARIS – PSL University.
- G2S – A free, flexible and multi-language multiple point (MPS) (geo)statistics framework including the state-of-the-art algorithm QuickSampling.
- HPGL – High perfomance geostatistics library.
- PyGSLIB – Mineral resource estimations.
- Pyinterpolate – Kriging, Poisson Kriging, Semivariogram Deconvolution, Areal Kriging and other spatial interpolation methods in Python for Earth, Ecology and Social Sciences.
- pyKriging – N-dimensional kriging.
- pysgems – Use SGeMS (Stanford geostatistical modelling software) within Python.
- SciKit-GStat – SciPy-styled analysis module for geostatistics.
- SGeMS – Stanford geostatistical modelling software.
- bm_geostat_process - open source workflow for geostatistics block models
Geospatial
- Generic Mapping Tools (GMT) – About 80 command-line tools for manipulating geographic and Cartesian data sets.
- geonotebook – Jupyter notebook extension for geospatial visualization and analysis developed by NASA.
- GeoPHP – Geospatial library that works with many formats.
- GRASS-GIS – GIS platform, see Platforms.
- QGIS – GIS platform, see Platforms.
- Stress2Grid – Two concepts to calculate the mean SHmax orientation.
- Verde – processing spatial data to regular grids.
- vtk_triangulate_points – Generate simplified topography surfaces from dense point clouds (lidar/radar/drone).
- whitebox-tools – An advanced geospatial data analysis platform.
- gemgis – Spatial data processing for geomodeling
- SamGIS – Image Segmentation machine learning based (Segment Anything by Meta - Facebook) applied to GIS and geo data. HuggingFace demo here.
Geochemistry
- GeoPyTool – Application with geochemical plotting capabilities.
- PhreeQC – Reactions in water and between water and rocks and sediments (speciation, batch-reaction, one-dimensional transport, and inverse geochemical calculations).
- pyrolite – Geochemical transformation and visualisation.
- Reaktoro – Unified framework for modelling chemically reactive systems.
- Thermobar – Thermobarometry, chemometry and mineral equilibrium tool.
- CHNOSZ – Thermodynamic calculations and diagrams for geochemistry, R Packages for Geochemistry: CHNOSZ and logKcalc
- GeoChemical Data toolkit – GCDKit – System for handling and recalculation of whole-rock analyses from igneous rocks: Standard geochemical calculations and many of the common plots (binary, ternary, spider diagrams).
Geodynamics
- Underworld - Computational tools for the geodynamics community.
Magnetotellurics
- MATE - A Python program for interpreting magnetotelluric models of the mantle.
- MTPy - A Python Toolbox for magnetotelluric data processing, analysis, modelling and visualization.
- Razorback – An Python library for magnetotelluric robust processing.
Structural Geology
- apsg – Advanced structural geology analysis and visualisation based on Matplotlib.
- mplStereonet – Stereonets on python based on Matplotlib.
- OpenStereo – An open source, cross-platform structural geology analysis software.
- Stress_state_plot – An open source structural geology package for visualisation of a given stess-state via matplotlib.
Visualization
- cmocean – MatPlotLib collection of perceptual colormaps for oceanography.
- Colorcet – Perceptual colormaps.
- Geologic Patterns – Entire FGDC pattern library extracted to SVG and PNG for use in geologic maps and stratigraphic columns.
- ipyleaflet – 2D interactive maps and GIS visualization in the Jupyter Notebook.
- localtileserver – A Python package for serving tiles from large raster files in the Slippy Maps standard (i.e.,
/zoom/x/y.png
) for visualization in Jupyter with ipyleaflet
or folium
.
- omfvista – PyVista interface for the Open Mining Format (omf) package.
- PyVista – 3D plotting and mesh analysis through a streamlined interface for the Visualization Toolkit (VTK).
- PVGeo – Data and model visualization in ParaView and Visualization Toolkit (VTK) via PyVista.
- GeoVista – Cartographic rendering and mesh analytics powered by PyVista.
- Digitize Heatmap – Get numerical data from a heatmap from a PDF format.
Platforms
- GRASS-GIS – GIS platform for vector and raster geospatial data management, geoprocessing, spatial modelling and visualization, source code available at github.
- OpendTect – Seismic interpretation package, source code available at github.
- OpenGeode – Representation and manipulation of geological models.
- Pangeo – A community platform for Big Data geoscience built on top of the open source scientific python ecosystem.
- QGIS – GIS platform to visualize, manage, edit, analyse data, and compose printable maps.
- Webviz – Webviz is a wrapper on top of Dash from Plotly which encourages making reusable data visualisation components and dashboards.
- Webviz-subsurface – Webviz-subsurface contains subsurface specific standard webviz containers, which are used as plugins in webviz-config.
Natural Language Processing
- geoVec – "Word embeddings for application in geosciences: development, evaluation and examples of soil-related concepts" and an implementation.
Geochronology
- IsoplotR – A free and open-source substitute for Kenneth Ludwig's popular Isoplot add-in to Microsoft Excel.
- pychron – Data acquisition and processing framework for Ar-Ar geochronology and noble gas mass spectrometry.
Data Repositories
- Athabasca Oil Sands Well Dataset McMurray/Wabiskaw – Well logs and stratigraphic picks for 2193 wells, including 750 with lithofacies, from Alberta, Canada.
- Digital Rocks Portal – Powerful data portal for images of varied porous micro-structures.
- Geoscience Australia Portal – Comprehensive map-based Australian data portal across multiple geoscience domains.
- GSQ Open Data Portal – Petroleum, coal, and mineral geoscience data from the Queensland resource industry and government, with supporting information from GSQ GitHub Repository for Data Models, RDF Vocabularies, and system design. Use of VPN may result in 403 error.
- ICGEM – Hosts gravity field spherical harmonic models and provides a webservice for generating grids of gravity functionals (geoid, gravity anomaly, vertical derivatives, etc).
- NOPIMS – Open petroleum geoscience data from Western Australia made available by the Australian Government.
- Poseidon NW Australia – Interpreted 3D seismic (32bit) including reports and well logs.
- Quantarctica – User-configurable QGIS basemap for Antarctica with high-quality, peer-reviewed, free and open Antarctic scientific data.
- SARIG – South Australian Resources and Information Gateway providing map-based statewide geoscientific and geospatial data with over 600 datasets.
- SEG Open Data Catalog – Catalog of "geophysical data that is readily available for download from the internet, via mail, or through special request", maintained by the Society of Exploration Geophysicists.
- TerraNubis – The new Open Seismic Repository, includes the classic F3 and Penobscot seismic volumes (which both also have wells and other data assets).
- UK National Data Repository – Open petroleum geoscience data from the UK Government (free registration required).
- Volve data village - A complete set of data from a North Sea oil field available for research, study and development purposes.
- World Stress Map – A global compilation of information on the crustal present-day stress field.
- Volve data village - A complete set of data from a North Sea oil field available for research, study and development purposes.
- Macrostrat - A multiscale, harmonized, and globally-defined geologic map dataset and stratigraphic API.
- Costa Model – A hierarchical carbonate reservoir benchmarking case study.
- EarthChem – Community-driven preservation, discovery, access, and visualization of geochemical, geochronological, and petrological data.
Tutorials and Cheat Sheets
Miscellaneous
How to Contribute
Contributions welcome! Read the contribution guidelines first.
License
To the extent possible under law, all contributors have waived all copyright and
related or neighboring rights to this work.