emg3d Documentation#




31 May 2023



User Guide

The manual contains installation instructions, information on how to get started, tips and tricks, background theory, how to cite emg3d, important references, license information, and much more!


The gallery contains examples and tutorials on the usage of emg3d, and is generally the best way to get started. Download them and modify them to your needs! It is also a good place to see what is possible with emg3d.

API reference

The API reference of emg3d is extensive, and includes almost every function and class. A lot of the underlying theory is described in the docstring of the functions, particularly in the core module.

Developer guide

emg3d is a community code, please help to shape its future! From typos to bugs to new developments, every contribution is welcomed. This section is the best way to get started.

About the name and logo of emg3d

The name emg3d is a portmanteau of electromagnetic (em), multigrid (mg), and three-dimensional (3D): emg3d is a three-dimensional multigrid solver for electromagnetic diffusion.

The symbol stands for the full (‘F’) multigrid cycling scheme through the different grid sizes. This is given, for a maximum of three coarsening steps, by:

2h_ \          /
4h_  \    /\  /
8h_   \/\/  \/

See, for example, the theory section around Figure 16.