Switch to English
Cursus: 191551200
Scientific Computing
Cursus informatieRooster
Studiepunten (ECTS)6
Contactpersoondr. F.H.C. Bertrand
Contactpersoon van de cursus
dr. F.H.C. Bertrand
L.J. Corbijn van Willenswaard
M.H. Khalid
prof.dr. M.J. Uetz
dr. M. Walter
AanmeldingsprocedureZelf aanmelden via OSIRIS Student
Inschrijven via OSIRISJa
  1. Methods for solution of linear systems of equations and eigenvalue problems: After the course, students are able to decide which algorithms are suited in which situations and compare algorithms based on their requirements, key concepts, convergence behavior, and computational complexity. Moreover, students can then implement the algorithms.
  2. After the course, students are able to derive the variational formulation of a partial differential equation for simple model problems and determine whether the problem is well-posed. Students can then also explain why it is important to analyze the PDE before employing a numerical method to approximate the solution of the PDE.
  3. After the course, students are able to state the definition of finite element spaces and the convergence rates one can expect. Furthermore, students are able to determine whether the discrete problem is well-posed and implement the FE method for a simple model problem.
  4. After the course, students are able to state the PageRank algorithm and implement it for real data.
  5. After the course, students are able to state and implement the basic algorithms in randomized linear algebra and explain the corresponding probabilistic a priori and a posteriori error bounds. Moreover, students are able to explain why randomization works very well in this context.
  6. After the course, students are able to state the main concepts of simple deep neural networks and explain suitable algorithms to train the neural network.
  7. After the course, students are able to explain the main concepts of mixed-integer nonlinear programing and contemporary solver technology and implement respective optimization models.
*Note: There will be a new contactperson/lecturer for 2020-2021. This information will be updated in December 2020*

Thanks to an increase in computing power the opportunities for understanding and solving complex problems in engineering applications, life sciences, environmental issues, urban systems, and finance have rapidly grown in recent decades and thus advanced the corresponding research area Scientific Computing. Typical tasks are modelling the respective problem, developing a numerical method for the approximation, and implementing the respective algorithms on a computer. In the course Scientific Computing we will look at several (real-world) applications such as determining the eigenfrequencies of a bridge or determining the page rank of a webpage, model them and discuss and implement the respective algorithms to solve the problem in a possibly simplified setting. 
As solving linear system of equations is a task which appears in many different contexts we start with this topic. As very many phenomena such as the deformation of structures, heat conduction, fluid flow and so on can be modelled well by partial differential equations (PDEs), we discuss PDEs in a simple one-dimensional setting, where we also discuss some modelling aspects and introduce Sobolev spaces. Since the finite element method is by far the most common method to compute an approximation of the solution of an PDE we introduce the Finite Element method still in the simple one-dimensional setting and prove convergence of the approximation towards the solution.
Large-scale eigenvalue problems can be encountered for instance when analyzing social networks or when determining eigenfrequencies of large structures. Therefore, we discuss large scale eigenvalue solvers next. As specific applications we consider PageRank and the Finite Element approximation of the Helmholtz equation in detail. Next, we discuss algorithms from randomized numerical linear algebra which are highly popular in (big-)data analytics and become also more important in numerical simulations. Providing subsequently a brief introduction to deep neural networks with a focus on randomized methods for solving optimization problems gives students basic knowledge about ever more used deep nets that have many different applications. We close the course by considering mixed-integer nonlinear programming problems (MINLP), including linearization-based (outer) approximations and nonlinear branch-and-bound, as well as using solver technology for the practical solution of MINLPs.
The outline of the content of the course can thus be summarized as follows:
  1. Basic matrix decompositions and classical algorithms (direct methods) for solving linear systems
  2. Iterative methods for solving large linear systems: Krylov subspace methods, preconditioning
  3. Finite Element approximation of boundary value problems
  4. Eigenvalue solvers
  5. PageRank
  6. Randomized Numerical Linear Algebra
  7. Introduction to Deep Neural Networks
  8. Mixed-Integer Nonlinear Programing (MINLP) 
  • Students have to hand in several practical assignments (program code and short report). Practical assignments are assessed as passed or failed. Students might be asked to correct or to complete some parts of the assignment before the “pass” grade is given.
  • Students have to hand in several exercise sets that will be checked by the instructors.
  • There is one cumulative exam at the end of the course. Students will need 40% of the points in the exercises and they will need to pass all practical assignments to be admitted to the exam and resit.
The final mark of the course is solely based on the result in the exam (and resit).
Students need to have a solid background in Linear Algebra, Analysis, and Numerical Mathematics. Moreover, students need to have a good knowledge of concepts of orthonormal bases and the Lebesgue space L2, basic concepts of probability theory and a basic knowledge of concepts in linear optimization. Basic programming skills in Matlab are required as well.
Students need to have a solid background in Linear Algebra, Analysis & Numerical Mathematics. Moreover, students need to have good knowledge of concepts of orthonormal bases and the Lebesgue space L2, basic concepts of probability theory & basic knowledge of concepts in linear optimization. Basic programming skills in Matlab are required too. If you doubt whether you have sufficient background, contact K. Smetana ( It is important that you have a regular access to Matlab.
Participating study
Master Applied Mathematics
Verplicht materiaal
Course material
Lecture notes and slides (will be provided via Canvas).
Course material
Students should obtain the e-book (freely available via the library): 1. Quarteroni, Alfio, Sacco, Riccardo, Saleri, Fausto.Numerical Mathematics, Second Edition, Springer, Berlin Heidelberg New York, 2007.
Course material
2. S. C. Brenner and L. R. Scott. The mathematical theory of finite element methods. Texts in Applied Mathematics. Springer, New York, third edition, 2008. (e-book freely available via library)
Course material
Other Material will be provided during the course
Aanbevolen materiaal




Switch to English