## Numerical Linear Algebra

 Unit code: MATH66101 Credit Rating: 15 Unit level: Level 6 Teaching period(s): Semester 1 Offered by School of Mathematics Available as a free choice unit?: N

#### Requisites

None

Students are not permitted to take, for credit, MATH46101 in an undergraduate programme and then MATH66101 in a postgraduate programme at the University of Manchester, as the courses are identical.

#### Aims

To develop understanding of modern methods of numerical linear algebra for solving linear systems, least squares problems and the eigenvalue problem.

#### Overview

This module treats the main classes of problems in numerical linear algebra: linear systems, least square problems, and eigenvalue problems, covering both dense and sparse matrices. It provides analysis of the problems along with algorithms for their solution. It also introduces MATLAB as tool for expressing and implementing algorithms and describes some of the key ideas used in developing high-performance linear algebra codes (blocking, BLAS). Applications will be introduced throughout the module.

#### Learning outcomes

On completion of the module, students will be able to

• construct some key matrix factorizations using elementary transformations,
• choose an appropriate numerical method to solve systems, least squares problems, and the eigenvalue problem.
• evaluate and compare the efficiency and numerical stability of different algorithms for solving linear systems, least squares problems, and the eigenvalue problem.
• design algorithms that exploit matrix structures such as triangularity, sparsity, banded structure, and symmetric positive definiteness,
• quantify the sensitivity of a linear system or least squares problem to perturbations in the data.

#### Assessment methods

• Other - 20%
• Written exam - 80%

#### Assessment Further Information

• Mid-semester coursework: 20%
• End of semester examination: three hours weighting 80%

#### Syllabus

• Introduction. Summary/recap of basic concepts from linear algebra and numerical analysis: matrices, operation counts. [1 lecture]. Introduction to MATLAB. [2]. Matrix norms. Linear system sensitivity. [2]
• Matrix factorizations. Cholesky factorization. QR factorization by Householder matrices and by Givens rotations. [5]. LU factorization and Gaussian elimination; partial pivoting. Error analysis. [2]. Block algorithms and their suitability for modern machine architectures. [1]. The BLAS and LAPACK. [1]
• Linear systems. Solving triangular systems by substitution. Solving full systems by factorization. Application: Newton's method for nonlinear systems. [1]
• Sparse and banded linear systems and iterative methods. LU factorization for banded and sparse matrices. Storage schemes. [1]. Iterative methods: Jacobi, Gauss-Seidel and SOR iterations. Krylov subspace methods, conjugate gradient method. Preconditioning. Application: differential equations. [4]
• Linear least squares problem. Basic theory using singular value decomposition (SVD) and pseudoinverse. Perturbation theory. Numerical solution: normal equations. SVD and rank deficiency. Application: image deblurring. [5]
• Eigenvalue problem. Basic theory, including perturbation results. Power method, inverse iteration. Similarity reduction. QR algorithm. Application: Google PageRank. [5]

• [1] Timothy A. Davis, Direct Methods for Sparse Linear Systems, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, 2006, ISBN 0-89871-613-6, xii+217pp.
• [2] James W. Demmel, Applied Numerical Linear Algebra, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, 1997, ISBN 0-89871-389-7, xi+419pp.
• [3] Gene H. Golub and Charles F. Van~Loan, Matrix Computations Johns Hopkins University Press, Baltimore, MD, USA, third edition, 1996, ISBN 0-8018-5413-X (hardback), 0-8018-5414-8 (paperback), xxvii+694pp.
• [4] Desmond J. Higham and Nicholas J. Higham, MATLAB Guide, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, second edition, 2005, ISBN 0-89871-578-4, xxiii+382pp.
• [5] Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, second edition, 2002, ISBN 0-89871-521-0, xxx+680pp.
• [6] G. W. Stewart, Introduction to Matrix Computations, Academic Press, New York, 1973, ISBN 0-12-670350-7, xiii+441pp.
• [7] G. W. Stewart, Matrix Algorithms, Volume I: Basic Decompositions, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, 1998, ISBN 0-89871-414-1, xx+458pp.
• [8] G. W. Stewart, Matrix Algorithms, Volume II: Eigensystems, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, 2001, ISBN 0-89871-503-2, xix+469pp.
• [9] Lloyd N. Trefethen and David Bau III, Numerical Linear Algebra, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, 1997, ISBN 0-89871-361-7, xii+361pp.
• [10] David S. Watkins, Fundamentals of Matrix Computations, Wiley, New York, second edition, 2002, ISBN 0-471-21394-2, xiii+618pp.
• [11] Per Christian Hansen, James G. Nagy, and Dianne P. O'Leary, Deblurring Images: Matrices, Spectra, and Filtering, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, 2006, ISBN 0-89871-618-7, xiv+130pp.
• [12] C. T. Kelley, Iterative Methods for Linear and Nonlinear Equations, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, 1995, ISBN 0-89871-352-8, xiii+165pp.
• [13] Amy N. Langville and Carl D. Meyer, Google's PageRank and Beyond: The Science of Search Engine Rankings, Princeton University Press, Princeton, NJ, USA, 2006, ISBN 0-691-12202-4, x+224 pp.

Books [1] - [10] cover the core material, while [11] - [13] cover the applications.

#### Feedback methods

Feedback tutorials will provide an opportunity for students' work to be discussed and provide feedback on their understanding.  Coursework also provides an opportunity for students to receive feedback.  Students can also get feedback on their understanding directly from the lecturer, for example during the lecturer's office hour.

#### Study hours

• Lectures - 22 hours
• Tutorials - 11 hours
• Independent study hours - 117 hours

#### Teaching staff

Nicholas Higham - Unit coordinator

Francoise Tisseur - Unit coordinator