previous day
all days

View: session overviewtalk overview

09:30-10:30 Session 5: Waving, not drowning
Variational finite element water wave modelling, with wave flaps, beaches and overturning waves

ABSTRACT. Recent progress in Leeds on several variational finite element approaches to model water waves using Firedrake will be summarised (work with/by Floriane Gidel, Tomasz Salwa, Mark Kelmanson and Anna Kalogirou).

A classical potential flow approach to model three dimensional water waves with a free surface has been implemented in Firedrake by taking variations of a spatial-temporal discretisation of Luke's or Miles' variational principle. To circumvent dealing with two and three dimensional functions and mesh motion in one (Firedrake) formulation, the variational principle was first reduced to two horizontal dimensions using a (Lagrangian) polynomial discretisation in the vertical for non-breaking waves. By introducing a beach on one side of the domain, wave breaking in shallow water is used to dampen the energy supplied by a moving wave maker on the other side of the domain. We will show how the potential flow approach for water waves in deep water is successfully coupled to a finite volume shallow water method at the beach, in Firedrake.

To deal with breaking waves, especially near moving offshore structures such as a wind turbine mast, we have explored a compressible pseudo-two-phase formulation. It uses a Van-der-Waals-type equation of state, mimicking air and water, and still allows a potential-flow Ansatz, such that we can again use a variational methodology similar to the one used to model classical deep water waves. Preliminary results will be shown.

Finally, Luke's variational formulation of water wave dynamics with a single-valued or even overturning free surface can be reformulated into a fixed domain by using a (curvilinear) coordinate transformation. Once the variational principle is discretised this coordinate transformation represents the mesh motion. Key issue is to carefully "integrate" this mesh motion or coordinate transform within the variation principle. Hitherto it has been unclear whether such combined mesh motion and variational dynamics can be formulated within Firedrake. This will be a point for discussion.

Firedrake simulations of stairsteps in stably-stratified fluids
SPEAKER: Paul Burns

ABSTRACT. Our main aim is to improve the understanding of how wave/mean-flow interactions affect the development and longevity of the staircase phenomena of stably-stratified fluids. Firedrake’s FEM numerics make it ideal for performing large aspect ratio basin-scale simulations of stairstep development in the Arctic ocean, which we plan to compare to existing observations. We discuss some preliminary Firedrake simulations of stairstep development of a more idealised lab experiment; our starting point before moving to a more realistic example. Challenges of numerical stability are outlined.

11:15-12:15 Session 6: Optimisation
Modeling and control of smart structures
SPEAKER: Julian Andrej

ABSTRACT. In this talk we present an insight into our research with smart structures. Starting with a simple one dimensional model we show a proof of concept feedforward control approach for a Microfiber Composite (MFC) patch on a carbon fiber supply beam. Furthermore we discuss ongoing work for a smart wingsail which is completely modeled in firedrake to identify material parameters of the steady-state and transient part.

Additionally we show results of a method on how to incorporate a model order reduction operator as a preconditioner in firedrake to develop a flatness based feedforward control for an artificial fish tail.

Eulerian Metamorphosis

ABSTRACT. Matching of two images that are not diffeomorphic represents a central problem in computational anatomy and diffeomorphometry. Although previous work has rigorously defined suitable Riemannian metrics and geodesics describing such matchings, numerical analysis leading to fast, tractable algorithms is still in its infancy. We interpret this metric as a PDE-constrained optimisation problem and perform the analysis in a Eulerian frame leading to a coupled boundary-value type system of continuity and transport equations. In a Hilbertian space-time setting we obtain trace and Poincaré-type results used to prove existence and uniqueness. Firedrake and its adjoint framework is used to approximate solutions to our stable conforming and nonconforming discretisations. Finally we discuss how our approach to diffeomorphometry can be improved by future extensions to the Firedrake framwork.

Fireshape: a shape optimization library for Firedrake

ABSTRACT. Fireshape is a shape optimization library for Firedrake. The library can tackle optimization problems constrained by PDEs and offers the following features: decoupled discretization of control and state variables, automatic derivation of shape derivatives and adjoint equations, different metrics to define shape gradients, and numerous optimization algorithms. The shape optimization knowledge required to use this library is minimal.

14:00-15:00 Session 7: Time and tide
Thetis, a coastal ocean model based on Firedrake

ABSTRACT. The modelling of coastal ocean flows poses a number of specific numerical challenges due to the large range of temporal and spatial scales, the complex geometry including wetting and drying, and the intricate nature of 3D baroclinic dynamics. Thetis is a coastal ocean model, in two and three dimensions, that is based on Firedrake. The flexibility of the Firedrake framework has allowed us to implement and evaluate a number of finite element discretisations to meet these challenges. In addition, through dolfin-adjoint, the model is fully adjointed and can be used in combination with powerful gradient-based optimisation techniques.

