ADSeismic.jl

A General Approach to Seismic Inversion Problems using Automatic Differentiation
Author kailaix
Popularity
2 Stars
Updated Last
29 Days Ago
Started In
March 2020

ADSeismic: An Open Source High Performance Package for General Seismic Inversion

Documentation Build Status
Build Status

ADSeismic is suitable for general inversion problems in seismic imaging. The packages implements the forward simulation of acoustic and elastic wavefields and allows flexible inversions of parameters in the wave equations using automatic differentiation. Several features of this package includes:

  • Battery included: unified approach to various seismic inversion problems such as full waveform inversion (FWI), earthquake location inversion and source rupture inversion.
  • High performance: computational graph optimization and parallel computing.
  • (Multi-)GPU support: support for GPU acceleration as well as multi-GPU (in theory TPUs are also supported).
  • Easy-to-use: no adjoint state method codes required for building your own inversion models; automatic differentiation is the work horse.

See our paper A General Approach to Seismic Inversion with Automatic Differentiation for more details.

Installation

ADSeismic.jl requires proper installation of ADCME.jl.

using Pkg
Pkg.add("ADCME")

This might take up to 20 minutes for complete installation.

Then install this package (ADSeismic.jl) by

using Pkg
Pkg.add("ADSeismic")

To enable GPU support, make sure nvcc is available on your machine, and then

using ADCME
use_gpu()

Use has_gpu() to check GPUs exist.

Used By Packages

No packages found.