SimPEG 0.26.0 Release Notes#

October 26th, 2026

Updates#

New features#

Extended support to Python 3.15#

We extended support to Python 3.15 and Numpy 2.5. Starting from this release, we are running scheduled tests of SimPEG against the latest supported Python version and its dependencies.

Improvements to Natural Sources EM#

This release ships several improvements and additions to the natural source electromagnetic (NSEM) simulations, sources, and receivers.

We extended the capabilities of the Impedance, Tipper, and Admittance for 2D NSEM problems, making it possible to invert for Tipper and admittance data in 2D. See more details in simpeg/simpeg#1684.

The 3D NSEM simulations that use the primary-secondary formulation now implement more suitable boundary conditions for the 1D NSEM problem that gets solved to build the primary field and the right-hand side. See simpeg/simpeg#1661 for more details.

The number of padding cells that get added during 1D MT simulations are now estimated based on a certain number of skin depths. This makes the 1D MT simulations more robust for any type of mesh. See more details in simpeg/simpeg#1769.

Add new NSEM receivers used to predict different rotation invariant transfer functions such as Root Gram Determinant, Cross Product Amplitude, Horizontal Determinant. The apparent conductivity ApparentConductivity receiver can be configured to generate the apparent conductivity datum through different transfer functions.

Add new natural source receiver classes RootGramDeterminant, CrossProductAmplitude, and HorizontalDeterminant, that can generate rotation invariant transfer functions as datum. They are primarily intended to be used for airborne NSEM systems, but can be used for general survey configurations. Introduces a breaking change in the formula used by ApparentConductivity to compute its datum. Also, add a new formula argument to the ApparentConductivity receiver to choose which method should be used to compute the transfer functions. See more information in simpeg/simpeg#1779.

Thin plate and line conductors#

This release ships a nice addition to our electromagnetic simulations: we introduced a new set of hierarchical 2D and 3D simulations for DC, frequency domain (FEM) and time domain (TDEM) that can take edge and face conductivities as physical properties, allowing users to forward model and invert for thin plate and line conductors. A few examples of these classes are: resistivity.Simulation3DHierarchicalNodal, frequency_domain.Simulation3DHierarchicalElectricField, and time_domain.Simulation3DHierarchicalMagneticFluxDensity.

In the pre-existing DC and EM simulations we assign physical properties (like conductivity, resistivity, chargeability parameters, etc.) to mesh cells. But these new simluations allow us to assign conductivities to edges and faces in the mesh, enabling users to model and invert for thin plate or line features.

See more details in simpeg/simpeg#1296.

Improvements to simulations that use multiprocessing#

We applied some improvements to increase robustness and memory efficiency in simulations that make use of multiprocessing for parallelization:

General improvements and optimizations#

Finally, we list here some other general improvements and optimizations that were applied to several parts of the codebase:

Documentation#

We moved the Contributing Guide to its own separated section within the User Guide, and we included a new page explaining the process of deprecating and removing code.

The documentation also received some minor fixes in style and some mathematical expressions.

Bugfixes#

This release introduces the following bugfixes:

Breaking changes#

This release drops support for Python 3.11 (see #1802) since it reaches its end-of-life by the end of this month.

We removed some deprecated bits of code that were due for this minor release:

And we introduced some breaking changes while fixing some bugs and adding more features:

  • We fixed an inconsistency between the direction of the line currents between EB and HJ formulations in TDEM and FDEM simulations. We updated the HJ implementation of the line current so the current flows in the same direction as in the EB formulation. See simpeg/simpeg#1812 for more details.

  • simpeg/simpeg#1779 introduced a change in how the ApparentConductivity receiver computes the apparent conductivity datum by default.

Contributors#

We would like to highlight the work made by new contributors:

Pull Requests#