MATH/CS 375: Introduction to Numerical Computing



Time and Place: TR 9:30 am - 10:45 am, SMLC 356
Instructor: Jehanzeb H. Chaudhry (Zeb), jehanzeb@unm.edu, www.math.unm.edu/~jehanzeb
Office Hours: Tuesday: 11:00 am - Noon, Wednesday: 3:00 pm - 5:00 pm (SMLC 310)


Texts: Numerical Mathematics and Computing, by E. Ward Cheney and David R. Kincaid, 7th Edition. (6th Edition is also fine).
Other Recommended Texts:
Numerical Analysis, by T. Sauer.
Scientific Computing: An Introductory Survey, Revised Second Edition, by M. Heath.
Prerequisites: CS 151 or CS 152 or Phys 290 or ECE 131 or comparable programming skills AND Math 316 or Math 314 or Math 321 or equivalent.

Course Description:   This is an introductory numerical analysis course. We study numerical methods to solve linear and nonlinear equations, to interpolate and approximate data, and methods for numerical integration and differentiation. We will implement all algorithms in MATLAB, and begin the course with a MATLAB tutorial. Python is also allowed for assignments though we will not spend time learning it in class.
The topics that we cover in this class are Floating-Point Representation, Linear Systems, Nonlinear Equations, Interpolation, Numerical Differentiation and Integration, Initial Value Problems and Least-Squares Methods. Additional topics may be covered at the instructor's discretion depending on time and student interest.
You may also do your homeworks in Python as a Jupyter notebook. Talk to the instructor if you want to pursue this option.

Grading:  
50% Homeworks
20% Midterm  
30% Final Exam

Important Dates:  
Midterm :   March 7 (during class)   Last semesters exam
Final Exam:   May 7. From 7:30 - 9: 30 am (Same room, but different time than regular class time)

Syllabus  

MATLAB Tutorial Files: MATLAB tutorial (PDF) script with all commands(matlab_tutorial.m) ApproxExp.m f1.m df1.m MyDeriv.m my_funky_fcn.m

More MATLAB Resources:


Python Resources:


Homework  
All homeworks are due in the beginning of class.
Homework 0   Due: Never 
Homework 1   Due: January 31  
Homework 2   Due: Feb 7 
Homework 3   Due: Feb 14  
Homework 4   Due: Feb 26 Feb 28   generate_SPD_mat_and_rhs_vec.m generate_SPD_mat_and_rhs_vec.py
Homework 5   Due: March 21 script_q2.m script_q3.m generate_SPD_mat_and_rhs_vec.m my_jacobi.m my_gauss_siedel.m my_cg.m
Homework 6   Due: April 4
Homework 7   Due: April 11
Homework 8   Due: April 18 eval_spine.m
Homework 9   Due: April 25
Homework 10   Due: May 2 polls.csv

Lectures  
Lecture 1 Slides 4up
Lecture 2 Slides 4up
Lecture 3 Slides 4up
Lecture 4 Slides 4up
Lecture 5 Slides 4up diff_fwd.m diff_fwd_plot.m diff_central.m (available after HW3) diff_richard.m (available after HW3)
Lecture 6 Slides 4up
Lecture 7 Slides 4up Matlab Files: test_flops.m GE_naive.m GE_naive_script.m
Lecture 8 Slides 4up
Lecture 9 Slides 4up
Lecture 10 Slides 4up
Lecture 11 Slides 4up
Lecture 12 Slides 4up fractals.m
Lecture 13 Slides 4up
Lecture 14 Slides 4up
Lecture 15 Slides 4up
Lecture 16 Slides 4up trap_int_test.m simp_int_test.m
Lecture 17 Slides 4up
Lecture 18 Slides 4up
Lecture 19 Slides 4up
Lecture 20 Slides 4up
Lecture 21 Slides 4up forward_euler_script

Review Questions  
Questions for Floating Point and Taylor Series
Questions for Differentiation
Questions for Linear Systems
Questions for Iterative Solvers
Questions for Root Finding
Questions for Interpolation
Questions for Splines
Questions for Numerical Integration
Questions for Power Method
Questions for SVD and Least-Squares
Questions for Monte-Carlo
Questions for ODEs