Math 504/CS 575, Introductory Numerical Analysis: Numerical Linear Algebra
Spring, 2020

Time and Place: Tuesday / Thursday, DSH 126, 12:30pm-1:45pm
Instructor: Jacob B. Schroder, jbschroder unm.edu
Office Hours: SMLC 332
Wednesday: 12:30pm-2:00pm
Thursday: 2:00pm-3:30pm

Syllabus: PDF1  PDF2 (Room Updated Jan. 22)
Syllabus Update from Coronavirus:  PDF3

Prerequisites:

1. Math 464 or Math 514
2. We will be programming in numerical Python (can learn along the way)

Text: Numerical Linear Algebra by Trefethen and Bau, 1st Edition

Course Description: This course will introduce you to numerical (or applied) linear algebra. We will cover direct and iterative methods for the solution of linear systems of equations, least squares problems, eigenvalue problems, error analysis, and numerical stability. An introduction to geometric multigrid will take place, time permitting. Assignments will be a mixture of theoretical and programming problems. Programming will be done in numerical Python.

This is a required course for Applied Mathematics Masters students (Plan I and II), and is a standard prep class for the NA Qualifying Exam taken by PhD students.

Schedule of topics, course goals, and desired learning outcomes: Please see the syllabus.

Important Dates:
• Spring Break: March 16-20
• Midterm Exam: March, 26 Take Home, Due April 7th, Exam to be emailed
• Thursday, May 14, 10:00am-12:00pm (same room, different time)

Top

The course grade will be determined by

• Homework: 45%
• Midterm Exam: 25%
• Final Exam: 30%
The final grade for the class will be based on the summed weighted percentages above. Letter grades will be assigned as follows:
• A-, 90% or above
• B-, 80% or above
• C-, 70% or above
• D-, 60% or above
• F-, below 60%

The instructor reserves the right to curve grades to offset unforeseen circumstances. Such a curve will never decrease a student's letter grade below that from the above scheme.

Exams: There are two exams, a midterm and a final. Cheating on an exam will be handled in accordance with the dishonesty policy in the syllabus. There are no makeup exams; however, I am sympathetic to a student who is unable to take a scheduled test due to a hardship. Please contact the instructor before the exam (if possible), should such a hardship occur.

Exam grading disputes must be submitted in writing within one week after the work is returned.

Absences Policy: It is expected that each student regularly attend class.

• Course follows UNM handbook D-170 https://handbook.unm.edu/d170/
• Note, the handbook says "A student with excessive absences may be dropped from a course by the instructor with a grade of W/P or W/F."
• If you need to miss more than two classes during the semester, please contact the instructor.

Top

Homework: Homework will be posted every 1 to 2 weeks on the course webpage (i.e., here). Each homework will consist of a combination of computer and theoretical problems. You need to hand in a written report on the due date at the start of class. All plots/figures in the report must be generated in Python and not hand drawn (unless otherwise specified in the homework question). If using a Jupyter notebook with text and Latex blocks, a print-out of the notebook may be sufficient to answer some homework problems.

Some guidelines for your homework writeup are
1. It should be legibly and neatly presented, and include all the required code, figures and tables, in the order assigned.
2. Figures and tables should be well-labeled printouts.
3. Any discussion and analysis should be either typed or neatly written.
4. All sheets of paper must be stapled, your name written on front.
You are encouraged to work with each other on the homeworks, but the codes and your writeups have to be your own. That is, each student must turn in an individual and unique homework writeup.

Homework may be submitted late up to a week for 50% credit. Homework grading disputes must be submitted in writing within one week after the work is returned.

Software: Use of numerical Python will be required to complete the course homework assignments. Some homeworks may require use of the open-source PyAMG package. Please see https://github.com/pyamg/pyamg/wiki/Installing for tips on installing PyAMG.

Homework Assignments
1. Homework 1 (PDF)    Due: Beginning of class, Jan. 30
2. Homework 2 (PDF)    Due: Beginning of class, Feb 6
3. Homework 3 (PDF)    Due: Beginning of class, Feb 18
4. Homework 4 (PDF)    Due: Beginning of class, March 3
5. Homework 5 (PDF)    Due: Beginning of class, March 12
6. NEW HW6 PDF!
Homework 6 (PDF)    Due: Midnight, Sunday, March 29 on UNM LEARN
NEW HW6 PDF!
7. Homework 7 (PDF)    Due: Midnight, Sunday, April 5 on UNM LEARN
8. Homework 8 (PDF)    Due: Midnight, Sunday, April 19 on UNM LEARN
9. Homework 9 (PDF)    Due: Midnight, Sunday, April 26 on UNM LEARN
10. Homework 10 (PDF)    Due: Midnight, Sunday, May 3 on UNM LEARN
11. And that's it! No more HW after this.

Top

Supplemental Lecture Materials:

Lectures will be given on the board, with some supplemental materials (mostly code) appearing here.
1.      lecture1_2_3_basic_linalg.ipynb
scipy_tutorial.pdf
2.      lecture4_svd.ipynb
3.      lecture5_svd.ipynb
4.      lecture6_proj.ipynb
5.      lecture7_QR.ipynb
6.      lecture8_QR.ipynb
7.      lecture10_HH.ipynb
8.      lecture11_LeastSq.ipynb      polls.csv
9.      lecture12_Cond.ipynb
10.      lecture13_FP.ipynb

Begin post Covid-19 online part of the course

11. By Friday March 27   |   Read Lecture 16 in TB
⇒  Watch   lecture 16 video
→    Lecture 16 notes PDF
⇒  Work Through   lecture16_HH_Stability.ipynb

12. By Friday April 3   |   Read Lecture 17 in TB
⇒  Watch   lecture 17 video (Part 1)
⇒  Watch   lecture 17 video (Part 2)
⇒  Watch   lecture 17 video (Part 3)
→    lecture 17 parts 2 and 3 notes PDF

13. By Friday April 10   |   Read Lecture 20 in TB
⇒  Watch   lecture 20 video
→    lecture 20 notes PDF

14. By Friday April 17   |   Read Lectures 21, 24 in TB   |   Skim short lecture 22
⇒  Watch   lecture 21 video
⇒  Watch   lecture 24 video
→    lecture 24 notes PDF
⇒  Work Through   lecture22_GE_stability.ipynb  ⇐ ⇐  Added !!

15. By Friday April 24   |   Read Lectures 27, 33 in TB   |   Skim short lecture 32
⇒  Watch   lecture 27 video
→    lecture 27 notes PDF
⇒  Work Through   lecture27_Rayleigh.ipynb

⇒  Watch   lecture 33 video
→    lecture 33 notes PDF
⇒  Work Through   lecture33_34_Arnoldi.ipynb

16. By Friday May 1   |   Read Lectures 35, 38, 40
⇒  Watch   lecture 35 video
→    lecture 35 notes PDF
⇒  Work Through   lecture35_GMRES.ipynb

⇒  Watch   lecture 38 video
→    lecture 38 notes PDF
⇒  Work Through   lecture38_CG.ipynb  with     cg.py

17. Review Week (ending May 8)   |   Mostly online office hours, Some discussion of preconditioning
⇒  Work Through   lecture40_Precon.ipynb
Review Questions:
See old qualifying exams at   https://math.unm.edu/graduate/past-qualifying-exams-numerical-analysis

Top

Other Material

Python / SciPy And more Python / SciPy..

Top