How you'll be taught
We aim to provide you with a broad set of analytical and computational skills, along with exposure to a range of application areas of both academic and industrial relevance, reflecting the inherently multidisciplinary nature of the subject.
The course comprises 180 credits, split between 120 credits of core and optional taught modules and a 60-credit research project.
- Taught by internationally-leading experts in the core areas of computational applied mathematics and mathematical modelling
- Designed to be accessible, not only to mathematicians, but also to anyone with a good first degree in science or engineering
- Taught modules are in the form of lectures and computer practical sessions, and assessed using a combination of coursework and examinations
The project is a more substantial piece of individual work which develops your ability to engage in independent learning. It is undertaken over the summer under the supervision of a member of academic staff and leads to a written dissertation.
Other skills that you should develop during the course include the ability to think logically and critically, problem-solving expertise, competence in programming and the use of appropriate software, and effective communication of results.
Seminars and industrial speakers
We run both a formal seminar series, in which invited speakers (usually from other universities) present their research, and an informal seminar series in which experts from within the school introduce topics related to their research in a manner accessible to students and researchers in other fields.
The MSc Scientific Computation is designed for students with a first degree in mathematics or a related subject with substantial mathematical content (e.g. engineering, physics or computer science). We will assume that your degree has provided you with a basic knowledge of calculus, linear algebra and differential equations.
If you are taking this MSc then you will also need some background in numerical methods, along with enthusiasm and a willingness to learn more about scientific computation, its analysis and its application.
The following two books give an indication of the level of mathematics required:
- All the Mathematics You Missed (But Need to Know for Graduate School) by Thomas A Garrity (CUP), covers the required general mathematical background. A basic understanding of the content of chapters 1, 2,3, 5, 12, 13, 14 and 16 would be advisable.
- An Introduction to Numerical Analysis by Endre Suli and David Mayers (CUP), covers numerical methods in more detail. You should be able to understand, with some work (reading maths books is never easy!), chapters 1, 2, 6, 7, 11 and 12.
There are many possible alternatives to the second textbook above, all of which describe the relevant background material in numerical methods and scientific computation. These include:
- Numerical Mathematics by A.Quarteroni, R.Sacco and F.Saleri (Springer), where you can examine the basics of chapters 1, 2, 3, 6, 8, 9, 10, 11 and 13.
- Numerical Analysis by R.L.Burden and J.D.Faires, published by Brooks/Cole where you can examine the basics of chapters 1-6.
Preparation for Core Modules
Introduction to Finite Element Methods
This is the most mathematically challenging module in the course. It is expected that students taking this module will have knowledge of vector calculus and normed and inner product spaces.
The backgrounds of students taking this module can be diverse, so a more detailed document which details the mathematical concepts with which you should be familiar is available.
Books for module:
- S. Brenner and R. Scott; The Mathematical Theory of Finite Element Methods (Springer–Verlag, 1994)
- P.G. Ciarlet; The Finite Element Method for Elliptic Problems (North–Holland, 1978)
- C. Johnson; Numerical Solution of Partial Differential Equations by the Finite Element Method (CUP, 1990)
- K. Eriksson, D. Estep, P. Hansbo and C. Johnson; Computational Partial Differential Equations (CUP, 1996)
Scientific Computing and C++
We do not require prior knowledge of C++. You may, however, wish to look through any introductory book on C++ such as the following or follow an online tutorial:
- Guide to Scientific Computing in C++ by J. Pitt-Francis & J. Whiteley
- Schaum's Outline of Programming with C++ by J.R. Hubbard
- Schaum's Outline of Fundamentals of Computing with C++ by J.R. Hubbard
Experience of programming in other languages would be very helpful but not essential.
Computational Applied Mathematics
This module takes place in the second semester, and will build on the analytical and practical skills you acquire in semester one.
It will assume that you have gained enough knowledge of calculus, linear algebra and differential equations to study a broad range of computational algorithms for approximating and solving, numerically, systems of equations.