Dr Lawrence Mitchell
(email at firstname.lastname@example.org)
I am an Assistant Professor in the Department of Computer Science at Durham University. My research is in high performance computing and computational mathematics. Much of my recent focus has been in the development of compilers and software abstractions for the development of numerical models implemented using the finite element method. This research is concretely realised in the open source Firedrake project. I am particularly interested in preconditioning techniques for challenging problems in computational and atmospheric fluid dynamics.
The focus of my work is how to address the increasingly sophisticated needs of computational science practitioners by changing the way we think about numerical models. I develop computational mathematical abstractions that enable the automation of efficient implementations of complex, multiscale, numerical methods on modern supercomputers.
Compilers for numerical software
In the Firedrake project, I work on capturing the mathematical abstractions in numerical models, blending symbolic reasoning and numerical computation. This enables an approach to numerical software development that leverages symbolic information to synthesise high performance, parallel implementations of mathematical algorithms. This is possible through careful design of software abstractions, and development of domain-specific optimising compilers.
Fast solvers for geophysical flows
A large part of sophisticated numerical model development is in the design of robust linear and nonlinear solvers for the equations of interest. I have a particular interest in fast solvers for structure-preserving discretisations in atmospheric fluid dynamics. With Eike Müller, I developed a mesh-, and parameter- independent multigrid scheme for the mixed finite element discretisation proposed for the UK "GungHo" Dynamical Core project. We are presently working on multilevel schemes for the hybridised formulation of these equations, which should permit faster solvers. This latter work is in close collaboration with Colin Cotter, and Thomas Gibson.
Block preconditioners: software and numerics
For many challenging problems, the best performing preconditioning schemes exploit block factorisations and the development of PDE-specific approximations to the block inverses. With Rob Kirby, I developed a mechanism in Firedrake for simple user-defined preconditioners, significantly reducing the development effort necessary to employ optimal solvers in numerical models.
For block saddle-point systems, I am interested in augmented Lagrangian approaches, and am working on parameter robust methods for the Navier-Stokes equations with Patrick Farrell and Florian Wechsung. Having demonstrated the first method robust for three-dimensions, we are now looking at extending the analysis to exactly divergence-free discretisations.
- Innovative Computing
- Farrell, Patrick E., Mitchell, Lawrence & Wechsung, Florian (2019). An augmented Lagrangian preconditioner for the 3D stationary incompressible Navier-Stokes equations at high Reynolds number. SIAM Journal on Scientific Computing 41(5): A3073-A3096.
- Ham, David A., Mitchell, Lawrence, Paganini, Alberto & Wechsung, Florian (2019). Automated shape differentiation in the Unified Form Language. Structural and Multidisciplinary Optimization
- Kirby, Robert C & Mitchell, Lawrence (2019). Code generation for generally mapped finite elements. ACM Transactions on Mathematical Software
- Kirby, Robert C. & Mitchell, Lawrence (2018). Solver Composition Across the PDE/Linear Algebra Barrier. SIAM Journal on Scientific Computing 40(1): C76-C98.
- Kärnä, Tuomas, Kramer, Stephan C., Mitchell, Lawrence, Ham, David A., Piggott, Matthew D. & Baptista, António M. (2018). Thetis coastal ocean model: discontinuous Galerkin discretization for the three-dimensional hydrostatic equations. Geoscientific Model Development 11(11): 4359-4382.
- Homolya, Miklós, Mitchell, Lawrence, Luporini, Fabio & Ham, David A. (2018). TSFC: A Structure-Preserving Form Compiler. SIAM Journal on Scientific Computing 40(3): C401-C428.
- Rathgeber, Florian, Ham, David A., Mitchell, Lawrence, Lange, Michael, Luporini, Fabio, Mcrae, Andrew T. T., Bercea, Gheorghe-Teodor, Markall, Graham R. & Kelly, Paul H. J. (2017). Firedrake: automating the finite element method by composing abstractions. ACM Transactions on Mathematical Software 43(3): 24.
- Yamazaki, Hiroe, Shipton, Jemma, Cullen, Michael J.P., Mitchell, Lawrence & Cotter, Colin J. (2017). Vertical slice modelling of nonlinear Eady waves using a compatible finite element method. Journal of Computational Physics 343: 130-149.
- Bercea, Gheorghe-Teodor, McRae, Andrew T. T., Ham, David A., Mitchell, Lawrence, Rathgeber, Florian, Nardi, Luigi, Luporini, Fabio & Kelly, Paul H. J. (2016). A structure-exploiting numbering algorithm for finite elements on extruded meshes, and its performance evaluation in Firedrake. Geoscientific Model Development 9(10): 3803-3815.
- McRae, A. T. T., Bercea, G.-T., Mitchell, L., Ham, D. A. & Cotter, C. J. (2016). Automated Generation and Symbolic Manipulation of Tensor Product Finite Elements. SIAM Journal on Scientific Computing 38(5): S25-S47.
- Lange, Michael, Mitchell, Lawrence, Knepley, Matthew G. & Gorman, Gerard J. (2016). Efficient Mesh Management in Firedrake Using PETSc DMPlex. SIAM Journal on Scientific Computing 38(5): S143-S155.
- Mitchell, Lawrence & Müller, Eike Hermann (2016). High level implementation of geometric multigrid solvers for finite element problems: Applications in atmospheric modelling. Journal of Computational Physics 327: 1-18.
- Guo, Xiaohu, Lange, Michael, Gorman, Gerard, Mitchell, Lawrence & Weiland, Michèle (2015). Developing a scalable hybrid MPI/OpenMP unstructured finite element model. Computers & Fluids 110: 227-234.
- Mitchell, Lawrence, Sloan, Terence M., Mewissen, Muriel, Ghazal, Peter, Forster, Thorsten, Piotrowski, Michal & Trew, Arthur (2014). Parallel classification and feature selection in microarray data using SPRINT. Concurrency and Computation: Practice and Experience 26(4): 854-865.
- Neic, A., Liebmann, M., Hoetzl, E., Mitchell, L., Vigmond, E. J., Haase, G. & Plank, G. (2012). Accelerating Cardiac Bidomain Simulations Using Graphics Processing Units. IEEE Transactions on Biomedical Engineering 59(8): 2281-2290.
- Plank, Gernot, Smith, Nicolas, Mitchell, Lawrence & Niederer, Steven (2011). Simulating Human Cardiac Electrophysiology on Clinical Time-Scales. Frontiers in Physiology 2: 14.
- Mitchell, L. & Ackland, G. J. (2009). Boom and bust in continuous time evolving economic model. The European Physical Journal B 70(4): 567-573.
- Mitchell, Lawrence & Cates, Michael E. (2009). Hawkes process as a model of social interactions: a view on video dynamics. Journal of Physics A: Mathematical and Theoretical 43(4): 045101.
- Mitchell, L. & Ackland, G. J. (2007). Strategy bifurcation and spatial inhomogeneity in a simple model of competing sellers. Europhysics Letters (EPL) 79(4): 48003.
- Gibson, Thomas H., McRae, Andrew T. T., Cotter, Colin J., Mitchell, Lawrence & Ham, David A. (2019). Compatible finite element methods for geophysical flows: automation and implementation using Firedrake. Springer International Publishing.
- Tianjiao Sun, Lawrence Mitchell, Kaushik Kulkarni, Andreas Klöckner, David A. Ham & Paul H. J. Kelly (2019). A study of vectorization for matrix-free finite element methods.
- Thomas H. Gibson, Lawrence Mitchell, David A. Ham & Colin J. Cotter (2019). Slate: extending Firedrake's domain-specific abstraction to hybridized solvers for geoscience and beyond.