UFL
Unified form language: a domain-specific language for weak formulations of partial differential equations. 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.
This software is also peer reviewed by journal TOMS.
This software is also peer reviewed by journal TOMS.
Keywords for this software
References in zbMATH (referenced in 50 articles , 1 standard article )
Showing results 1 to 20 of 50.
Sorted by year (- Bazilevs, Yuri; Kamensky, David; Moutsanidis, Georgios; Shende, Shaunak: Residual-based shock capturing in solids (2020)
- Dedner, Andreas; Klöfkorn, Robert: A Python framework for solving advection-diffusion problems (2020)
- Evans, John A.; Kamensky, David; Bazilevs, Yuri: Variational multiscale modeling with discretely divergence-free subscales (2020)
- Jahn, Mischa; Montalvo-Urquizo, Jonathan: Modeling and simulation of keyhole-based welding as multi-domain problem using the extended finite element method (2020)
- Roy, Thomas; Jönsthövel, Tom B.; Lemon, Christopher; Wathen, Andrew J.: A constrained pressure-temperature residual (CPTR) method for non-isothermal multiphase flow in porous media (2020)
- Samaniego, E.; Anitescu, C.; Goswami, S.; Nguyen-Thanh, V. M.; Guo, H.; Hamdia, K.; Zhuang, X.; Rabczuk, Timon: An energy approach to the solution of partial differential equations in computational mechanics via machine learning: concepts, implementation and applications (2020)
- Breckling, Sean; Shields, Sidney: The long-time (L^2) and (H^1) stability of linearly extrapolated second-order time-stepping schemes for the 2D incompressible Navier-Stokes equations (2019)
- Dedner, Andreas; Kane, Birane; Klöfkorn, Robert; Nolte, Martin: Python framework for hp-adaptive discontinuous Galerkin methods for two-phase flow in porous media (2019)
- Farrell, Patrick E.; Mitchell, Lawrence; Wechsung, Florian: An augmented Lagrangian preconditioner for the 3D stationary incompressible Navier-Stokes equations at High Reynolds number (2019)
- Farrell, P. E.; Hake, J. E.; Funke, S. W.; Rognes, M. E.: Automated adjoints of coupled PDE-ODE systems (2019)
- Gillette, Andrew; Kloefkorn, Tyler; Sanders, Victoria: Computational serendipity and tensor product finite element differential forms (2019)
- Joshaghani, M. S.; Joodat, S. H. S.; Nakshatrala, K. B.: A stabilized mixed discontinuous Galerkin formulation for double porosity/permeability model (2019)
- Kamensky, David; Bazilevs, Yuri: \textsctIGAr: automating isogeometric analysis with \textscFEniCS (2019)
- Maddison, James R.; Goldberg, Daniel N.; Goddard, Benjamin D.: Automated calculation of higher order partial differential equation constrained derivative information (2019)
- Breckling, Sean; Neda, Monika; Pahlevani, Fran: A sensitivity study of the Navier-Stokes-(\alpha) model (2018)
- Budd, Chris J.; McRae, Andrew T. T.; Cotter, Colin J.: The scaling and skewness of optimally transported meshes on the sphere (2018)
- Helanow, Christian; Ahlkrona, Josefin: Stabilized equal low-order finite elements in ice sheet modeling -- accuracy and robustness (2018)
- Homolya, Miklós; Mitchell, Lawrence; Luporini, Fabio; Ham, David A.: TSFC: a structure-preserving form compiler (2018)
- Joodat, S. H. S.; Nakshatrala, K. B.; Ballarini, R.: Modeling flow in porous media with double porosity/permeability: a stabilized mixed formulation, error analysis, and numerical solutions (2018)
- Kirby, Robert C.: A general approach to transforming finite elements (2018)