Current version: 3.3.4

Bempp is a computational boundary element platform to solve electrostatic, acoustic and electromagnetic problems. Features include:

  • Easy-to-use Python interface
  • Support for triangular surface meshes
  • Import and export in the Gmsh format
  • Easy formulation of acoustic and electromagnetic transmission problems
  • Built-in fast hierarchical matrix compression techniques
  • Shared memory and MPI parallelisation
  • FEM/BEM computations via interfaces to FEniCS
  • Docker images for easy installation on Windows, Mac and Linux

Download now    Learn more

Example applications

High-intensity focused ultrasound

hifuHigh-intensity focused ultrasound (HIFU) is a medical procedure that uses high-amplitude ultrasound waves to heat a small region of tissue, for example a cancerous tumour.

Before carrying out the procedure, it is important to simulate the process ensure that the surrounding tissue will not be subject to too much heat. Bempp can be used to simulate HIFU using its acoustics functionality, including OSRC preconditioning for high-frequency problems.

More information about this application can be found in van ‘t Wout et al (2015) and Betcke et al (2017).

Maxwell wave scattering

An important application of Bempp, and an area of much recent development, is the modelling of the scattering of electromagnetic waves.

For this type of problem, there are three well-known formulations available: the electric field (EFIE), magnetic field (MFIE) and combined field (CFIE) integral equations. However, in order to ensure that solutions can be obtained in a reasonable amount of time, the function spaces used in the discretisation must be chosen carefully.

More information about this application can be found in Scroggs et al (2017) and in its example scripts.


Bempp is developed at University College London and Pontificia Universidad Católica de Chile. The current development team includes Simon Arridge, Timo Betcke, Matthew Scroggs and Elwin Van ‘t Wout. Much of the original work on Bempp was done by Wojciech Śmigaj, now at Simpleware Ltd.

We are very grateful for the substantial contributions of the UCL Research Software Development Team to the code itself, installers and testing environment. Bempp is supported by EPSRC Grants EP/I030042/1 and EP/K03829X/1. We would also like to acknowledge support from the Dune Project for the integration of Dune into Bempp and the HyENA Team at Graz University of Technology who provided definitions of the core integration rules to the project.


Bempp is covered by an MIT licence. The full licence can be read here.