FIREDRAKE '25: FIREDRAKE '25
PROGRAM FOR TUESDAY, SEPTEMBER 16TH
Days:
previous day
next day
all days

View: session overviewtalk overview

09:00-10:15 Session 6
09:00
Preconditioners for Multicomponent Flows
PRESENTER: Kars Knook

ABSTRACT. I will present a monolithic multigrid preconditioner with a block diagonal smoother for the Onsager--Stefan--Maxwell (OSM) equations, which is a general set of equations describing multicomponent flows, i.e. fluid mixtures. The preconditioner will be applied to a variety of multicomponent flow problems with diffusive, convective, nonideal mixing, thermal, pressure, electrochemical effects.

09:25
Domain decomposition methods in Firedrake
PRESENTER: Pablo Brubeck

ABSTRACT. We present domain decomposition preconditioners in Firedrake that are now supported via PETSc. These methods combine the solution of local subproblems with a coarse space to fully take advantage of parallel supercomputers.

A key new feature is the capability to construct multiple subdomains per parallel process. Combining this with sparsity-promoting finite elements leads to an efficient solver for high-order discretizations of elliptic PDEs. Our numerical examples highlight scalable and robust solvers across many parallel processes.

09:50
Firedrake on GPUs – the hands off way
PRESENTER: India Marsden

ABSTRACT. The ability to run Firedrake on GPUs has been explored through several avenues, including using Loopy to produce CUDA code, and offloading the solution of preassembled systems. In this project, we are aiming to investigate if it is feasible to use high level GPU abstractions, in particular Triton, to generate assembly kernels that bypass the need for Firedrake to handle the low-level code generation. This will allow utilization of the GPU-focused optimizations these libraries are designed to manage, leaving Firedrake developers and users to focus on the finite element aspects.

This talk will discuss the overall strategy of constructing these GPU-targeting kernels, Triton’s programming model and how we see it applying to the finite element assembly process, along with a description of progress made so far.

10:15-11:00Coffee Break
11:00-12:15 Session 7
11:00
Submesh in Firedrake
PRESENTER: Koki Sagiyama

ABSTRACT. We discuss integration of the submesh feature in Firedrake that enables one to extract parts of an existing mesh and make them work together to solve finite element problems. We discuss abstraction and the user interface, and then show two interesting applications: fluid-structure interaction benchmark problem [Turek, S., Hron, J. (2006). Proposal for Numerical Benchmarking of Fluid-Structure Interaction between an Elastic Object and Laminar Incompressible Flow. In: Bungartz, HJ., Schäfer, M. (eds) Fluid-Structure Interaction. Lecture Notes in Computational Science and Engineering, vol 53. Springer, Berlin, Heidelberg] and a quad-triangle mixed-cell-type problem.

11:25
Multigrid for Adaptively Refined Netgen Meshes
PRESENTER: Anurag Rao

ABSTRACT. We extend the Firedrake framework to support multigrid on hierarchies of adaptively refined meshes generated from an initial Netgen mesh, overcoming its current limitation to uniform refinement. Our implementation introduces a general transfer operator, integrated with the MeshHierarchy and TransferManager classes, enabling seamless coarse-to-fine communication in non-uniform refinement settings. Numerical experiments demonstrate that multigrid on adaptive hierarchies attains optimal convergence rates while outperforming uniform refinement in computational efficiency, highlighting the potential of adaptivity for large-scale finite element simulations.

11:50
Recent changes in the Firedrake software ecosystem

ABSTRACT. This past year has seen some major internal changes to how the Firedrake project operates. Some highlights include: dropping the 'firedrake-install' install script in favour of 'pip install firedrake', transitioning to supporting versioned releases, the release of mpi-pytest and petsctools as standalone packages to help the rest of the scientific community, and a fair amount more.

In this talk I will go over many of these changes, explaining both why and how they happened. The content should be of particular interest to maintainers of other scientific software packages, both those downstream of Firedrake and not, who may wish to adopt some of these techniques or packages for their own use.

12:15-14:15Lunch Break (DIY)
14:15-15:55 Session 8
14:15
A Robust Patch-wise Preconditioner for Mixed Poisson Equations
PRESENTER: Molin Han

