Numerical methods for Stokes flow

Stokes flow arises in many applications, including modelling ice sheets, lava and polymers. This type of viscous flow is described by the Stokes equations, which couple together the fluid’s velocity and pressure. Often, fine resolution solutions of the Stokes equations are required in applications, the computation of which requires sophisticated numerical methods.

This course will discuss how to efficiently solve Stokes problems from start to finish. We will look at the wellposedness of these equations and their discretisation by a Galerkin finite element method. A key component of finite element (and other) discretisations is the solution of a system of equations with a large, sparse coefficient matrix. These linear systems are typically solved by preconditioned Krylov subspace methods, a family of iterative methods that exploit sparsity.

The techniques learnt here can be applied to other differential equations, and other linear systems of equations.

Course Outline

1. Stokes flow: motivation and inf-sup conditions
We will introduce and motivate the Stokes equations before deriving the weak form. This will enable us to relate the Stokes equations to a constrained optimisation problem that leads naturally to the inf-sup condition for wellposedness of Stokes problems.
2. The finite element method for Stokes problems
We will start by deriving the finite element method for a Poisson problem, before developing mixed finite element methods for the Stokes equations. A key issue, on which we will focus, is understanding when a discrete inf-sup condition holds.
3. Iterative methods for the Stokes equations
To obtain the finite element solution to the Stokes equations we must solve a linear system. The final part of this course investigates how to do this using Krylov subspace methods. We will use the MINRES method, and will look at how to accelerate its convergence rate by preconditioning.

Pre-requisites

The lectures require basic knowledge of linear algebra and partial differential equations. Proficiency in MATLAB is also required.

Access lecture notes for this course