The MPhil in Scientific Computing is a 12-month full-time Master’s Degree, which has a taught and a research element which carry equal examination credit.
Students attend lecture modules on theory, algorithms and methods for modelling and numerical simulation, as well as research computing, software development and high-performance computing. This theoretical knowledge, which is complemented by hands-on practical sessions and written assignments (both involving coding), provides a solid foundation for the research project carried out during the second part of the academic year. The timeline of the academic year is illustrated below.
The taught element comprises two main sets of lecture modules: one on theory, algorithms and methods for modelling and numerical simulation; and another on research computing, software development and high-performance computing (HPC).
The lecture module set for numerical simulation has two further subsets (or streams), depending on the level that matter is described.
The continuum stream focuses on the numerical simulation of four states of matter (gases, liquids, solids and plasma) at a continuum level (computational continuum physics), and their interaction (computational multiphysics).
The lecture modules for this stream are on the underlying theory of systems of nonlinear inhomogeneous partial differential equations, and on methods for their numerical solution. These include:
- Multiphysics Modelling for Four States of Matter
- Numerical Methods for Compressible Fluid Dynamics
- Numerical Methods for Incompressible Fluid Dynamics
- Simulation of Complex Incompressible and Low-strain Rate Phenomena
- Simulation of Matter under Extreme Conditions
The atomistic stream of lecture modules is suitable for modelling and simulation at atomic scale, and the lectures are on electronic structure, density functional theory (DFT), molecular dynamics and Monte Carlo techniques. These include:
- Atomistic Modelling of Materials
- Introduction to topological materials
- Electronic structure and Density Functional Theory
The course offers foundation lectures in quantum mechanics and solid state physics as a preparation for the atomistic stream.
Typically, students will be examined on lectures belonging to one of the two streams, but they may attend as many lectures their workload allows.
The lecture module set for High Performance Computing is attended by all students and offers training on:
- Introduction to Linux
- Data Visualisation Techniques
- Message Passing Interface
- Programming with GPUs
- Scientific Programming in C++
- Software Design
These modules are aimed at developing skills which are highly transferable in all areas of research and employment.
The lectures are complemented by hands-on practical sessions where the students write their own code and execute it on local workstations or the University’s supercomputer.
Examination credit for the taught element is obtained by means of three written examination papers (25% of the overall credit) and two written assignments (25% of the overall credit).
The choice of modules a student takes for examination is based on their background and hence the stream (continuum or atomistic) they are going to follow. Students who are following the atomistic stream will be examined on the three corresponding modules above, while students who follow the continuum stream will be examined in three out of the five modules offered.
The lecture modules, the associated hands-on practical sessions and the written assignments provide a solid foundation for the research element.
The research element is a project on a science or technology topic which is studied by means of numerical simulation. The research project is assessed by submitting two reports, each carrying 25% of the total overall credit.
Many of the projects will be supervised by the course teaching staff, but members of the Departments of the Schools of Physical Sciences and Technology are also involved.
Past Project Titles range from modelling a Tokamak Fusion Reactor, to optimisation of Beam shape in Deep Geo-thermal Drilling, to understanding the salt dissolution process by machine learning, to modelling crystal structure.
This is a substantial piece of work which has in the past offered the opportunity to students to publish their work in high-impact journals.