Computer Science 290I:
Preconditioning Iterative Methods in Computational Science and Engineering

John Gilbert

Mon/Wed 1:00-2:50
Trailer 932
Enrollment code (see CS office)

Schedule, reading assignments, and slides
Sample matrices
Homework #1 (due Mon 9 Feb)
Homework #2 (due Wed 25 Feb) and a correction to Homework #2

Preconditioning is the key to solving the large systems of linear equations that limit the performance of many numerical computations in science and engineering. A good preconditioner often combines the discrete structure of direct methods, the numerical structure of iterative methods, and the specifics of the problem domain.

This course will present several general approaches to preconditioning iterative methods, including incomplete factorization, sparse approximate inverses, multigrid and domain decomposition, and support graphs.

The prerequisites are some knowledge of linear algebra (Gaussian elimination, eigenvalues and eigenvectors) and analysis of algorithms. I expect to have students with a variety of different backgrounds; if you have an application from a scientific or engineering field that includes solving a system of linear equations I encourage you to talk to me about the course.

Approximate course outline:


No textbook is required, though several will be on reserve at the library. Handouts and readings from the literature will be assigned.


CS 211A or permission of instructor. (CS 211A is the same course as ECE 210A, ME 210A, Math 206A, and Chem Eng 211A.)