MAGIC099: Numerical methods in Python

Course details

A core MAGIC course


Autumn 2021
Monday, October 4th to Friday, December 10th


Live lecture hours
Recorded lecture hours
Total advised study hours


09:05 - 09:55 (UK)


The aim of the course is to present several numerical methods that can be used in different scientific areas and implement them using Python.

The course starts from the basic idea of an algorithm and evolves discussing, for instance, numerical methods to compute derivatives and integrals of functions, to solve linear systems, and to integrate ordinary and partial differential equations.

Each lecture will have an initial part of theory and a final part of Python demo. 


Calculus, linear algebra, ordinary and partial differential equations.

Some basic concepts of probability, mechanics and fluid mechanics might be used during the examples. 


  • how to install Python and basic commands, definition of an algorithm, evaluation of the square root 
  • root finding algorithms: bisection and more advanced methods 
  • solutions of linear systems, direct and indirect methods 
  • derivatives of a function using finite differences, methods of finding the function extremes 
  • Lagrange polynomials and splines 
  • integration of single variable functions with rectangles and other methods 
  • Monte Carlo method to compute multivariable integrals 
  • solutions of ODEs using Euler and Runge-Kutta methods 
  • integration of PDEs using finite difference algorithms 
  • fast Fourier transforms (FFTs) and their use in solving PDEs with periodic boundary conditions 


  • DP

    Dr Davide Proment

    University of East Anglia


No bibliography has been specified for this course.


The assessment for this course will be released on Monday 10th January 2022 at 00:00 and is due in before Sunday 23rd January 2022 at 23:59.

Assessment for all MAGIC courses is via take-home exam which will be made available at the release date (the start of the exam period).

You will need to upload a PDF file with your own attempted solutions by the due date (the end of the exam period).

If you have kept up-to-date with the course, the expectation is it should take at most 3 hours’ work to attain the pass mark, which is 50%.

Please note that you are not registered for assessment on this course.


Only current consortium members and subscribers have access to these files.

Please log in to view course materials.


Please log in to view lecture recordings.