Programme/Approved Electives for 2022/23
Available as a Free Standing Elective
MAT-30003 Partial Differential Equations
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.
Intended Learning Outcomes
write well commented and structured python code with appropriate use of python modules for scientific computing and be able to debug their code: 2,3by performing numerical experiments determine effectiveness of numerical solutions of hyperbolic PDEs using a variety of finite difference schemes: 2program and evaluate various methods for solving linear systems of equations, in particular for solving discretised elliptic PDEs and implicit schemes for parabolic PDEs: 3conduct von Neumann stability analysis, evaluating the outcomes to determine the stability properties of certain finite difference schemes: 1evaluate the order of accuracy of a finite difference scheme via its truncation error: 1define and apply numerical convergence, stability and the Lax Equivalence Theorem: 1,2,3appraise 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.
1: Exam weighted 30%
Description of Module Assessment
2 hour final examA two-hour written exam to assess the theoretical aspects of the module.2: Project weighted 35%
Project 1Project 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.3: Project weighted 35%
Project 2Project 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.