Matthew W. Scroggs
Matthew W. Scroggs

subscribe
Welcome to my academic web page. I am currently a Postdoctoral Research Fellow at University College London. On this page, you will find a summary of my main research interests, followed by full lists of my (click to scroll):
You can also find a list of my papers on my Google Scholar and ORCID pages.

Finite and boundary element methods

My mathematical research has focussed on finite element methods (FEM) and boundary element methods (BEM). My work has included both the theoretical analysis of these methods, and the implementation of these methods in open-source software projects.
Much of my work on boundary element methods is written up in my PhD thesis, Efficient computation and applications of the Calderón projector (2020). Much of my PhD work is written up in a more beginner-friendly way in this series of blog posts.

FEniCSx

During my postdoc in Cambridge, I began working on FEniCSx, the new version of the FEniCS finite element method library. FEniCS is a C++ finite element library with a Python user interface.
My contributions to FEniCSx include the implementation degree-of-freedom (DOF) transformations that ensure that the positions and orientations of DOFs of higher order spaces are consistent on edges and faces of elements. This removes the need to re-order the data in the mesh that the user inputs, and allows for a consistent implementation on triangular, tetrahedral, quadrilateral and hexahedral cells. Details of this can be found in Construction of arbitrary order finite element degree-of-freedom maps on polygonal and polyhedral cell meshes (2022).
I am one of the main contributors to Basix, the finite element tabulation library that forms part of FEniCSx. Basix's features are described in Basix: a runtime finite element basis evaluation library (2022)
I was one of the orgainsers of the FEniCS 2021 conference.

Bempp-cl

During my PhD, I became heavily involved in developing Bempp, an open-source boundary element method library.
Bempp-cl is the latest version of Bempp, and is a Python library with a fast computational core written in OpenCL that is just-in-time compiled using PyOpenCL. Documentation can be found at bempp.com.
My contributions to the software include work on FEM-BEM coupling, Maxwell's equations, dual function spaces, and the weak imposition of boundary conditions.

DefElement

In 2020, I started working on DefElement, an (online) encyclopedia of finite element definitions.
DefElement contains information about the definition of a large (and growing) range of discrete finite element spaces, with examples and references to papers where they were first defined. It is intended to be useful reference tool for anyone working with finite element methods.
The examples shown on DefElement are generated using my open-source symbolic finite element definition and tabulation library Symfem.

UKAN computations acoustics knowledgebase

I am one of the contributors to the UK Acoustics Network's computation acoustics knowledgebase. This knowledgebase contains information about different open source tools that can be used to solve acoustics problems, as well as having details about how the methods these tools use work.

Maxwell wave scattering

An electromagnetic wave scattering off
a birthday cake.
During my PhD, I did much work on boundary element methods for Maxwell wave scattering problems. In Bempp, I implemented Buffa–Christiansen dual function spaces: these spaces are required when multiplying two operators together which is necessary when applying Calderón preconditioning to the electric field integral equation (EFIE).
These spaces are also useful when stably discretising the magnetic (MFIE) and combined (CFIE) field integral equations. This work is discussed in more detail in Software frameworks for integral equations in electromagnetic scattering based on Calderón identities (2017).

Weak imposition of boundary conditions

During my PhD, I worked on a method of weakly imposing boundary conditions when using the boundary element method. This method weakly imposes the boundary conditions by adding a penalty term to the full Calderón system, inspired by Nitsche's method for finite element methods.
Due to the approximate double of the number of unknowns, this method is not competitive for pure Dirichlet and Neumann problems, but for more complex boundary conditions—such as Robin boundary conditions and mixed boundary conditions—it provides a much simpler formulation that is easier to implement.

FEM-BEM coupling

The solution of a coupled FEM-BEM
Helmholtz problem.
Early in my PhD, I worked on the coupling of the finite and boundary element methods. For transmission problems involving wave travelling through a large or infinite medium and through a small inhomogeneous object, the boundary element method is well suited to solving the problem outside the object while the finite element method is better suited for solving the problem inside the object. Using the two methods for the two parts of the problem gives rise to FEM-BEM coupling.
A tutorial showing how to implement FEM-BEM coupling using Bempp and FEniCS can be found here.

