.. image:: ./_static/emsig-logo.svg
:width: 400 px
:align: center
:alt: emsig logo
:target: https://emsig.xyz
:class: dark-light
|
|
|
========================================
ElectroMagnetic Simulation in Geophysics
========================================
**emsig** are open-source codes to simulate electromagnetic data. Their main
targets are geophysical applications (exploration and monitoring, engineering,
environmental), but they are by no means limited to that. The main codes are
listed on this page. The `emsig GitHub org `_
contains besides the main codes also related publications for reproducibility
purposes and other associated things of interest, such as smaller codes which
were part of publications.
|
|
|
.. grid:: 1 1 2 2
:gutter: 2
.. grid-item-card::
:img-top: _static/empymod-logo.svg
3D EM modeller for 1D VTI media
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. button-link:: https://empymod.emsig.xyz
:expand:
:color: info
:click-parent:
empymod.emsig.xyz
The modeller **empymod** can compute electric or magnetic responses due
to a 3D electric or magnetic source in a layered-earth model with
vertical transverse isotropic (VTI) resistivity, VTI electric
permittivity, and VTI magnetic permeability, from very low frequencies
(DC) to very high frequencies (GPR). The computation is carried out in
the wavenumber-frequency domain, and various Hankel- and
Fourier-transform methods are included to transform the responses into
the space-frequency and space-time domains.
++++++
.. code:: bash
pip install empymod
.. code:: bash
conda install -c conda-forge empymod
.. grid-item-card::
:img-top: _static/emg3d-logo.svg
Multigrid solver for 3D EM diffusion
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. button-link:: https://emg3d.emsig.xyz
:expand:
:color: info
:click-parent:
emg3d.emsig.xyz
The modeller **emg3d** is a multigrid solver for 3D EM diffusion with
tri-axial electrical anisotropy. The matrix-free solver can be used as
main solver or as preconditioner for Krylov subspace methods, and the
governing equations are discretized on a staggered Yee grid.
++++++
.. code:: bash
pip install emg3d
.. code:: bash
conda install -c conda-forge emg3d
.. grid-item-card::
:img-top: _static/elfe3D-logo.svg
Modelling with the total electric field approach using finite elements in 3D
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. button-link:: https://github.com/emsig/elfe3D
:expand:
:color: info
:click-parent:
github.com/emsig/elfe3D
**elfe3D** is a 3D forward modelling code that can simulate electric
and magnetic field responses from frequency-domain controlled-source
electromagnetic geophysical setups. It uses tetrahedral meshes and
first-order finite-element approximations. In addition, adaptive mesh
refinement approaches are implemented.
.. grid-item-card::
:img-top: _static/EMmod-logo.svg
The electromagnetic response in a layered vertical transverse isotropic medium
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. button-link:: https://github.com/emsig/EMmod
:expand:
:color: info
:click-parent:
github.com/emsig/EMmod
**EMmod**, which stands for electromagnetic modeling, is an algorithm
to model the full electromagnetic field in a vertical transverse
isotropic (VTI) layered medium. Although the algorithm was designed for
frequency-domain marine Controlled Source Electromagnetics (CSEM), it
can also be used to simulate data for other geophysical exploration
methods like for example Ground Penetrating Radar (GPR). The algorithm
computes the EM-field analytically in the wavenumber-frequency domain
and then carries out a numerical Hankel transformation to get the
space-frequency domain representation.
.. grid-item-card::
:img-top: _static/iEMmod-logo.svg
Invert frequency-domain electromagnetic data
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. button-link:: https://github.com/emsig/iEMmod
:expand:
:color: info
:click-parent:
github.com/emsig/iEMmod
The software **iEMmod** is a non-linear conjugate-gradient algorithm to
invert frequency-domain electromagnetic data for a layered-Earth model.
The forward solver used is our open-source layered-Earth
electromagnetic modeling code EMmod.
.. grid-item-card::
:img-top: _static/3Dhom-logo.svg
Seismoelectromagnetic homogeneous space Green's functions
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. button-link:: https://github.com/emsig/3Dhom
:expand:
:color: info
:click-parent:
github.com/emsig/3Dhom
**ElSeisHom3D** stands for computing the Green's functions of
electromagnetic fields and elastic waves that are coupled in a
homogeneous porous medium. The fields are the electric field, the
magnetic field, the particle velocity, the filtration velocity, the
acoustic pressure in the fluid, and bulk stress. The sources that
generate these fields are the electric current source, the magnetic
current source, the force source acting on the bulk, the force source
acting on the fluid, the acoustic volume injection rate source acting
on the fluid, and the deformation rate source acting on the bulk. The
impulse responses that connect the fields to these sources are the
Green's functions.
.. grid-item-card::
:img-top: _static/libdlf-logo.svg
Library of Digital Linear Filters
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. button-link:: https://github.com/emsig/libdlf
:expand:
:color: info
:click-parent:
github.com/emsig/libdlf
**libdlf** is a library for digital linear filters. Codes until now had
to hard-code their digital linear filters. This has several
disadvantages. Having a common library that can be used by any code
base in any language should hopefully widen the adoption of linear
filters, make their use more reproducible, and might hopefully even
spark the design of new, hopefully more robust filters or filters for
new applications.
++++++
.. code:: bash
pip install libdlf
.. code:: bash
conda install -c conda-forge libdlf
.. grid-item-card::
:img-top: _static/pyfftlog-logo.svg
A python version of FFTLog
^^^^^^^^^^^^^^^^^^^^^^^^^^
.. button-link:: https://pyfftlog.readthedocs.io
:expand:
:color: info
:click-parent:
pyfftlog.readthedocs.io
**pyfftlog** is a python version of the logarithmic FFT code FFTLog.
FFTLog is a set of fortran subroutines that compute the fast Fourier or
Hankel (= Fourier-Bessel) transform of a periodic sequence of
logarithmically spaced points.
++++++
.. code:: bash
pip install pyfftlog
.. code:: bash
conda install -c conda-forge pyfftlog
.. grid-item-card::
:img-top: _static/fftlog-logo.svg
A python wrapper for FFTLog
^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. button-link:: https://github.com/emsig/fftlog
:expand:
:color: info
:click-parent:
github.com/emsig/fftlog
**fftlog** is a simple f2py-wrapper for the logarithmic FFT code
FFTLog. FFTLog is a set of fortran subroutines that compute the fast
Fourier or Hankel (= Fourier-Bessel) transform of a periodic sequence
of logarithmically spaced points.
++++++
.. code:: bash
pip install fftlog
.. code:: bash
conda install -c conda-forge fftlog
|
|
|
:fa:`fas fa-users fa-2x` Contributing & Contact
-----------------------------------------------
**emsig** are community codes, please help to shape their future!
.. grid:: 1
:gutter: 2
.. grid-item-card::
:fa:`code fa-2x`
`Submit bugs, fix typos, contribute code, and so much more!
`_
.. grid-item-card::
:fa:`fa-regular fa-comments fa-2x`
Join the **#emsig**-channel on the `SWUNG Chat
`_.
.. grid-item-card::
:fa:`fa-regular fa-envelope fa-2x`
If you prefer personal email you can contact me through
my website `werthmuller.org. `_
|
|
|
Related ecosystem
=================
**emsig** and its codes are part of a bigger, fast growing, open-source **EM &
Potential Geo-Exploration Python Ecosystem** (make a PR or get in touch to add
your library):
.. raw:: html
|
|
|
.. dropdown:: About the name and logo of emsig
The name **emsig** is an abbreviation in English and a pun in German.
It stands primarily as abbreviation for ElectroMagnetic Simulation in
Geophysics. However, **emsig** is also a German adjective, meaning
*hard-working* or *diligent*. Surely, our codes make our computers work
hard!
Finally, moving to the logo, the **sig**-ending can be seen as the short
form of **sigma**, the symbol generally used for conductivity in
geophysics, one of the elementary properties in electromagnetic modelling.
The «s» in the logo of **emsig** is denoted by «ς», a variation of «σ»
(sigma) in the Greek alphabet.
The symbol itself represents the perpendicularity of electric and magnetic
fields.
.. image:: ./_static/emsig-logo.svg
:class: dark-light