Iterative and Multigrid Methods
CS556 :: Fall 2020
- Instructor: Paul Fischer
- Class Time/Place: Online, lectures uploaded bi-weekly, Catalog
- Class URL: go.illinois.edu/cs556
- Lectures: mediaspace.illinois.edu/channel/CS556_F20
About the Course
Course page under construction. The following is subject to change.
The course is divided roughly into three parts: the basics of numerical linear algebra, iterative methods (such as CG, GMRES, BiCGStab, etc), and multilevel methods (for example Schwarz and multigrid).
The course involve several homeworks (usually bi-weekly) and a final project focussed on multigrid. Homework and projects will be team efforts (3 people per team). We will have weekly (individual) quizzes. There is also a strong participation grade based on your attendence (informal) and ability to keep up with handouts and other tasks. The tentative grade breakdown is:
- Quizzes 15
- Homework 50
- Final Project 30
- Attendance and handouts 5
Homework
Guidelines and files
Books
We will be using Saad's book Iterative methods for sparse linear systems
In addition, there are several other helpful texts (optional):
- Numerical Linear Algebra by Trefethen and Bau
- Iterative Methods for Large Liner Systems by van der Vorst
- A Multigrid Tutorial
Computing
We will be using Python with the libraries numpy, scipy and matplotlib for assignments. No other languages are permitted.
Python and Numpy Help
- Python tutorial
- Facts and myths about Python names and values
- Dive into Python 3
- Project Euler (Lots of practice problems)
- Introduction to Python for Science
- The SciPy lectures
- The Numpy MedKit by Stéfan van der Walt
- The Numpy User Guide by Travis Oliphant
- Numpy/Scipy documentation
- More in this reddit thread
- Spyder (a Python IDE, like Matlab) is installed in the virtual machine. (Applications Menu > Development > Spyder)
- An introduction to Numpy and SciPy
- 100 Numpy exercises