Positions

2022–2024 Research Fellow, Department of Mathematics, University College London
2019–2022 Research Associate, Department of Engineering, University of Cambridge
2014–2019 PhD student, Department of Mathematics, University College London

Publications

A list of my papers in BibTeΧ format can be found here. You can also find a list of my papers on my Google Scholar and ORCID pages.
 Preprints 
I. A. Baratta, J. P. Dean, J. S. Dokken, M. Habera, J. S. Hale, C. N. Richardson, M. E. Rognes, M. W. Scroggs, N. Sime & G. N. Wells. DOLFINx: the next generation FEniCS problem solving environment. [doi.org/10.5281/zenodo.10447666, BibTeΧ]
 2024 
M. Bosy, M. W. Scroggs, T. Betcke, E. Burman & C. D. Cooper. Coupling finite and boundary element methods to solve the Poisson–Boltzmann equation for electrostatics in molecular solvation, Journal of Computational Chemistry 45(11), 2024, 787–797. [arΧiv, doi.org/10.1002/jcc.27262, BibTeΧ]
 2022 
M. W. Scroggs, I. A. Baratta, C. N. Richardson & G. N. Wells. Basix: a runtime finite element basis evaluation library, Journal of Open Source Software 7(73), 2022, 3982. [pdf, doi.org/10.21105/joss.03982, BibTeΧ]
M. W. Scroggs, J. S. Dokken, C. N. Richardson & G. N. Wells. Construction of arbitrary order finite element degree-of-freedom maps on polygonal and polyhedral cell meshes, ACM Transactions on Mathematical Software 48(2), 2022, 18:1–18:23. [pdf, arΧiv, doi.org/10.1145/3524456, BibTeΧ]
T. Betcke, E. Burman & M. W. Scroggs. Boundary element methods for Helmholtz problems with weakly imposed boundary conditions, SIAM Journal on Scientific Computing 44(5), 2022, A2895–A2917. [pdf, arΧiv, doi.org/10.1137/20M1334802, BibTeΧ]
 2021 
T. Betcke & M. W. Scroggs. Bempp-cl: A fast Python based just-in-time compiling boundary element library, Journal of Open Source Software 6(59), 2021, 2879. [pdf, doi.org/10.21105/joss.02879, BibTeΧ]
T. Betcke & M. W. Scroggs. Designing a high-performance boundary element library with OpenCL and Numba, IEEE Computing in Science & Engineering 23(4), 2021, 18–28. [pdf, doi.org/10.1109/MCSE.2021.3085420, BibTeΧ]
M. W. Scroggs. Symfem: a symbolic finite element definition library, Journal of Open Source Software 6(64), 2021, 3556. [pdf, doi.org/10.21105/joss.03556, BibTeΧ]
 2020 
T. Betcke, M. W. Scroggs & W. Śmigaj. Product algebras for Galerkin discretisations of boundary integral operators and their applications, ACM Transactions on Mathematical Software 46(1), 2020, 4:1–4:22. [pdf, arΧiv, doi.org/10.1145/3368618, BibTeΧ]
E. Burman, S. Frei & M. W. Scroggs. Weak imposition of Signorini boundary conditions on the boundary element method, SIAM Journal on Numerical Analysis 58(4), 2020, 2334–2350. [pdf, arΧiv, doi.org/10.1137/19M1281721, BibTeΧ]
M. W. Scroggs. Efficient computation and applications of the Calderón projector (PhD thesis). [pdf (via UCL Discovery), UCL Discovery, BibTeΧ]
 2019 
T. Betcke, E. Burman & M. W. Scroggs. Boundary element methods with weakly imposed boundary conditions, SIAM Journal on Scientific Computing 41(3), 2019, A1357–A1384. [pdf, arΧiv, doi.org/10.1137/18M119625X, BibTeΧ]
A. Kleanthous, T. Betcke, D. P. Hewett, M. W. Scroggs & A. J. Baran. Calderón preconditioning of PMCHWT boundary integral equations for scattering by multiple absorbing dielectric particles, Journal of Quantitative Spectroscopy and Radiative Transfer 224, 2019, 383–395. [pdf, arΧiv, doi.org/10.1016/j.jqsrt.2018.11.035, BibTeΧ]
 2017 
