Unified Form Language: A Domain-Specific Language for Weak Formulations of Partial Differential Equations

被引:341
作者
Alnaes, Martin S. [1 ]
Logg, Anders [1 ,2 ]
Olgaard, Kristian B. [3 ]
Rognes, Marie E. [1 ]
Wells, Garth N. [4 ]
机构
[1] Simula Res Lab, Ctr Biomed Comp, N-1325 Lysaker, Norway
[2] Univ Oslo, N-0316 Oslo, Norway
[3] Aalborg Univ, Dept Civil Engn, DK-6700 Esbjerg, Denmark
[4] Univ Cambridge, Dept Engn, Cambridge CB2 1PZ, England
来源
ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE | 2014年 / 40卷 / 02期
关键词
Algorithms; Design; Languages; AD; algorithmic differentiation; automatic functional differentiation; discretization; domain specific language; DSEL; DSL; einstein notation; embedded language; FEM; finite element method; functional; implicit summation; index notation; mixed element; partial differential equation; PDE; symbolic differentiation; tensor algebra; weak form; weak formulation; FINITE-ELEMENT-METHOD; CODE GENERATION; COMPUTATIONS; FRAMEWORK;
D O I
10.1145/2566630
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页数:37
相关论文
共 51 条
  • [1] Abert C., 2012, J MAGN MAGN MAT
  • [2] Unified framework for finite element assembly
    Alnaes, M. S.
    Logg, A.
    Mardal, K-A.
    Skavhaug, O.
    Langtangen, H. P.
    [J]. INTERNATIONAL JOURNAL OF COMPUTATIONAL SCIENCE AND ENGINEERING, 2009, 4 (04) : 231 - 244
  • [3] Alnaes M.S., 2012, LECT NOTES COMPUTATI, V84
  • [4] Alnaes M. S., 2009, THESIS U OSLO
  • [5] Alnaes M. S., 2012, LECT NOTES COMPUTATI, V84
  • [6] On the Efficiency of Symbolic Computations Combined with Code Generation for Finite Element Methods
    Alnaes, Martin Sandve
    Mardal, Kent-Andre
    [J]. ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2010, 37 (01):
  • [7] Alnas M.S., 2012, Automated Solution of Differential Equations by the Finite Element Method, P273, DOI [DOI 10.1007/978-3-642-23099-8_5, 10.1007/978-3-642-23099-8]
  • [8] Arnold D. N., 1984, Calcolo, V21, P337, DOI 10.1007/BF02576171
  • [9] Arnold D. N., 2012, ARXIV12124472
  • [10] AN INTERIOR PENALTY FINITE-ELEMENT METHOD WITH DISCONTINUOUS ELEMENTS
    ARNOLD, DN
    [J]. SIAM JOURNAL ON NUMERICAL ANALYSIS, 1982, 19 (04) : 742 - 760