jInv
is a flexible framework for PDE parameter estimation in Julia. It provides easy to extend core functions used in PDE-constrained inverse problems.
Our goal is to solve parameter estimation problems efficiently and in parallel. For more details see (http://arxiv.org/abs/1606.07399)
jInv consists of five submodules:
ForwardShare
- methods for solving forward problems in parallel.InverseSolve
- methods commonly used in inverse problems such as misfit functions, regularization and numerical optimization.Mesh
- regular and tensor meshes in 2D and 3D as well as differential operators.LinearSolvers
- interfaces to sparse and (if installed) direct linear solvers that can be used for solving the discretized PDEs.Utils
- utility functions
jInv is intended for use with Julia versions 0.4.x.
KrylovMethods.jl
- iterative methods for solving (sparse) linear systems.
Additional (optional) packages for higher performance. jInv
detects automatically if these packages are installed and uses them by default.
MUMPS.jl
- wrapper for MUMPS. Used as a direct PDE solver.ParSpMatVec.jl
- shared memory implementation for sparse matrix vector products.- 'Pardiso.jl'
In julia type:
Pkg.clone("https://github.com/JuliaInv/jInv.jl","jInv")
Pkg.test("jInv")
DivSigGrad.jl
- Inverse conductivity problems in staticsFWI.jl
- Full Waveform InversionMaxwellFrequency
- Inversion for conductivity in Maxwell's equationsEikonalInv.jl
- Inversion for slowness from travel time tomography
This material is in part based upon work supported by the National Science Foundation under Grant Number 1522599. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.