Course content

Programming
Functional programming and vector notation in Matlab, recursion
Matrix algebra
Solvability of linear systems, norms, eigenvalues and eigenvectors, spectral radius
Eigenvalue problems
How shift, inversion, powers and similarity transforms changes spectrum, diagonalisation, triangularisation, Gershgorin discs, QR factorisation using Householder transformations, the QR method, the power method and invers iteration
Ordinary differential equations
Finite difference and finite element methods for boundary value problems
Partial differential equations
Classification, well-posedness, characteristics, finite difference methods, consistency, stability (CFL condition, Fourier method, energy method, maximum principle), convergence
Iterative solvers for linear systems
Fixed point iteration, the Jacobi and Gauss-Seidel methods
Least squares problems
Polynomial fitting, normal equations, orthogonal projection is the best approximation, Gram-Schmidt, overdetermined systems and QR factorisation
Fast Fourier transform
Discrete Fourier transform, the FFT algorithm, matrix and operator notation