In this presentation I will focus on a number of applications in the UK coastal zone. It is a tidally dynamic region with some locally, very high tidal currents and tidal ranges. It is therefore of prime interest to the nascent tidal renewable energy sector. The various planned projects require extensive numerical modelling to predict potential power production and impacts on the environment. I will demonstrate the power of Firedrake's adjoint capabilities to study sensitivity and model uncertainty, and in particular of gradient-based optimisation techniques to improve the design of tidal energy projects.

Optimisation of tidal turbine arrays in the English Channel with Firedrake Thetis

ABSTRACT. Predictability of supply hinders the uptake of renewables, but the regularity of tides makes them an attractive option, particularly for the UK. However, tidal energy is a fledgling industry, with the world's first pilot array only recently installed. The first full-sized arrays will only be developed if they are seen to be viable from economic, engineering and environmental perspectives. Advanced numerical tools are needed to predict and maximise power yields in arrays of up to hundreds of turbines, to assess viability of new sites and aid array design.

To demonstrate our recently developed ability to computationally optimise the number of turbines and their spatial distribution in a region, we focus on a test case based upon the Alderney Race; a potential array location for both France and the UK. It contains the majority of the Channel Islands resource and is of particular interest due to adjacent array plots in the Alderney and French Territorial Waters, which may impact on each other with large scale blockage effects.

We have set up a shallow water model of the English Channel using Firedrake's Thetis coastal ocean model. We employ finite-element based numerical methods to solve the hydrodynamics along with adjoint technology for optimisation of the number and location of turbines within an array. The model is initially validated against tide gauge data.

Numerical tsunami simulation using goal-oriented mesh adaptivity
SPEAKER: Joe Wallwork

ABSTRACT. An anisotropic mesh adaptive shallow water solver is created for tsunami modelling, building upon work in the Firedrake and Thetis projects. The former provides efficient, finite element solving software and the latter specialises to coastal, estuarine and ocean modelling applications, on unstructured meshes. A variety of a posteriori error estimates are considered, including those based on reconstructed Hessian information, residual approximations and implicit error estimates. Numerical solutions of the adjoint shallow water equations are considered for weighting such error estimates, providing a goal-oriented approach.

This work enables the efficient generation of numerical solutions to tsunami wave propagation problems using the shallow water equations. The case study of the 2011 Tohoku tsunami is considered, for which leading tsunami waves reached the Japanese coast in just ten minutes. Results indicate that, under mesh adaptivity, computational cost can be reduced, whilst retaining a sufficiently high accuracy in terms of the relative error in computing an objective functional of interest. Through establishing an efficient approach to numerical tsunami simulation, sufficient warning could be provided in future scenarios, allowing for evacuation and damage mitigation in coastal areas determined most at risk.

15:30-16:10 Session 8: Performance
Automated cross element vectorization in Firedrake
SPEAKER: Tianjiao Sun

ABSTRACT. Modern CPUs increasingly rely on SIMD instructions to achieve higher throughput and better energy efficiency. It is therefore important to vectorize sequences of computations in order to sufficiently utilize the hardware today and in the future. This requires the instructions to operate on a group of data that are multiples of the width of the vector lane (e.g. 4 doubles, 8 floats on AVX2 instructions). The assembly kernels that appear in typical finite element computations suffer from issues that often preclude efficient vectorization. These include complicated loop structure, poor data access patterns, and loop trip counts that are not multiples of the vector width. General purpose compilers often perform poorly in generating efficient, vectorized code for such kernels.

In this work, we present a generic and portable solution in Firedrake based on cross element vectorization. Although vector-expanding the assembly kernel is conceptually clear, it is only enabled by applying a chain of complicated loop transformations. is a Python package which defines array-style computations in integer polyhedral model, and supports a rich family of transformations that operate on this model. In Firedrake, We adapt the form compiler, TSFC, to generate kernels for local assembly operations, and systematically generate data gathering and scattering operations across the mesh in PyOP2. Firedrake drives loop transformations using from this high level interface to generate efficient code vectorized across a group of elements which fully utilizes the vector lane. This toolchain automates the tedious and error-prone process of data layout transformation, loop unrolling and loop interchange, while being transparent to the users.

We will present experimental results performed on multiple kernels and meshes. We achieve speed ups consistent with the vector architecture available compared to baseline which vectorizes inside the local assembly kernels. The global assembly computations reach tens of percent of hardware peak arithmetic performance.

Exposing and exploiting structure: optimal code generation for high-order finite element methods
SPEAKER: Robert Kirby

ABSTRACT. Code generation based software platforms, such as Firedrake, have become popular tools for developing complicated finite element discretisations of partial differential equations. We extended the code generation infrastructure in Firedrake with optimisations that can exploit the structure inherent to some finite elements. This includes sum factorisation on cuboid cells for continuous, discontinuous, H(div) and H(curl) conforming elements. Our experiments confirm optimal algorithmic complexity for high-order finite element assembly. This is achieved through several novel contributions: the introduction of a more powerful interface between the form compiler and the library providing the finite elements; a more abstract, smarter library of finite elements called FInAT that explicitly communicates the structure of elements; and form compiler algorithms to automatically exploit this exposed structure.