Escaping the abstraction: a foreign function interface for the Unified Form Language [UFL]

11/01/2021
by   Nacime Bouziani, et al.
0

High level domain specific languages for the finite element method underpin high productivity programming environments for simulations based on partial differential equations (PDE) while employing automatic code generation to achieve high performance. However, a limitation of this approach is that it does not support operators that are not directly expressible in the vector calculus. This is critical in applications where PDEs are not enough to accurately describe the physical problem of interest. The use of deep learning techniques have become increasingly popular in filling this knowledge gap, for example to include features not represented in the differential equations, or closures for unresolved spatiotemporal scales. We introduce an interface within the Firedrake finite element system that enables a seamless interface with deep learning models. This new feature composes with the automatic differentiation capabilities of Firedrake, enabling the automated solution of inverse problems. Our implementation interfaces with PyTorch and can be extended to other machine learning libraries. The resulting framework supports complex models coupling PDEs and deep learning whilst maintaining separation of concerns between application scientists and software experts.

READ FULL TEXT
research
08/31/2023

Bringing PDEs to JAX with forward and reverse modes automatic differentiation

Partial differential equations (PDEs) are used to describe a variety of ...
research
04/16/2021

Code generation for productive portable scalable finite element simulation in Firedrake

Creating scalable, high performance PDE-based simulations requires a sui...
research
05/02/2016

High level implementation of geometric multigrid solvers for finite element problems: applications in atmospheric modelling

The implementation of efficient multigrid preconditioners for elliptic p...
research
05/30/2023

Generating Finite Element Codes combining Adaptive Octrees with Complex Geometries

We present a high-level domain-specific language (DSL) interface to driv...
research
03/13/2023

Physics-driven machine learning models coupling PyTorch and Firedrake

Partial differential equations (PDEs) are central to describing and mode...
research
02/01/2018

Slate: extending Firedrake's domain-specific abstraction to hybridized solvers for geoscience and beyond

Within the finite element community, discontinuous Galerkin (DG) and mix...
research
08/20/2014

Code Generation for High-Level Synthesis of Multiresolution Applications on FPGAs

Multiresolution Analysis (MRA) is a mathematical method that is based on...

Please sign up or login with your details

Forgot password? Click here to reset