This is the home page for the Department of Mathematical Sciences unit on Scientific Computing. This forms part of the MSc in Modern Applications of Mathematics.

** Aims: ** To teach an understanding and
appreciation of issues arising in the computational solution of
challenging scientific and engineering problems.

The course will teach you to program in a high-level computer language - Fortran 90/95 (including the use of Makefiles, compiling, timing and profiling). It will introduce the concepts of efficiency and reliability of algorithms. Matrices and vectors are the core objects in most computing intensive numerical codes. We will learn about appropriate data structures for full and sparse matrices and define and analyse some important numerical algorithms involving matrices (like systems of linear/nonlinear equations, eigenvalue problems, optimisation or graph theory). We will also make strong use of software libraries for core numerical tasks (like BLAS, LAPACK, HSL, NAG, Netlib, ...). The final part of the course introduces the concept of parallel computing and you will learn how to write simple parallel codes using the Message Passing Interface (MPI) as well as how to use parallel libraries (like Petsc, SCALAPACK, Hypre, ...). The lectures will be illustrated using cases studies from modern applications in proper industrial problems.

** Examples of previous case studies: **

- Nuclear Reactor Simulation -
Generalised Eigenvalue Problems
- Nonlinear Thermal Conduction -
Inexact Newton Methods
- Numerical Solution of Elliptic PDEs -
Parallel Multigrid
- The Graph Drawing Problem
- Google's PageRank Algorithm

[R.Scheichl Home] [Department of Mathematical Sciences] [University of Bath]

Last updated 24/01/2008