ORC Course Description: This course introduces computational algorithms solving problems from a variety of scientific disciplines. Mathematical models describing a phenomenon of interest are typically too complex to construct analytical solutions, leading us to numerical methods. Motivated by models from physics, biology, and medicine, students will develop numerical algorithms and mathematically analyze their accuracy, efficiency, and convergence properties. The course will provide external coding resources as students will implement algorithms in MATLAB. Sample topics include matrix decompositions, inverse problems, optimization, data fitting, and differential equations.
Course Goals: This course emphasizes the numerical analysis of classical computational methods, and is a fundamental topic in applied mathematics. An appropriate computational algorithm must maintain the physical properties of the underlying system matical properties it is supposed to solve. Moreover, the method must be stable to small perturbations inevitably introduced either as a consequence of reduced order modeling or noisy data collection, so that the results are deemed trustworthy by the domain scientists. Numerical analysis provides the methodology needed analyze a given computational method used for a particular class of problems, as well as the tools for developing new computational methods for modern problems. Finally, numerical analysts answer the question, ``what assumptions of the underlying problem are necessary for this computational method to succeed?'' Such a question is critical as we incorporate increasing amounts of information (coming both from experts and data collections).
In this course we will focus on numerical linear algebra, interpolation and approximation, which are all essential when solving problems in data science, signal and image processing, and evolutionary dynamics. We will use MATLAB to verify our understanding of the theoretical results, but developing programming skills is not the main focus of the course.
Prerequisites: Math 22 or instructor approval. Some experience in MATLAB or another programming language is expected.
Textbooks:
Grading: Grades in the class will be based on homework sets which will ensure mastery of theoretical and computational skills. Students may work together on the homework, but will need to turn in their own assignments. Students may not work together on final take home exam, but may do a joint final project. It is strongly recommended that all homework assignments, especially those involving programming problems, be started early.
Grading formula: (i) Homework sets (70%); (ii) final project or take home exam (20%); (iii) Participation & Attendance (10%).
Week | Lecture |
---|---|
Weeks 1 & 2 | Chapters 1 & 2: Preliminaries. The second class will be devoted to Python. Please bring your laptop (taught by Jonathan Lindbloom). |
Week 3 | Chapter 3: Direct Methods for Linear Systems. |
Weeks 4 | Chapter 4: Least Square Problems. |
Week 5 | Chapter 7: Polynomial Interpolation. |
Week 6 | Chapter 8: Approximation of Functions |
Week 7 | Chapter 9: Differentiation and Integration |
Week 8 | Chapter 10: Zeroes of Nonlinear Functions |
Week 9 | Chapter 5: Iterative Methods for Linear Systems |