Scientific Computing

Module code: MA7012

Module co-ordinator: Ruslan Davidchak 

Module Outline

This course will introduce students in numerical approaches to scientific problems, including applications in engineering and physics. Various nonlinear differential equations will be introduced as simplified models for real-world systems, discretizations will be introduced, numerical methods will be developed for each application, and computer implementation (primarily in MatLab) will be considered. The idea is to help you learn how to tackle an application using numerical methods and to relate the computational results obtained to the model setting. Methods to be studied include iterative methods such as conjugate gradients for solving elliptic differential equations, stiff ordinary differential equation solvers for solving the heat equation. Finite difference schemes for differential equations and their stability. Appropriate linear algebra methods needed in the implementation of these schemes. Some theory will be presented but in limited detail.


  • 20 one-hour lectures
  • 20 one-hour workshops
  • 10 one-hour tutorials


  • Exam, two hours (70%)
  • Coursework (30%)


  • Calculus, Taylor's Theorem, Linear Algebra


  • Basic programming, ordinary differential equations