This repository contains tutorials and exercises designed to show you how to use Bempp to solve problems in acoustics. It has been prepared for the ASSA Autumn School Series in Acoustics 2024, which included a Computational Acoustics stream with a day on Boundary Element Method taught by Dr Jonathan A. Hargreaves. It is a subset of the materials in this reposity, which was prepared with Matthew Scroggs for the EAA / UKAN Computational Acoustics Summer School in 2021.
They have all been created in Jupyter Notebooks, which allow you to see code, explanation and results all alongside.
You can view these tutorials and exercises on nbviewer without needing to install Bempp. But if you wish to make any edits yourself, as is required to undertake the exercises, then you'll need to install Bempp and either clone the repository or download the code (achieved via the green Code button above right).
- Instructions for installing Bempp
- Using the null field approach (an indirect BEM formulation that follows Jonathan Hargreaves' explanation in the lectures)
- Alternative Direct formulation by Matthew Scroggs
- Impedence boundary conditions
- Radiation Problems
- Further information
The bempp website includes a handbook, which gives an introduction to how the library operates, and automatically generated full Python documentation, which is useful for looking up specific details once you already understand the main principles for using Bempp. But that documentation uses a different operator notation to what is used in these tutorials, which follow the Jonathan Hargreaves's slides from the summer school.
Here is a summary of the differences:
Operator | Notation used herein | Notation used in Bempp documentation |
---|---|---|
Identity | I | Id |
Single layer | S | V |
Double layer | D | K |
Adjoint double layer | A | K' |
Hypersingular | H | W |