CS 6220: Data-Sparse Matrix Computations (Fall 2011)
| News | General Information | Syllabus | Assignment and Solutions |CVL Home || CMS |
Nov 21 A5 solutions are online Out of several excellent submissions, i picked two P2 solutions for you to look at.
Nov 8 There were some confusing typos in the original A5 handout. Also, I clarified some things in P2. So re-download from CMS the corrected version of the original document!
Nov 6 A4 Solutions online
Oct 24 A4 Corrections/Comments. For P1, try to make your function efficient by minimizing the number of times that Matlab is asked to "expand" the sparse array that you are using to track fill-in. In P2, there is a typo in Step 4 in the seminormal equation framework. Instead of Re = y is should be e = P'*z. Also, it is OK to set up the 4-by-5 block matrix in sparse format and let Matlab do all the work.. P3. The matrix A1 is dense but data-sparse. You will want to supply eigs a function that does A1-times-a-vector.
Oct. 19 A3 solutions are online . Regrade requests must be received via email by Tuesday Oct 4.
Oct 4. Use the "\" operator to solve triangular systems. The triangular systems that come up in the assignment are sparse and Matlab knows enough to exploit the structure.
Oct 3 A3 clarifications. In P1, the numbers you report should be reliable through one decimal place. That is to say, if you re-run your script a second time then the corresponding entries in the two tables should not differ by more than 0.1. P2. The U and V in the first line should be Y and Z. P3.The values used for s in the test script will be modest, e.g., s = 5.
Sept 30. A2 Solutions online . Regrade requests must be received via email by Tuesday Oct 4.
Sept 20 Typo in P3. inv(Sn) = (2/(n+1))*Sn not inv(Sn ) = (2/n)*Sn
Sept 14. Typo in the write-up of A2. In P2, there is a missing sqrt(-1) in the specification of Twiddle.
Sept 14 A1 Solutions/test scripts are now online If you need an elaboration on how I graded your submission, send an email, but please, run the relevant test scripts first so that you can measure your solution against mine.
Aug 25. You must be registered in the course to log into CMS, the system that will be used for the submission and grading of assignments and the distribution of handouts. (Click on the CMS link above.) If you add the course, then send me an email and I will enter you into the system. Right now, Chapter 1 of GVL4 is available through CMS. In about a week after the enrollment settles down, hard copies of GVL4 (Chapters1-9) will be distributed at nominal cost. Chapters 10-13 will be distributed as the semester progresses.
Aug 24. Worried about your linear algebra and/or Matlab background?
Some Linear Algebra References: Matrix Analysis and Applied Linear Algebra (C. Meyer), Linear Algebra and its Applications (G. Strang)
Some Matlab References: Insight Through Computing: A Matlab Introduction to Computational Science and Engineering (Van Loan and Fan), Getting Started with Matlab 7 (Pratap), Matlab: An Introduction with Applications (Gilat), Mastering Matlab7 ( Hanselman & Littlefield)
Description: An m-by-n matrix is data-sparse if it can be represented with << mn parameters. Sparse matrices are data-sparse, but so are Toeplitz matrices, semiseparable matrices, sparse-plus-low-rank matrices, and a host of “fast transform” matrices. We will survey methods for linear equation, least square, and eigenvalue problems when the matrices involved are big and data-sparse. The LU, Cholesky, and QR factorizations will have a central role to play as will as the SVD and various eigenvalue-related decompositions. Basic, dense-matrix algorithms for these reductions will be covered insofar as they are needed for the big-n, data-sparse problems that are the focus of the course.
Prerequisites: A course in scientific computing (or equivalent) , solid background in linear algebra, and working knowledge of Matlab (or equivalent).
Meeting Time and Place: MW 2:55-4:10, Upson 315.
Instructor: Professor Charles Van Loan, 5153 Upson Hall, 255-5418, cv@cs.cornell.edu .
Office Hours: Office Hours are posted here. There will be exceptions and I'll tell you in class. There will be extra times and I will tell you in class. And you can always schedule a special time by sending me email. Randy Hess is my administrative assistant.
Text: Selected Chapters from the 4th edition of Matrix Computations by G.H. Golub and C. Van Loan will be distributed at nominal cost.
Grading: Seven Matlab assignments (70%) and a Final Project/presentation (30%).
Date |
Topic |
Reading |
Practice |
Event |
Wed Aug 24 | Overview | 1.1 | P1.1.1 P1.1.5 | |
Mon Aug 29 | Matrix Operations | 1.2-1.3 | P1.2.10 P1.2.11 | |
Wed Aug 31 | Sparse Computation in Matlab | P1.3.8 P1.3.15 | ||
Wed Sept 7 | FFT | 1.4 | P1.4.2 | A1 Due 9/8 |
Mon Sept 12 | Fast Sine/Cosine Transforms | 1.4 | P1.4.4 | |
Wed Sept 14 | Other Fast Transforms | 1.4 | P1.4.6, P1.4.7 | |
Mon Sept 19 | Sparse/Banded Cholesky | 4.2 | P4.2.11 P4.2.14 | |
Wed Sept 21 | " | 4.3 | P4.3.1 P4.3.4 | A2 Due 9/22 |
Mon Sept 26 | Sparse/Banded LU | 3.1-3.5 | ||
Wed Sept 28 | " | |||
Mon Oct 3 | Sparse Banded Qr | 5.1-5.3 | A3 Due 10/7 | |
Wed Oct 5 | " | |||
Wed Oct 12 | Symmetric Eigenvalue | 8.1-8.2 | ||
Mon Oct 17 | Symmetric Lanczos | 8.3 | ||
Wed Oct 19 | " | 9.1-9.2 | ||
Mon Oct 24 | Arnoldi and Jacobi Davidson | A4 Due 10/25 | ||
Wed Oct 26 | " | |||
Mon Oct 31 | Classical Ax=b Iterations | |||
Wed Nov 2 | Conjugate Gradients | A5 Due 11/11 | ||
Mon Nov 7 | ||||
Wed Nov 9 | Preconditioners | A6 Due 11/23 | ||
Mon Nov 14 | MINRES, LSQR | |||
Wed Nov 16 | GMRES, QMR, BiCgStab | |||
Mon Nov 21 | Multigrid | |||
Mon Nov 28 | Toeplitz Problems | |||
Wed Nov 30 | Semiseparable Problems | |||
Handout | Test Scripts | Solutions (Approx Mean scores in parens) |
Assignment 1 | Permkron(4.2) Dist (4.2) Sudoku (3.8) SemiSep (4.4) GenBlockSparse (4.1) | |
Assignment 2 | SampleStudentP1 (4.3), P2 (4.7) , P3 (5.0) , P4 (4.0) | |
Assignment 3 | P1, P1Out (4.7), P2 (3.2), P3 (3.9) | |
Assignment 4 | P1 (4.2), P2 (4.0), P3 (3.6) | |
Assignment 5 | P1 (4.2), P2 (4.4) P2Eg1, P2Eg2, P3 (3.2) | |
Assignment 6 | P1(4.8) P2 (4.8) | |
Assignment 7 |