School of Computing and Mathematics

Faculty of Natural Sciences

For academic year: 2020/21 Last Updated: 25 February 2021

MAT-40014 - Numerical Modelling with Partial Differential Equations

None

MAT-30003 Partial Differential Equations

None

The numerical solution of partial differential equations occurs in a vast array of scientific disciplines and is a staple of modern applied mathematics. From modelling the weather and climate, designing racing cars, planes, renewable technologies, even bridges and buildings, not to mention contagious disease spread, molecular dynamics, traffic flow and any number of industrial processes. This module aims to give the students a thorough grounding in the fundamentals of numerical modelling with a strong emphasis on practical work so that they become comfortable programming mathematical models in a modern language with broad applicability. By the end of the module the students will have confidence tackling various modelling tasks and experienced enough to easily pick up new programming languages.

The principle aim of this module is to give students a grounding in the methods used for solving partial differential equations numerically. The majority of the module will be concerned with finite-difference methods and we will create example code using the python programming language.

write well commented and structured python code with appropriate use of python modules for scientific computing and be able to debug their code: 2,3

by performing numerical experiments determine effectiveness of numerical solutions of hyperbolic PDEs using a variety of finite difference schemes: 2,3

program and evaluate various methods for solving linear systems of equations, in particular for solving discretised elliptic PDEs and implicit schemes for parabolic PDEs: 2,3

conduct von Neumann stability analysis, evaluating the outcomes to determine the stability properties of certain finite difference schemes: 1,2,3

evaluate the order of accuracy of a finite difference scheme via its truncation error: 1,2,3

define and apply numerical convergence, stability and the Lax Equivalence Theorem: 1,2,3

appraise finite-volume, finite-element and spectral methods in the context of the wider field of numerical methods for partial differential equations: 1

by performing numerical experiments determine effectiveness of numerical solutions of hyperbolic PDEs using a variety of finite difference schemes: 2,3

program and evaluate various methods for solving linear systems of equations, in particular for solving discretised elliptic PDEs and implicit schemes for parabolic PDEs: 2,3

conduct von Neumann stability analysis, evaluating the outcomes to determine the stability properties of certain finite difference schemes: 1,2,3

evaluate the order of accuracy of a finite difference scheme via its truncation error: 1,2,3

define and apply numerical convergence, stability and the Lax Equivalence Theorem: 1,2,3

appraise finite-volume, finite-element and spectral methods in the context of the wider field of numerical methods for partial differential equations: 1

24 hours recorded lectures.

24 hours lab class.

40 hours for preparation of project 1.

40 hours for preparation of project 2.

70 hours spent on weekly formative programming exercises, problems and independent study.

2 hours final exam.

24 hours lab class.

40 hours for preparation of project 1.

40 hours for preparation of project 2.

70 hours spent on weekly formative programming exercises, problems and independent study.

2 hours final exam.

None

2 hour open-book final exam

A two-hour online written exam to assess the theoretical aspects of the module.

Project 1

Project to write python code to solve a hyperbolic PDE and assess its accuracy and stability by comparing a number of finite-difference schemes. Results to be written up in a short report (not exceeding 4 pages not including figures and tables) and submitted on the KLE along with the code for assessment. Formatting guidelines will be provided.

Project 2

Project to write python code to solve the heat equation using an implicit scheme. Assess its accuracy at late times and explore the numerical performance with the choice of linear solver. Results to be written up in a short report (not exceeding 4 pages not including figures and tables) and submitted on the KLE along with the code for assessment. Formatting guidelines will be provided.