/JSWAP

Julia Seismic WAve Propagation

Primary LanguageJuliaGNU General Public License v3.0GPL-3.0

JSWAP

Documenter Runtests Dev

A Julia package for Sound WAve Propagation (JSWAP). animation Simulation for Campi Flegrei. Unit of time: s. Red dots: source. Green dots: receivers. X: Latitude. Y: Longitude. Z: Altitude [m]. v3: Vertical particle velocity [m/s].

Contents

Target

The target of this package is to create an easy-to-use package for viscoelastic wave propagation in heterogenous media.

Highlights

Some of the highlights are:

  • The physics is acoustic-elastic coupling wave equations, including Kelvin-Voigt viscoelastic material.
  • Anisotropy and random media can be added to the velocity model.
  • This package is based on ParallelStencil.jl. Parallelization has been implemented. The package ParallelStencil.jl was modified to adapt higher-order accuracy finite-difference scheme (up to 12 points of spacial derivative).
  • The output (including animation) can be loaded to Paraview.

Installation

In an IDE with Julia installed (e.g., Atom), one can install this package by

julia> ]
(@v1.5) pkg> add https://github.com/deconvolution/JSWAP

You can test whether it works on your system with

julia> ]
(@v1.5) pkg> test JSWAP

and use it with

julia> using JSWAP

Dependencies

JSWAP dependes on ParallelStencil.jl, CUDA, and WriteVTK.jl. They will be installed automatically under JSWAP and there is no need to install them separately.

Usage

You can find the manual for details, which explains input, output and some utilities.