M. W. Scroggs, T. Betcke, E. Burman, W. Śmigaj & E. van 't Wout. Software frameworks for integral equations in electromagnetic scattering based on Calderón identities, Computers & Mathematics with Applications 74(11), 2017, 2897–2914. [pdf, arΧiv, doi.org/10.1016/j.camwa.2017.07.049, BibTeΧ]

Awards & nominations

 2019 
 2017 
 2016 

Research-related articles

You can find a more exhaustive list of articles I have written on the talks page.
 2020 
Oπnions: Should I share my code? (Chalkdust Magazine, issue 12)

Teaching & training

 2022 
In 2022-23, I taught PHAS0102: Techniques of High-Performance Computing at UCL. You can find my notes for this course at mscroggs.co.uk/PHAS0102
 2021 
In 2021, I helped run the boundary element method day of the EAA / UKAN Computational Acoustics Summer School. The materials used for this can be found on GitHub.
 2019 
In 2018-19, I taught the Python part of taught MATH0011: Mathematical Methods 2 at UCL. Notes for this course can be found at mscroggs.co.uk/0011.
 2016 
In 2015-16 and 2016-17, I taught MATH6103: Differential and Integral Calculus at UCL. You can find my notes for this course at mscroggs.co.uk/6103.

Conference & seminar organisation

 2024 
PDESoft 2024, Cambridge
 2023 
 2021 

Other roles

 ongoing 
Since 2024, I have been a member of the Talking Maths in Public (TMiP) organising committee.
Since 2022, I have been a member of the FEniCS Steering Council.
 2022 
From 2020–2022, I was one of the organisers of the Sheffield Hallam University Recreational Mathematics Research Cluster seminar series.

Conference talks & seminars

 2023 
Solving coupled FEM-BEM problems using FEniCSx and Bempp (SIAM Conference on Computational Science and Engineering)
newfl: working towards a new version of UFL (FEniCS 2023)
DefElement: an encyclopedia of finite element definitions (poster) (FEniCS 2023) [pdf, doi.org/10.6084/m9.figshare.23294939.v1]
 2022 
Defining custom elements in FEniCSx (FEniCS 2022) [slides]
Rust: first impressions and rough guide (Cambridge RSE seminar series)
 2021 
Back to Basix: Construction of arbitrary order finite element DOF maps on polygonal and polyhedral cell meshes (FEniCS 2021) [slides]
 2019 
Weakly imposing boundary conditions on the boundary element method using a penalty method (Mafelap 2019)
 2018 
Solving integral equations for electromagnetic scattering using Bempp (poster) (PDESoft 2018)
Weak imposition of boundary conditions using a penalty method (IABEM 2018)
Weak imposition of boundary conditions using a penalty method (Söllerhaus Workshop on Fast Boundary Element Methods in Industrial Applications)
 2017 
Solving integral equations for electromagnetic scattering using BEM++ (Strathclyde 27th Biennial Numerical Analysis Conference)
Solving integral equations for electromagnetic scattering using BEM++ (Söllerhaus Workshop on Fast Boundary Element Methods in Industrial Applications)
 2016 
Solving Maxwell problems with BEM++ (Joint DMV and GAMM Annual Meeting)
Coupling the finite and boundary element methods with FEniCS and BEM++ (BAMC 2016)
FEM-BEM coupling, Maxwell's equations, and BEM++ (FEniCS'16)
Coupling the finite and boundary element methods with FEniCS and BEM++ (PDESoft 2016)
 2015 
Solving FEM/BEM coupled problems with FEniCS and BEM++ (Strathclyde 26th Biennial Numerical Analysis Conference)
Using FEniCS with BEM++ For FEM/BEM Coupled Problems (FEniCS'15) [video]
© Matthew Scroggs 2012–2024