Unified form language: A domain-specific language for weak formulations of partial differential equations
By M. Alnæs, Anders Logg, Kristian B. Ølgaard, Marie E. Rognes, Garth N. Wells. TOMS, 2012
705 citations recorded by the source corpus.
We present the Unified Form Language (UFL), which is a domain-specific language for representing weak formulations of partial differential equations with a view to numerical approximation. Features of UFL include support for variational forms and functionals, automatic differentiation of forms and expressions, arbitrary function space hierarchies for multifield problems, general differential operators and flexible tensor algebra. With these features, UFL has been used to effortlessly express finite element methods for complex systems of partial differential equations in near-mathematical notation, resulting in compact, intuitive and readable programs. We present in this work the language and its construction. An implementation of UFL is freely available as an open-source software library. The library generates abstract syntax tree representations of variational problems, which are used by other software libraries to generate concrete low-level implementations. Some application examples are presented and libraries that support UFL are highlighted.
Subfields: Computational Mechanics, Computer Graphics and Computer-Aided Design, Hardware and Architecture
View Paper: https://www.semanticscholar.org/paper/8e7ab565d5ef36cdaf686b1866cc8db39510473f
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Computational Mechanics
- Xiaoying Zhuang
- Cosmin Anitescu
- Timon Rabczuk
- Hongwei Guo
- Khader M. Hamdia
- Somdatta Goswami
- Paul H. J. Kelly
- Felix Lenders
In Computer Graphics and Computer-Aided Design
In Hardware and Architecture
- Miles Lubin
- Felix Lenders
- Simon W. Funke
- Marie E. Rognes
- Andreas Potschka
- Christian Kirches
- Iain Dunning
- Patrick E. Farrell
Citations in the corpus
- An Energy Approach to the Solution of Partial Differential Equations in Computational Mechanics via Machine Learning: Concepts, Implementation and Applications (2019, background): “Interfaces that allow to code in a readable languages like Python and the availability of optimized numerical algorithms leads to achieving a near-mathematical notation, reminiscent of computing plataforms like FEniCS [7].”
- Automated Derivation of the Adjoint of High-Level Transient Finite Element Programs (2012, methodology): “These components include the Unified Form Language (UFL) [2, 1], the FEniCS Form Compiler (FFC) [26], and DOLFIN [33, 34].”
- Firedrake (2015, background): “Previous work, most especially the Unified Form Language (UFL) [Alnæs et al. 2014] employed by the FEniCS project [Logg et al. 2012; Logg and Wells 2010], enables scientists to express PDEs in a high-productivity interpreted language close to the mathematics.”
- JuMP: A Modeling Language for Mathematical Optimization (2015, background): “…technical aspects of JuMP’s implementation in sufficient generality to apply broadly beyond the context of AMLs, in particular for the implementation of scientific domain-specific languages [74, 75, 2] and of automatic differentiation (AD) techniques for efficient computations of derivatives [41, 63].”
- trlib: a vector-free implementation of the GLTR method for iterative solution of the trust region problem (2016, background): “…responsible for holding vector-data and invokes the algorithm by repeated calls to the function trlib krylov min with integer and floating point workspace and dot products 〈v, g〉, 〈p,Hp〉 as arguments and in return receives status informations and instructions to be performed on the vectorial data.”