This repository is a curated list of earthquake prediction models, forecasting tools, and the comprehensive computational ecosystem that supports modern seismology.
The scope covers the full pipeline: Data Acquisition -> Deep Learning Detection -> Association & Location -> Source Characterization -> Structural Imaging -> Forecasting -> Hazard Assessment.
The format for the item is [Software link] - [Paper link] (Description / Availability).
- Awesome Open Geoscience
- Awesome Seismology
- Seismo-Live - Interactive Jupyter notebooks for seismology.
- Seismo-Learn 101
- SeisTomo Tutorials
- SeisBench Examples - Tutorials for applying deep learning to seismic data.
- STEAD - Paper (Global waveform dataset for AI).
- INSTANCE - Paper (High-quality dataset with noise and event waveforms).
- Horus - High-quality hypocenter catalog for Italy.
Foundational libraries for handling waveforms, massive parallel processing, and database management.
ObsPy- Paper (The industry standard for reading/writing seismic data).MsPASS- Paper (Big data framework bridging ObsPy with HPC/Cloud using MongoDB and Dask).Pyrocko- Paper (Advanced waveform analysis, Green's functions, and visualization with Snuffler).PyMoab- (Python interface to the Mesh-Oriented dAtaBase for handling complex mesh data in simulations).
Tools for identifying P-wave and S-wave arrivals in noisy data.
SeisBench- Paper (A unified framework hosting models like PhaseNet, EQTransformer, and benchmarking datasets).PhaseNet- Paper (Specializes in precise P/S arrival time picking using U-Net).EQTransformer- Paper (Simultaneous detection and picking using attention mechanisms).EQcorrscan- Paper (Template matching and subspace detection for finding hidden earthquakes).REDPy- Paper (Unsupervised clustering and discovery of repeating earthquake families).
Algorithms to link phases into events and determine hypocenters (Time, Lat, Lon, Depth).
GaMMA- Paper (Probabilistic association, ideal for dense/noisy AI-generated picks).PyOcto- Paper (Extremely fast associator based on octree search, C++ backend).QuakeMigrate- Paper (Waveform stacking/migration method, excellent for low SNR environments).NonLinLoc- Link (The standard for probabilistic location, producing scatter clouds of uncertainty; Python wrappers available).- HypoDD - Paper (The gold standard for relative relocation to sharpen fault structures).
GrowClust- Paper (Efficient relative relocation using cluster analysis).
Determining "how" the earthquake broke (Focal Mechanisms, Moment Tensors).
MTUQ- Paper (Bayesian full moment tensor inversion with uncertainty quantification).Grond- Paper (Bootstrap-based probabilistic inversion for source parameters, part of Pyrocko).SKHASH- Paper (Modern Python implementation of the HASH polarity algorithm, supports consensus polarity).sourcespec- (Inversion of P/S displacement spectra for source parameters like corner frequency and stress drop).MoPaD- Paper (The standard tool for decomposing and plotting beachballs).
Imaging the earth beneath the stations.
RfPy- (Calculates receiver functions using multitaper/Wiener deconvolution).Seispy- Paper (Includes CCP stacking and anisotropy analysis).
Analyzing the resulting earthquake catalogs (b-value, completeness).
-
SeismoStats- Paper (Modern Python replacement for ZMAP; calculates Gutenberg-Richter$a/b$ -values and$M_c$ ). -
GISMO- (MATLAB toolbox for seismic data analysis and visualization).
Algorithms for generating earthquake probabilities (ETAS, Deep Learning).
RECAST- Paper (Neural Temporal Point Process model surpassing ETAS on large datasets).DeepSTPP- Paper (Spatio-temporal forecasting using deep learning).SimplETAS- Paper (Standard statistical epidemic-type forecasting).ETAS- (Tools for ETAS parameter estimation).
Frameworks for validating predictions against observed data.
Tools for translating forecasts into ground motion and risk.
OpenQuake Engine- Web (Global standard for PSHA and risk calculation).nshmp-haz- (USGS National Seismic Hazard Model Project code).OpenSHA- (Java-based framework for seismic hazard analysis).
Integrated pipelines combining the above tools.