# U.C. Berkeley Math 221 Home Page

## Matrix Computations / Numerical Linear Algebra

*Fall 2010*

T Th 9:30-11am, 31 Evans Hall

### Instructor:

### Reader:

Vladimir Calugaru
(send email)
###
Administrative Assistants:

Roxana Infante / Tammy Johnson
Offices: 563 / 565 Soda Hall
Phones: (510)643-1455 / (510)643-4816
Email: (to Roxana) /
(to Tammy)
### Announcements:

(11/18) My office hours today (Thursday) are cancelled.
I have rescheduled them for Friday, 11/19, from 11-12, in 565 Soda.
(11/5) I will have office hours today from 1:30-2:30 in 564 Soda.
(10/15) Note the correction in Homework #7: I removed question 3.9, which had been assigned before.
(10/14) Today my office hours will be 1-2pm in 564 Soda, instead of 11-12 in 831 Evans.
(9/24) I will be traveling from Saturday 9/25 through Wednesday 9/29.
Prof. Ming Gu will give the lecture on Tuesday 9/28. My office hours
on 9/29 are cancelled.
(9/15) Office hours today and tomorrow, 9/16, are cancelled,
I will have a make-up office hour on Friday 9/17, in 564 Soda Hall, from 2-3pm.
Please send email if you want to meet at another time.
(8/31) Note the office hours posted above (in 2 different locations)
###
Handouts

Course Overview in
pdf,
including syllabus, prerequisites, pointers to other references, and grading.
Class Survey
.
Please fill this out and email it to demmel@cs.berkeley.edu if you did
not get the copy in class.
An Introduction to the Conjugate Gradient Method Without the Agonizing Pain
by Jonathan Shewchuk,
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
html or
powerpoint.
###
Textbook

*Applied Numerical Linear Algebra* by J. Demmel, published by
SIAM, 1997.
List of Errata for the Textbook
(This will be updated during the semester. Suggestions welcome!)
###
Other Online Software and Documentation

Matlab documentation is available from several sources, most notably
by typing ``help'' into the Matlab command window.
Netlib, 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
LAPACK, state-of-the-art software for dense numerical linear algebra on
workstations and shared-memory parallel computers. Written in Fortran.
LAPACK Manual
CLAPACK, a C version of LAPACK.

(For a partial C++ version, see
LAPACK++
on
Roldan Pozo's homepage)
LAPACK95, Fortran95 interface to LAPACK.
ScaLAPACK, a partial version of LAPACK for distributed-memory parallel computers.
ScaLAPACK manual
LINPACK and
EISPACK are precursors of
LAPACK, dealing with linear systems and eigenvalue problems, respectively.
SuperLU
is a fast implementations of sparse Gaussian elimination for
sequential and parallel computers, respectively.
BEBOP (Berkeley Benchmarking and
Optimization) is a source for automatic generation of high performance
numerical codes, including OSKI,
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
Matrix Market
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 html
and postscript)
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.
Updated survey
of sparse direct linear equation solvers, by
Xiaoye Li
MGNet 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
Millennium an EECS Dept
parallel computing resource
NERSC (National Energy Research Scientific Computing Center),
a DOE supercomputer center at neighboring
LBL (Lawrence Berkeley National Lab), that provides
supercomputer resources to problems of interest to DOE
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
ARPREC
GMP
Notes on IEEE Floating Point Arithmetic, by
Prof. W. Kahan
Other notes on arithmetic, error analysis, etc. by
Prof. W. Kahan
Report on arithmetic error that cause the Ariane 5 Rocket Crash
The IEEE floating point standard was updated in 2008.
Look here
for a summary.