.. PETGEM documentation master file.
##################################
Welcome to PETGEM's documentation!
##################################
**PETGEM** (Parallel Exascale Toolkit for Geophysical Electromagnetic Modeling) is an open-source software for large-scale 3D electromagnetic (EM) modeling. It implements a high-order edge finite element method on unstructured tetrahedral meshes, enabling accurate simulations for active-source EM problems in both **forward modeling** and **inverse modeling** (inversion).
Originally developed in Python, **PETGEM** has been refactored in C and integrated with `PETSc `_ to improve scalability on massively parallel architectures, memory efficiency, and mesh handling. These advances make **PETGEM** well suited for current and future exascale systems.
**PETGEM** has been successfully applied to subsurface exploration in oil & gas, geothermal reservoir characterization, and environmental EM surveys.
Key features
------------
- High-order edge finite element method
- Forward modeling and inversion (L-BFGS with adjoint-state gradients)
- Unstructured tetrahedral mesh support (`Gmsh `_)
- Parallel computing with MPI and `PETSc `_
- Python bindings for pre- and post-processing
- Integration with performance analysis tools (`Extrae `_)
More information
----------------
- `PETGEM GitHub repository `_
- See our publication list at :ref:`publications`
.. toctree::
:maxdepth: 2
:caption: Getting started:
manual/install
manual/quickstart
manual/overview
.. toctree::
:maxdepth: 2
:caption: Forward modeling:
manual/forward_modeling
manual/examples
.. toctree::
:maxdepth: 2
:caption: Inverse modeling:
manual/inverse_modeling
manual/examples_inverse
.. toctree::
:maxdepth: 2
:caption: Reference:
manual/method
manual/formats
manual/meshing
manual/solver
manual/troubleshooting
manual/python_api
api/index
.. toctree::
:maxdepth: 2
:caption: Development:
manual/testing
manual/contributing
.. toctree::
:maxdepth: 1
:caption: About:
manual/publications
manual/changelog
manual/contact
Indices and tables
==================
* :ref:`genindex`
* :ref:`search`