jif3D Joint inversion framework
General information
This file contains some general information about the joint inversion
framework jif3D. For installation instructions please refer to the file INSTALL.
Please be aware that this is still a beta version. At the moment, the intended
audience is developers and experienced researchers with a good knowledge
of joint inversion. If you are new to inversion and have not developed any code
so far, it is likely that you will have a hard time getting the code to do what you
want. We are actively working on improving the documentation and making the
interface more user friendly.
Scope
jif3D is a framework for joint inversion of seismic, gravity and magnetotelluric
data in 3D. It is written in C++ and designed for modularity, so it can be used
as a base for further developments and relatively easily extended to included
new coupling mechanisms and new types of data. At the moment the core of the
framework is the program jointinv. It performs 3D joint inversion of first arrival
travel time data, scalar and tensor (FTG) gravity measurements and magnetotelluric (MT)
impedances. Please note while the seismic and gravity forward codes are part of this
distribution, the MT forward code, x3d, is closed-source and not part of the framework.
You can obtain x3d by purchasing an academic or commercial license from its author D. Avdeev.
In the future, we will work on including an open-source MT forward solver. Given the
existing facilities for handling MT data, this should be relatively easy.
Documentation
You can generate a documentation for the classes and programs using the doxygen program.
There are two files Doxyfile.manual and Doxyfile.web.
These are optimized for generating a printed documentation using latex
and online html documentation, respectively. Currently the documentation is
largely limited to describing the different C++ classes that comprise the framework
and the associated functions. An area for improvement is to create a coherent and
structured description of file formats, requirements etc. in a tutorial style manual.
Examples
The Tutorials directory contains several jupyter notebooks (https://jupyter.org/) to build example models, calculate
synthetic data and invert them. Jupyter notebooks are part of the python universe and can be installed through the package
manager under Linux or as part of Anaconda (https://www.anaconda.com/products/distribution)
The tutorials a good starting point and also explains some of the general concepts,
file formats, etc..
Support
If you have any questions, comments, suggestions or find a bug in the code, you can
post in the discussion forum https://sourceforge.net/p/jif3d/discussion/ or submit a
ticket https://sourceforge.net/p/jif3d/tickets/ In both cases you need to create a free
sourceforge account to be able to post something. We will try to answer your questions
and fix bugs as quickly as possible.
Acknowledgements
The initial development of the framework was sponsored by Chevron, ExxonMobil, Nexen, RWE Dea,
Shell, Statoil and Wintershall within the jiba consortium. P. Podvin kindly made his eikonal
solver publicly available. A. Avdeeva supported us with implementing the gradient calculation
for the MT part of the joint inversion.
jif3D also contains parts of code from the following open-source projects:
- TIME_3D (not available online any more), described in Podvin & Lecomte, Geophys.J.Intern. 105, 271-284, 1991. GPL license
- Eigen (https://eigen.tuxfamily.org/), MPL2 license
- GeographicLib (https://geographiclib.sourceforge.io/), MIT license
- MBA (https://github.com/ddemidov/mba/blob/master/README.md), MIT license
- KissFFT (https://github.com/mborgerding/kissfft), BSD License
- libmine (https://minepy.readthedocs.io/en/latest/libmine.html), GPL
License
/***************************************************************************
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
***************************************************************************/