115
IRUS Total
Downloads
  Altmetric

Firedrake: automating the finite element method by composing abstractions

File Description SizeFormat 
1501.01809v3.pdfAccepted version599.82 kBAdobe PDFView/Open
a24-rathgeber.pdfPublished version1.39 MBAdobe PDFView/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:Faculty of Engineering
Mathematics
Computing
Applied Mathematics and Mathematical Physics
Faculty of Natural Sciences
Grantham Institute for Climate Change