Aankondigings / Announcements
 Contrary to what was announced at the second test, we are not at liberty to post final marks nor marks for the second test here. You will get these marks through the official channels. (Depending on whether your department has a moderation process for these papers, this may take a while.) Should you need the third opportunity to pass the module, you will be informed by an email to your sun address before Friday 8 June. (For details of the third opportunity, see below.) Please do not send email to your instructors to enquire about your mark.
 All assignment marks now available here. This is your final chance to look it over and let us know if there are mistakes. Copies of Assignment 6 can be picked up from the alphabetical boxes at Applied Math
 For students who do not have the required 50 percent average at the end of the term, a third test opportunity will be available on Tuesday 19 June in A308 at 9:00. This 2hour test will cover all the work of the semester (both terms), and it will replace the lowest score of the two prior tests. Should a passing score thus be obtained, a final mark of 50 percent will be assigned, regardless of the actual test mark.
 A flow chart for deciding on an iterative method for Ax = b can be found here (taken from CULA Tools)
 Derivation of the formula for the SSOR preconditioner as given on p.347 of the text.
 Handout that demonstrates conjugate directions vs steepest descent directions can be found here.
 This course assumes some previous experience with MATLAB or Python. If you need a refresher for MATLAB we strongly suggest reading the introductory slides (afr & eng) and/or completing the (free) online MATLAB Onramp (which takes about 2 hours). Note that MATLAB is now FREE for all SU students! Download instructions here.
Dosent / Lecturer
First term:
 Dr Nick Hale
 Office: A410
 Email nickhale@sun.ac.za
Second term:
 Prof. JAC Weideman
 Office: A315
 Email weideman@sun.ac.za
Rooster / Timetable
 Monday 11:00 @ M203
 Wednesday 09:00 @ M203
 Thursday 12:00 @ M203
Inligtingstukke / Information Sheets
 Information sheet available here.
Notas / Notes
 MATLAB Intro and accompanying lecture slides Afrikaans / English

Chapter 1;
Lecture Slides 1
(Background Material = Recommended Reading)
 Chapter 2; Lecture Slides 2 (Linear Systems)

Chapter 3;
Lecture Slides 3
(Least Squares)
(Undergraduate notes on least squares: English /Afrikaans)  Chapter 4; Lecture Slides 4 (Eigenvalues)
 Chapter 11 (pp.335350); Lecture slides 11 (long) / (short) (Direct and Iterative Methods for Sparse Systems)
Opdragte / Assignments
 Assignment 1 & Solutions 1
 Assignment 2 & Solutions 2
 Assignment 3 & Solutions 3
 Assignment 4 & Solutions 4
 Assignment 5 & Solutions 5
 Assignment 6 & Solutions 6
Tests
 Test 01 2018 and solutions
2018 Skedule / Schedule (tentative)
Week 1 (Chapter 1) Fundamentals (Undergraduate slides: eng1, eng2 / afr1, afr2)
 Linear systems; Existence and uniqueness of solutions
 Vector and matrix norms
 Intro to conditioning of linear systems. (Undergraduate slides: eng / afr)
 Solving linear systems
 Elimination
 LU factorization
 Gaussian elimination
 Instability and error growth factor
 Pivoting (Proof of PA = LU factorization)
 Algorithmic complexity
 ShermanMorrison formula
 Special types of linear systems (Reordering for sparse direct methods)
 Cholesky factorization
 Chapter 3: Least squares
 Normal equations
 QR Factorization
 Householder transformation
 Givens rotations
 GramSchmidt

Revision class (and public holiday)
Test week and Term break
Week 8 Similarity transformations, power iteration and its variants
 Rayleighquotient iteration, QR iteration
 Some implementation details of QR iteration, Hessenberg factorization
 Arnoldi and Lanczos algorithms
 Arnoldi & Lanczos continued
 Model problem, sparse matrices PDE model problem. Related undergraduate notes.
 Iterative methods for Ax = b: splitting methods; convergence
 Jacobi, GaussSeidel, SOR iterations (classroom demo).
 Jacobi, GaussSeidel, SOR iterations (continued)
 Incomplete LU and Cholesky
 Minimization methods for Ax = b when A is s.p.d.
 Method of steepest descent (Figure) (Implementation)
 Method of conjugate gradients (Implementation)
 Convergence of CG
 Preconditioned conjugate gradient method. (Clustering Demo) (Convergence of all methods)
 Rateofconvergence for the 2D Model Problem
MATLAB Kodes / MATLAB Codes
 decode_ieee.m  Decodes an IEEE 754 doubleprecision value.
 cos_demo.m  Demonstrate cancellation error.
 myhouseholder.m  Inefficient Householder.
 myhouseholder2.m  Efficient Householder.
 myhouseholder3.m  Efficient Householder in loop form.
 myhouseholder4.m  Efficient Householder storing v.
 mygivens.m  Inefficient Givens for a vector.
 mygivens2.m  Inefficient Givens for a matrix example (interactive).
 mygivens3.m  Efficient Givens for matrix example.
 GSdemo.m  Classical and modified GramSchmidt.