154
IRUS TotalDownloads
Altmetric
Firedrake: automating the finite element method by composing abstractions
File | Description | Size | Format | |
---|---|---|---|---|
1501.01809v3.pdf | Accepted version | 599.82 kB | Adobe PDF | View/Open |
a24-rathgeber.pdf | Published version | 1.39 MB | Adobe PDF | View/Open |
Title: | Firedrake: automating the finite element method by composing abstractions |
Authors: | Mitchell, L Ham, DA McRae, ATT Rathgeber, F Lange, M Luporini, F Bercea, G-T Markall, G Kelly, PHJ |
Item Type: | Journal Article |
Abstract: | 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. |
Issue Date: | 1-Jan-2017 |
Date of Acceptance: | 1-Sep-2016 |
URI: | http://hdl.handle.net/10044/1/40323 |
DOI: | 10.1145/2998441 |
ISSN: | 1557-7295 |
Publisher: | Association for Computing Machinery |
Start Page: | 1 |
End Page: | 27 |
Journal / Book Title: | ACM Transactions on Mathematical Software |
Volume: | 43 |
Issue: | 3 |
Copyright Statement: | This work is licensed under a Creative Commons Attribution International 4.0 License. |
Sponsor/Funder: | Engineering & Physical Science Research Council (EPSRC) Natural Environment Research Council (NERC) Engineering & Physical Science Research Council (EPSRC) Natural Environment Research Council (NERC) Natural Environment Research Council (NERC) Engineering & Physical Science Research Council (EPSRC) Engineering & Physical Science Research Council (EPSRC) |
Funder's Grant Number: | EP/I00677X/1 NE/I021098/1 EP/I012036/1 NE/K008951/1 NE/K006789/1 EP/L000407/1 EP/M011054/1 |
Keywords: | Science & Technology Technology Physical Sciences Computer Science, Software Engineering Mathematics, Applied Computer Science Mathematics Abstraction code generation UFL PARALLEL cs.MS cs.MS cs.NA math.NA G.1.8; G.4 Numerical & Computational Mathematics 0802 Computation Theory and Mathematics 0806 Information Systems |
Publication Status: | Published |
Article Number: | ARTN 24 |
Online Publication Date: | 2016-12-21 |
Appears in Collections: | Computing Applied Mathematics and Mathematical Physics Grantham Institute for Climate Change Faculty of Natural Sciences Faculty of Engineering Mathematics |