Basic Numerical Methods
Upon completing this module, the students will acquire the basics of numerical mathematics and numerical simulation methods. This includes the theoretical understanding of how a computer calculates with finite floating-point numbers and what kind of errors and inaccuracies may arise from these, and how to reduce or control them same. They will be familiar with basic numerical methods for modeling and simulating algebraic models, linear algebra models, and ordinary and partial differential equations. They will be able to estimate the approximation errors of the methods and determine the algorithmic intensity, and will be able to implement these methods themselves.
Contents
Floating point arithmetic, rounding errors, cancellation, numerical interpolation (Lagrange, Newton, Splines), Taylor developments, finite differences and their approximation errors, explicit and implicit time integrators, qudrature, direct and iterative algorithms for matrix inversion, matrix decomposition (LU), solution for the Poisson equation.
Topic Prerequisites
Working knowledge of computer programming in any language (e.g. Matlab, Python, Java), and solid undergraduate knowledge in calculus and vector analysis.
Program / Module
M.Sc. Computational Modeling and Simulation
Module: CMS-COR-NUM - Basic Numerical Methods
Format
2 SWS lecture, 2 SWS exercise, self-study
5 credits
Registration to the course
For students of the Master program "Computational Modeling and Simulation: via CampusNet SELMA
Instruction language: ENGLISH
Script
Lecture notes are available as PDF here.
Please refer to the OPAL Course webpage
Please refer to the OPAL page of the course for exam related information.
- Lecture 0 - Introduction to the Course and Organization
- Lecture 1 - Finite-precision arithmetics, IEEE number representation, roundoff and extinction, error propagation, condition numbers, backward error analysis
- Lecture 2 - linear systems of equations, LU decomposition of matrices, Gaussian elimination, iterative linear solvers, Jacobi method
- Lecture 3 - Gauss-Seidel method, SOR method, Conjugate gradient methods, preconditioning schemes
- Lecture 4 - Least-Squares methods, QR decomposition, singular value decomposition
- Lecture 5 - Non-linear least squares, non-linear equations, Newton method, bisection method, secant method
- Lecture 6 - Non-linear systems of equations, quasi-Newton method, rank-1 update, Broyden algorithm, Lagrange interpolation, barycentric interpolation
- Lecture 7 - Interpolation algorithms: Aitken-Neville algorithm, Hermite and Spline interpolation
- Lecture 8 - Numerical integration (quadrature): trapezoidal rule, Simpson rule, Romberg extrapolation, Gauss quadrature
- Lecture 9 - Numerical differentiation: finite difference methods, Romberg extrapolation, Initial value problems of ordinary differential equations, the explicit Euler scheme
- Lecture 10 - second-order methods, Heun's method, Runge-Kutta methods, variable step size control, embedded Runge-Kutta, Richardson extrapolation
- Lecture 11 - implicit methods, multistep methods, Systems of ODEs, higher-order ODEs
- Lecture 12 - numerical stability, stiff problems, Lax equivalence theorem, introduction to PDEs
- Lecture 13 - Partial differential equations: parabolic problems, elliptic problems, hyperbolic problems, method of lines, stencil methods, method of characteristics, Richardson method, Crank-Nicholson method, Courant-Friedrichs-Lewy condition