ABSTRACT. We present a patch-wise preconditioning strategy for solving mixed Poisson-type equations using additive Schwarz method (ASM) line smoothers. A shifted preconditioner is employed to eliminate the pressure variable, reducing the system to a grad-div Helmholtz problem, which is then solved using a multigrid method with line smoothing. These systems are known to become ill-conditioned in the presence of small aspect ratio elements—a common challenge in ocean modeling. Our approach addresses this issue and is extensible to fully implicit solvers for nonlinear fluid equations. We then demonstrate the solver’s effectiveness and parameter robustness through numerical results and discuss why it is expected to work.

14:40
Finite Element approximation of a PDE-constrained Optimization problem for Data-Driven Computational Mechanics
PRESENTER: Roberto Ausas

ABSTRACT. In Data-Driven Computational Mechanics, the core problem involves solving a PDE-constrained optimization to find continuous primal fields, typically gradients and fluxes, that best approximate predefined discrete fields from a material (constitutive) dataset. The optimization is performed over primal fields satisfying a conservation law (here, a diffusion-reaction problem) and a compatibility condition linking the scalar potential field to its gradient.

This work presents stable finite element formulations for the optimality conditions, ensuring an accurate approximation of the continuous problem while preserving its saddle-point structure and enabling equal-order interpolation. We demonstrate the effectiveness of our approach through several numerical examples implemented in Firedrake.

15:05
Mesh independent adaptive PDE-constrained optimization
PRESENTER: Stephan Kramer

ABSTRACT. One of the powerful features of the Firedrake Finite Element framework is the ready availability of a fully automated adjoint providing gradient information which can be used to drive gradient-based optimisation algorithms. As has been argued by a number of authors, to obtain mesh-independent convergence, it is important to formulate the optimisation problem and algorithm in an appropriate, mesh-independent inner product (Hilbert) space rather than solving the discretised problem in the associated Euclidean discretised space. This is in particular important for non-uniform, unstructured meshes. Such meshes allow focusing of resolution in areas of importance, e.g. areas of high curvature of the solution. Since these areas are not necessarily known in advance, mesh adaptivity can be used to dynamically adapt the mesh as the solution evolves, in time, but also during an optimisation. This combination of mesh adaptivity and optimisation brings with it its own set of challenges that we will discuss in this contribution. In a number of test cases we will show that mesh-independent convergence can be obtained in mesh-adaptive, PDE-constrained problems. Moreover, we will demonstrate that even in quasi-Newton optimisation approaches, the mesh adaptivity can be integrated in the optimisation loop, rather than having to fully restart the algorithm after each adapt, thus avoiding the loss of built-up scaling information and the Hessian approximation.

15:30
Automated goal-based adaptive refinement for PDEs and eigenproblems
PRESENTER: Joseph Flood

ABSTRACT. We extend the Firedrake framework with an automated goal-based adaptive meshing solver for PDEs and eigenproblems. For PDEs, the user provides the UFL form, a target functional J(u), and a tolerance; the solver estimates the goal error |J(u)-J(u_h)| and refines cells in the mesh that contribute most to this error, iterating until the tolerance is met. For eigenproblems, the user provides a target eigenvalue, and the solver minimises the error in the closest eigenvalue, |λ-λ_h|.

A major barrier to adoption of goal-based adaptivity has been the requirement for error estimators to be manually derived for each PDE problem. Our solver removes the need for manual derivations by automatically computing local error estimators, making goal-based adaptivity accessible to those without specialist expertise (in the dual-weighted residual method, the theory upon which our solver lies).

For PDEs, we demonstrate efficiency on standard benchmark problems, including mixed formulations such as weakly symmetric linear elasticity. For eigenproblems, we demonstrate strong results for Maxwell and Stokes problems.

15:55-16:30Coffee Break
16:30-18:15 Session 9: Firedrake clinic

This is an opportunity to get some time with a Firedrake developer to discuss how to better use Firedrake for your applications, or for an in-depth discussion with a developer about your feature wish-list.