Web Page for Math 440
Fall Semester 2012
Numerical Analysis
SYLLABI: PDF
TEXTBOOK: "Fundamentals of Matrix Computations", David Watkins, Wiley, 2010.
HOMEWORK ASSIGMENTS:
#1, Due Sept 7: 1.1.10,20; 1.2.4,17,20,21.
#2, Due Sept 17:
(1) Do 1.3.4 and 1.3.11;
(2) Modify forwardsub.m so that it implements backward substitution, hand in a listing of your code;
(2) Use your code to solve the system in 1.3.17 and also solve the system by hand to see that you get the same result;
(3) Do 1.3.26;
(4) Do 1.4.21;
(5) Write a short MATLAB function that does the following: (i) inputs a matrix A and vector b, (ii) uses MATLAB's 'chol' function to compute the Cholesky factorization of A, (iii) solves Ax=b using the 'forwardsub' and 'backwardsub' functions you wrote above, (iv) outputs the solution. Test the code on the system in 1.4.21 and see that you get the same answer.
#3, Due 9/26:
(1) Do 1.4.38.
(2) Do 1.4.44 and 1.4.64.
(3) (i) Do 1.5.9, then (ii) modify your codes from the previous homework so that they implement banded forward and backward substitution, with the semiband width s as an input, and finally (iii) use your codes for solving Ax=b, where A is the 100 by 100 2D negative-Laplacian matrix gotten from MATLAB's delsq function and b is a vector of 1's. Hand in a listing of your codes and a plot of the solution x.
(4) Modify AOTwoD.m so that it solves the system using the Cholesky factorization both with and without symmetric approximate minimum degree reordering (symamd in MATLAB). Does CPU time improve when the reordering is used? Hand in a listing of your code.
(5) Do 1.6.7.
#4, Due 10/5:
(1) 1.7.10 (b), (c); 1.7.18.
(2) 1.7.50 (a), (b)
(3) 1.8.4, 1.8.9, 1.8.11
Extra Credit: for +1 pt hand in 1.9.3 (done during lab 7)
Extra Credit: For +5 pts or INSTEAD of problems (1)-(4), do 1.8.12, i.e. code Gaussian elimination with partial pivoting. Demonstrate that it works by applying it to problems 1.7.10,18 and 1.8.4,9.
#5, Due 10/15:
(1) 2.1.17
(2) 2.1.30
(3) 2.1.32
(4) 2.2.24
(5) Hand in completed MATLAB code for lab 9.
#6, Due 10/29:
(1) 3.2.14 (use a rotator)
(2) 3.2.39
(3) 3.2.47
(4) 3.3.9 (give yourself time on this one).
(5) Hand in your code for Lab 10.
#7, Due 11/9
(1) SVD Theory: 4.1.5,6,13, 4.3.8,9
(2) SVD application: Use the truncated SVD, in a fashion similar to what you did in lab 12, on the 2D example BlurringLabTwoD.m
#8, Due 11/27
(1) SVD: 5.8.14, 17
(2) Iterative Methods: 8.2.4-7, 8.2.12-15.
Final Exam, due 12/12: Final.pdf, AOTwoDIterative.m, SteepestDescent.m
COMPUTER LABS AND CODE:
Lab 1, 8.28: Do exercises 1.1.8, 1.1.9, 1.1.14, and example 1.2.6.
Lab 2, 9.5: lab2.pdf, Ex1_1_10.m, Sect1_2_BVP.m
Lab 3, 9.12: (1) Write a MATLAB function with inputs L (a square, lower triangular matrix) and a vector b that performs forward substitution. Use your function to solve the system in Exercise 1.3.4 and check that your answer agrees with L\b in MATLAB. (2) Translate the Cholesky algorithm given by (1.4.17) into MATLAB code.
Lab 4, 9.17: (1) Do problem 1.5.12 (which uses the spring mass system in Ex 1.2.20 in HW 1); (2) Solve 1.2.20(b) again using (i) MATLAB's '\' command and (ii) your backwardsub and forwardsub functions from HW 2; (3) modify backwardsub and forwardsub so that they perform banded backward and forward substitution.
Lab 5, 9.21: (1) Using the 3D Laplacian in Laplacian.m, do Exercise 1.6.5; (2) do problem 1.6.7 (problem 5 from HW 3)
Lab 6, 9.26: problem #4 from HW 3.
Lab 7, 9.28: exercise 1.9.3 using condif.m.
Lab 8, 10.5: (1) do example 2.2.10, exercise 2.2.11, and then verify that the solution of Ax=b is unstable via an example; and (2) have a look at the deblurring example in BlurringLabOneD.m
Lab 9, 10.10: Exercises 3.1.5-7.
Lab 10, 10.19: Use the QR factorization to solve the least squares problem found in AOTwoD.m.
Lab 11, 10.29: Write your own QR using reflector.m.
Lab 12, 11.02: Do exercises 4.3.9 & 10. Then have a look at BlurringLabOneD.m.
Lab 13, 11.14: GaussianDrawsPCA.m, Eigenfaces.m, and faces.zip.
Lab 14, 11.19: Write a MATLAB m-file that implements Jacobi iteration, then use it to verify the results in Example 8.2.3. Next, implement the method on the problem from AOTwoD.m. Next, do the same with Gauss-Seidel, Example 8.2.11, and AOTwoD.m.
Lab 15, 11.28: Write a MATLAB m-file that implements SSOR iteration, then use it to solve the problem from AOTwoD.m. Monitor the relative error ||x_k-x||/||x|| where x is the solution of Ax=b to determine which accelaration parameter w yields the fastest convergence.