Skip to content

Latest commit

 

History

History
67 lines (51 loc) · 4.51 KB

index.md

File metadata and controls

67 lines (51 loc) · 4.51 KB

Bempp is an open-source 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 a number of formats, including Gmsh and VTK.
  • Easy formulation of acoustic and electromagnetic transmission problems.
  • CPU and GPU parallelisation.
  • A comprehensive operator algebra that makes it easy to formulate complex product operator formulations such as operator preconditioning.
  • Coupled FEM/BEM computations via interfaces to FEniCS.

Latest version: {{site.bemppversion}}

Installation instructions{: .colorlink} Start using Bempp{: .colorlink} View Source on GitHub{: .colorlink}

Bempp-cl

Bempp-cl is a complete rewrite of the Bempp library that uses PyOpenCL for just-in-time compilation of computational kernels. This new version is largely feature complete, however the legacy version (Bempp 3.3.4) has the following additional features:

  • Built-in fast hierarchical matrix compression techniques

Documentation for Bempp 3.3.4 is available here.

Bempp-rs

Bempp-rs is the latest (in early progress) rewrite of the Bempp library, written in Rust with a Python wrapper. This version can be found on GitHub with documentation at bempp.github.io/bempp-rs.

Example applications

High-intensity focused ultrasound

High-intensity focused ultrasound{: .image-right } High-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

Maxwell wave scattering{: .image-right } 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.

Development

Bempp is developed at University College London and the University of Cambridge. The current development team includes Timo Betcke, Srinath Kailasa, and Matthew Scroggs. Past contributors to the library include Simon Arridge, Elwin Van 't Wout, and Wojciech Śmigaj. You can find more information about the development team here.

Bempp is supported by EPSRC Grants EP/I030042/1 and EP/K03829X/1. We would like to thank the ExaFMM team for their help integrating their library into Bempp and the HyENA team at Graz University of Technology who provided definitions of the core integration rules to the project.

Past versions of Bempp were aided by from the Dune Project and the UCL Research Software Development Team.

Licensing

All versions of Bempp are released under the terms of open-source licenses. Bempp-cl is released under an MIT licence. Bempp-rs is released under a BSD 3-clause licence.