U.C. Berkeley Math 221 Home Page
Matrix Computations / Numerical Linear Algebra
T Th 12:30-2pm, 3109 Etcheverry Hall
831 Evans Hall
564 Soda Hall ("Virginia"), (510)643-5386
Office Hours - M 11-12 in 564 Soda and F 11-12 in 831 Evans
Ashwin Chander Mahavadi (CEE)
Laura Rebusi / Tammy Johnson
Offices: 563 / 565 Soda Hall
Phones: (510)643-1455 / (510)643-4816
(Oct 23) Today my office hours will be in Soda Hall at 1-2pm, instead of the usual 11am in Evans.
(Oct 3) There will be a one-day conference on Sparse Matrix computations next to campus at LBL on Nov 2. Click
for details. Registration is free but required.
(Sept 22) Henceforth, office hours will be Mondays 11-12 in 564 Soda and Fridays 11-12 in 831 Evans.
(Sept 20) There will be office hours on Monday, Sept 21, in 564 Soda Hall from 11-12. I am considering permanently moving my Wednesday office hours to this time; please email me if you prefer a different time.
(Sept 13) There will be make-up office hours on Monday, Sept 14, in 564 Soda Hall from 11-12 and 1-2.
(Sept 3) The classroom has moved to 3109 Etcheverry.
(Sept 3) I will start posting the notes before lecture (or at least try to!).
(Sept 3) We have hired a reader for homework; please see above for contact info.
Course Overview in
, including syllabus, prerequisites, pointers to other references, and grading.
. Please fill this out and email it to email@example.com if you did not get the copy in class.
An Introduction to the Conjugate Gradient Method Without the Agonizing Pain
, is a very easy to understand description of one of the most popular iterative methods for solving A*x=b. In contrast to the terse treatment in the course text book, you might want to see Shewchuk's answer to the question "How could fifteen lines of code take fifty pages to explain?"
Lectures notes on Multigrid, in either
Applied Numerical Linear Algebra
by J. Demmel, published by
List of Errata for the Textbook
(This will be updated during the semester. Suggestions welcome!)
Matlab Programs for Homework Assignments
Other Online Software and Documentation
Matlab documentation is available from several sources, most notably by typing ``help'' into the Matlab command window. A primer (for version 4.0/4.1 of Matlab, old but not too different from the current version) is available in either
, a repository of numerical software and related documentation
Netlib Search Facility
, a way to search for the software on Netlib that you need
GAMS - Guide to Available Math Software
, another search facility to find numerical software
Linear Algebra Software Libraries and Collections
, state-of-the-art software for dense numerical linear algebra on workstations and shared-memory parallel computers. Written in Fortran.
, a C version of LAPACK.
(For a partial C++ version, see
Roldan Pozo's homepage
, Fortran95 interface to LAPACK.
, a partial version of LAPACK for distributed-memory parallel computers.
are precursors of LAPACK, dealing with linear systems and eigenvalue problems, respectively.
is a fast implementations of sparse Gaussian elimination for sequential and parallel computers, respectively.
(Berkeley Benchmarking and Optimization) is a source for automatic generation of high performance numerical codes, including
, a system for producing fast implementations of sparse-matrix-vector-multiplication. (OSKI stands for Optimized Sparse Kernel Interface, and only coincidentally is also the name of the Cal Bear mascot :) ).
Sources of test matrices for sparse matrix algorithms
University of Florida Sparse Matrix Collection
Templates for the solution of linear systems
, a collection of iterative methods, with advice on which ones to use. The web site includes on-line versions of the book (in
) as well as software.
Templates for the Solution of Algebraic Eigenvalue Problems
is a survey of algorithms and software for solving eigenvalue problems. The web site points to an html version of the book, as well as software.
of sparse direct linear equation solvers, by
is a repository for information and software for Multigrid and Domain Decomposition methods, which are widely used methods for solving linear systems arising from PDEs.
Resources for Parallel and High Performance Computing
a UC Berkeley campus-wide parallel computing resource
CS 267, Applications of Parallel Computers
, including slides and videos of lectures on parallel linear algebra
ParLab Parallelism Short Course
, including slides and videos of (shorter) lectures on parallel linear algebra
ACTS (Advanced CompuTational Software)
is a set of software tools that make it easier for programmers to write high performance scientific applications for parallel computers.
PETSc: Portable, Extensible, Toolkit for Scientific Computation
NHSE - National High Performance Computing and Communications Software Exchange
, pointers to related work across the country.
Issues related to Computer Arithmetic and Error Analysis
Efficient software for very high precision floating point arithmetic
Notes on IEEE Floating Point Arithmetic,
Prof. W. Kahan
Other notes on arithmetic, error analysis, etc.
Prof. W. Kahan
Report on arithmetic error that cause the Ariane 5 Rocket Crash
The IEEE floating point standard was updated in 2008. Look
for a summary.