Andrew T. T. McRae
Imperial College London
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Andrew T. T. McRae.
ACM Transactions on Mathematical Software | 2017
Florian Rathgeber; David A. Ham; Lawrence Mitchell; Fabio Luporini; Andrew T. T. McRae; Gheorghe-Teodor Bercea; Graham Markall; Paul H. J. Kelly
Firedrake is a new tool for automating the numerical solution of partial differential equations. Firedrake adopts the domain-specific language for the finite element method of the FEniCS project, but with a pure Python runtime-only implementation centred on the composition of several existing and new abstractions for particular aspects of scientific computing. The result is a more complete separation of concerns which eases the incorporation of separate contributions from computer scientists, numerical analysts and application specialists. These contributions may add functionality, or improve performance. Firedrake benefits from automatically applying new optimisations. This includes factorising mixed function spaces, transforming and vectorising inner loops, and intrinsically supporting block matrix operations. Importantly, Firedrake presents a simple public API for escaping the UFL abstraction. This allows users to implement common operations that fall outside pure variational formulations, such as flux-limiters.
Quarterly Journal of the Royal Meteorological Society | 2014
Andrew T. T. McRae; Colin J. Cotter
This article presents families of spatial discretizations of the nonlinear rotating shallow-water equations that conserve both energy and potential enstrophy. These are based on two-dimensional mixed finite-element methods and hence, unlike some finite-difference methods, do not require an orthogonal grid. Numerical verification of the aforementioned properties is also provided.
SIAM Journal on Scientific Computing | 2016
Andrew T. T. McRae; Gheorghe-Teodor Bercea; Lawrence Mitchell; David A. Ham; Colin J. Cotter
We describe and implement a symbolic algebra for scalar and vector-valued finite elements, enabling the computer generation of elements with tensor product structure on quadrilateral, hexahedral and triangular prismatic cells. The algebra is implemented as an extension to the domain-specific language UFL, the Unified Form Language. This allows users to construct many finite element spaces beyond those supported by existing software packages. We have made corresponding extensions to FIAT, the FInite element Automatic Tabulator, to enable numerical tabulation of such spaces. This tabulation is consequently used during the automatic generation of low-level code that carries out local assembly operations, within the wider context of solving finite element problems posed over such function spaces. We have done this work within the code-generation pipeline of the software package Firedrake; we make use of the full Firedrake package to present numerical examples.
SIAM Journal on Scientific Computing | 2018
Andrew T. T. McRae; Colin J. Cotter; Chris Budd
In moving mesh methods, the underlying mesh is dynamically adapted without changing the connectivity of the mesh. We specifically consider the generation of meshes which are adapted to a scalar monitor function through equidistribution. Together with an optimal transport condition, this leads to a Monge-Amp\`ere equation for a scalar mesh potential. We adapt an existing finite element scheme for the standard Monge-Amp\`ere equation to this mesh generation problem; this is a mixed finite element scheme, in which an extra discrete variable is introduced to represent the Hessian matrix of second derivatives. The problem we consider has additional nonlinearities over the basic Monge-Amp\`ere equation due to the implicit dependence of the monitor function on the resulting mesh. We also derive the equivalent Monge-Amp\`ere-like equation for generating meshes on the sphere. The finite element scheme is extended to the sphere, and we provide numerical examples. All numerical experiments are performed using the open-source finite element framework Firedrake.
Journal of Computational Physics | 2018
Chris Budd; Andrew T. T. McRae; Colin J. Cotter
Abstract In the context of numerical solution of PDEs, dynamic mesh redistribution methods (r-adaptive methods) are an important procedure for increasing the resolution in regions of interest, without modifying the connectivity of the mesh. Key to the success of these methods is that the mesh should be sufficiently refined (locally) and flexible in order to resolve evolving solution features, but at the same time not introduce errors through skewness and lack of regularity. Some state-of-the-art methods are bottom-up in that they attempt to prescribe both the local cell size and the alignment to features of the solution. However, the resulting problem is overdetermined, necessitating a compromise between these conflicting requirements. An alternative approach, described in this paper, is to prescribe only the local cell size and augment this an optimal transport condition to provide global regularity. This leads to a robust and flexible algorithm for generating meshes fitted to an evolving solution, with minimal need for tuning parameters. Of particular interest for geophysical modelling are meshes constructed on the surface of the sphere. The purpose of this paper is to demonstrate that meshes generated on the sphere using this optimal transport approach have good a-priori regularity and that the meshes produced are naturally aligned to various simple features. It is further shown that the spheres intrinsic curvature leads to more regular meshes than the plane. In addition to these general results, we provide a wide range of examples relevant to practical applications, to showcase the behaviour of optimally transported meshes on the sphere. These range from axisymmetric cases that can be solved analytically to more general examples that are tackled numerically. Evaluation of the singular values and singular vectors of the mesh transformation provides a quantitative measure of the mesh anisotropy, and this is shown to match analytic predictions.
Geoscientific Model Development | 2013
Marie E. Rognes; David A. Ham; Colin J. Cotter; Andrew T. T. McRae
Archive | 2016
Florian Rathgeber; Hector Dearman; gbts; Gheorghe-Teodor Bercea; Kaho Sato; Simon W. Funke; Lawrence Mitchell; Miklós Homolya; Francis Russell; Christian T. Jacobs; David A. Ham; Andrew T. T. McRae; Graham Markall; Fabio Luporini
Archive | 2016
Marie E. Rognes; Colin J. Cotter; Robert C. Kirby; Garth N. Wells; Anders Logg; Lizao Li; Johannes Ring; Jan Blechta; Miklós Homolya; Martin Sandve Alnæs; Nico Schlömer; David A. Ham; mliertzer; Aslak Bergersen; Andrew T. T. McRae; Florian Rathgeber; Lawrence Mitchell
Geoscientific Model Development | 2016
Gheorghe-Teodor Bercea; Andrew T. T. McRae; David A. Ham; Lawrence Mitchell; Florian Rathgeber; Luigi Nardi; Fabio Luporini; Paul H. J. Kelly
Archive | 2016
Lawrence Mitchell; Colin J. Cotter; Gheorghe-Teodor Bercea; Asbjørn Nilsen Riseth; Simon W. Funke; Graham Markall; Eike Hermann Mueller; Tuomas Kärnä; Patrick E. Farrell; Geordie McBain; Miklós Homolya; Henrik Büsing; Anna Kalogirou; Christian T. Jacobs; David A. Ham; Andrew T. T. McRae; Florian Rathgeber; Hannah Rittich; Stephan C. Kramer; Fabio Luporini