SeismicWaves.jl
Acoustic and elastic seismic wave propagation and gradients (using the adjoint method).
Install / Use
/learn @GinvLab/SeismicWaves.jlREADME
SeismicWaves
SeismicWaves.jl is a Julia package for acoustic and elastic wave propagation simulations designed to be used in a full-waveform inversion (FWI) framework. It solves different flavours of the wave equation using the finite difference method.

The main features of SeismicWaves.jl are:
- acoustic and elastic simulations
- gradients using the adjoint method
- different misfit/objective functionals provided or the possibility to specifing your own
- device-agnostic backends for parallelization, i.e., CPUs or GPUs (CUDA, AMDGPU, Metal - Apple M-chips) thanks to
ParallelStencil.jl - C-PML boundary conditions
- checkpointing of simulations for the adjoint method
Work in progress:
- noise correlations (seismic interferometry)
- arbitrary-order stencils
- 3D elastic simulations
This package integrates well with the inversion framework provided by InverseAlgos, which includes both deterministic (L-BFGS, Quasi-Newton, etc.) and probabilistic (e.g., Hamiltonian Monte Carlo) inverse algorithms, as part of the G⁻¹Lab framework.
More information and an extensive list of features can be found in the documentation, which can be found either online or built locally by running the docs/make.jl file.
[!WARNING] Documentation is currently minimal and work in progress!
Related Skills
node-connect
342.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
85.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
342.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
