Slate: extending Firedrake's domain-specific abstraction to hybridized solvers for geoscience and beyond
arXiv:1802.00303 · doi:10.5194/gmd-13-735-2020
Abstract
Within the finite element community, discontinuous Galerkin (DG) and mixed finite element methods have become increasingly popular in simulating geophysical flows. However, robust and efficient solvers for the resulting saddle-point and elliptic systems arising from these discretizations continue to be an on-going challenge. One possible approach for addressing this issue is to employ a method known as hybridization, where the discrete equations are transformed such that classic static condensation and local post-processing methods can be employed. However, it is challenging to implement hybridization as performant parallel code within complex models, whilst maintaining separation of concerns between applications scientists and software experts. In this paper, we introduce a domain-specific abstraction within the Firedrake finite element library that permits the rapid execution of these hybridization techniques within a code-generating framework. The resulting framework composes naturally with Firedrake's solver environment, allowing for the implementation of hybridization and static condensation as runtime-configurable preconditioners via the Python interface to PETSc, petsc4py. We provide examples derived from second order elliptic problems and geophysical fluid dynamics. In addition, we demonstrate that hybridization shows great promise for improving the performance of solvers for mixed finite element discretizations of equations related to large-scale geophysical flows.
arXiv commentRevisions for submission to GMD
References in corpus (13)
- DOLFIN: Automated Finite Element Computing
- Firedrake: automating the finite element method by composing abstractions
- A compiler for variational forms
- Mixed finite elements for numerical weather prediction
- A performance comparison of continuous and discontinuous Galerkin methods with fast multigrid solvers
- Solver composition across the PDE/linear algebra barrier
- TSFC: a structure-preserving form compiler
- Automated generation and symbolic manipulation of tensor product finite elements
- Higher-order compatible finite element schemes for the nonlinear rotating shallow water equations on the sphere
- Compatible finite element spaces for geophysical fluid dynamics
- Energy-enstrophy conserving compatible finite element schemes for the rotating shallow water equations with slip boundary conditions
- A variational H(div) finite element discretisation approach for perfect incompressible fluids
- High level implementation of geometric multigrid solvers for finite element problems: applications in atmospheric modelling
Cited by in corpus (8)
- A Compatible Finite Element Discretisation for the Moist Compressible Euler Equations
- Multigrid preconditioners for the mixed finite element dynamical core of the LFRic atmospheric model
- Accelerating linear solvers for Stokes problems with C++ metaprogramming
- Hybridization and postprocessing in finite element exterior calculus
- A linearly-implicit energy-momentum preserving scheme for geometrically nonlinear mechanics based on non-canonical Hamiltonian formulations
- A nonconforming primal hybrid finite element method for the two-dimensional vector Laplacian
- asQ: parallel-in-time finite element simulations using ParaDiag for geoscientific models and beyond
- Improving the accuracy of discretisations of the vector transport equation on the lowest-order quadrilateral Raviart-Thomas finite elements