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
POST COMMENT

Comments

There are no comments yet.

Authors

page 6

07/10/2019

DeepXDE: A deep learning library for solving differential equations

Deep learning has achieved remarkable success in diverse applications; h...
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...
04/16/2021

Code generation for productive portable scalable finite element simulation in Firedrake

Creating scalable, high performance PDE-based simulations requires a sui...
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...
10/01/2018

Multiscale finite element calculations in Python using SfePy

SfePy (Simple finite elements in Python) is a software for solving vario...
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...
07/24/2018

Weakly-Supervised Deep Learning of Heat Transport via Physics Informed Loss

In typical machine learning tasks and applications, it is necessary to o...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.