Numerical Linear Algebra for Computational Science and Information Engineering (CITHN2006)
The course is organized into 18 lectures. All lectures consist of a theoretical presentation followed by homework problems [pdf]. Most lectures are also followed by Julia coding assignments.
00.
Introduction
slides [pdf]
01.
Essentials of linear algebra
slides [pdf]
02.
Essentials of the Julia language
slides [pdf]
03.
Floating-point arithmetic and error analysis
slides [pdf],
notebook [ipynb, pdf]
04.
Direct methods for dense linear systems
slides [pdf],
notebook [ipynb, pdf]
05.
Sparse data structures and basic linear algebra subprograms
slides [pdf],
notebook [ipynb, pdf]
06.
Introduction to direct methods for sparse linear systems
slides [pdf]
07.
Orthogonalization and least-squares problems
slides [pdf],
notebook [ipynb, pdf]
08.
Basic iterative methods for linear systems
slides [pdf],
notebook [ipynb, pdf]
09.
Basic iterative methods for eigenvalue problems
slides [pdf]
10.
Locally optimal block preconditioned conjugate gradient
slides [pdf],
notebook [ipynb, pdf]
11.
Arnoldi and Lanczos procedures
slides [pdf],
notebook [ipynb, pdf]
12.
Jacobi-Davidson method
slides [pdf],
notebook [ipynb, pdf]
13.
Krylov subspace methods for linear systems
slides [pdf],
notebook [ipynb, pdf]
14.
Preconditioned iterative methods for linear systems
slides [pdf],
notebook [ipynb, pdf]
15.
Restarted Krylov subspace methods
slides [pdf],
notebook [ipynb, pdf]
16.
Elements of randomized numerical linear algebra
slides [pdf],
notebook [ipynb, pdf]
17.
Introduction to communication-avoiding algorithms
slides [pdf],
notebook [ipynb, pdf]
18.
Matrix function evaluation
slides [pdf],
notebook [ipynb, pdf]
Extra notes [pdf]
Final exams: Summer 2025 [pdf]