Numerical mathematics is the crossroad of several disciplines of huge relevance in modern applied science. Whether we wish to design novel materials or build artificial intelligence systems, virtually any quantitative work involves some amount of numerical computing: the purpose of numerical analysis is exactly to approximate continuous models by means of discrete ones.

Nowadays, we hardly ever implement the whole computation ourselves from scratch. We rely on libraries which package tried-and-tested, battle-hardened numerical primitives. It is vanishingly rare however that a library contains a single pre-packaged routine which does all what you need. Numerical computing involves assembling these building blocks into computational pipelines.
This kind of work requires a general understanding of basic numerical methods, their strengths and weaknesses, their limitations and their failure modes. This is exactly what this course is going to teach.

10.2.2020 at 09:00 - 30.4.2020 at 23:59


Here is the course’s teaching schedule. Check the description for possible other schedules.

Tue 10.3.2020
16:15 - 18:00
Wed 11.3.2020
16:15 - 18:00
Thu 12.3.2020
10:15 - 12:00
Tue 17.3.2020
16:15 - 18:00
Wed 18.3.2020
16:15 - 18:00
Thu 19.3.2020
10:15 - 12:00
Tue 24.3.2020
16:15 - 18:00
Wed 25.3.2020
16:15 - 18:00
Thu 26.3.2020
10:15 - 12:00
Tue 31.3.2020
16:15 - 18:00
Wed 1.4.2020
16:15 - 18:00
Thu 2.4.2020
10:15 - 12:00
Tue 7.4.2020
16:15 - 18:00
Wed 8.4.2020
16:15 - 18:00
Thu 16.4.2020
10:15 - 12:00
Tue 21.4.2020
16:15 - 18:00
Wed 22.4.2020
16:15 - 18:00
Thu 23.4.2020
10:15 - 12:00
Tue 28.4.2020
16:15 - 18:00
Wed 29.4.2020
16:15 - 18:00
Thu 30.4.2020
10:15 - 12:00


Optional course.

Master's Programme in Mathematics and Statistics is responsible for the course.

The course belongs to the Mathematics and Applied mathematics module.

The course is available to students from other degree programmes.

The main skills that the students shall develop are:

  • the ability to go from the continuous setting to the discrete one being aware of stability and conditioning issues;
  • the ability to use the tools of discrete mathematics for the implementation of effective and efficient algorithms;
  • the ability to visualise and analyze the result obtained by using interactive environments.

Recommended time/stage of studies for completion: 1. or 2. year

Prerequisites: Linear algebra and Calculus.

Recommended optional studies: Bachelor studies.

Term/teaching period when the course will be offered: varying.

Computer arithmetic: round-off errors, conditioning of a problem and stability of an algorithm, error propagation.

Systems of linear equations: direct methods (LU, Choleski and QR decompositions), iterative methods and methods for sparse matrices. Conditioning and perturbation theory.

Data approximation with least squares method.

Interpolation and polynomial approximation: Lagrange, Newton and Hermite polynomials. Interpolation error. Runge phenomenon.

Numerical integration (quadrature): Newton-Cotes and composite formulas.

Systems of non-linear equations.

Matlab programming.

Final report of the project work.

Burden R. L., Faires J.D., Numerical Analysis, Prindle Weber & Schmidt, Boston MA. 2004

Quarteroni A., Sacco R., Saleri F., Numerical Mathematics, Springer-Verlag Berlin Heidelberg, 2007

Exercises and project work. The course will be graded with grades 1-5.