FINGER: A Symbolic System for Automatic Generation of Numerical Programs in Finite Element Analysis
Journal of Symbolic Computation
A new family of mixed finite elements in IR3
Numerische Mathematik
Building domain-specific embedded languages
ACM Computing Surveys (CSUR) - Special issue: position statements on strategic directions in computing research
Automatic generation of finite-element code by simultaneous optimization of expressions
Theoretical Computer Science - Special volume on computer algebra
SPL: a language and compiler for DSP algorithms
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Functional Differentiation of Computer Programs
Higher-Order and Symbolic Computation
Design Patterns: Abstraction and Reuse of Object-Oriented Design
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
A compiler for variational forms
ACM Transactions on Mathematical Software (TOMS)
Lazy multivariate higher-order forward-mode AD
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Scientific Programming - Parallel/High-Performance Object-Oriented Scientific Computing (POOSC '05), Glasgow, UK, 25 July 2005
Nesting forward-mode AD in a functional framework
Higher-Order and Symbolic Computation
On the efficiency of symbolic computations combined with code generation for finite element methods
ACM Transactions on Mathematical Software (TOMS)
ACM Transactions on Mathematical Software (TOMS)
Unified framework for finite element assembly
International Journal of Computational Science and Engineering
Automated Code Generation for Discontinuous Galerkin Methods
SIAM Journal on Scientific Computing
DOLFIN: Automated finite element computing
ACM Transactions on Mathematical Software (TOMS)
Efficient Assembly of $H(\mathrm{div})$ and $H(\mathrm{curl})$ Conforming Finite Elements
SIAM Journal on Scientific Computing
Unified Embedded Parallel Finite Element Computations via Software-Based Fréchet Differentiation
SIAM Journal on Scientific Computing
Analysis of an Interface Stabilized Finite Element Method: The Advection-Diffusion-Reaction Equation
SIAM Journal on Numerical Analysis
Automated Solution of Differential Equations by the Finite Element Method: The FEniCS Book
Automated Solution of Differential Equations by the Finite Element Method: The FEniCS Book
SIAM Journal on Scientific Computing
Hi-index | 0.00 |
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.