Hello, if you have any need, please feel free to consult us, this is my wechat: wx91due
MATH 7203 -- Numerical Analysis 1 (Spring 2025)
- Time: Tuesday and Thursday evenings, 5:50pm – 7:30pm.
- Room: Shillman Hall 210
- Instructor: Dr. Stuart Brorson
- Office: 540A Nightingale Hall
- Office Hours: Thursday 3:30 – 5:30pm or by appointment.
Syllabus
Numerical Analysis 1 introduces methods and techniques used in contemporary number crunching. Covers floating-point computations involving scalars, vectors, and matrices; evaluating functions; numerical integration and differentiation; filtering, smoothing, and interpolating real data; solving systems of linear equations; eigenvalue and SVD decompositions; computing Fourier transforms. The class focuses on practical techniques to solve engineering and physical science problems. Common software engineering practices are presented. Knowledge of programming in Matlab (or some other computer language) is assumed.
Books and software
- Textbook: “Data-Driven Modeling and Scientific Computation”, by J. Nathan Kutz.
- Computer software: A central part of this class involves writing computer programs. Students are expected to have access to a computer capable of running MATLAB. MATLAB is available online through Canvas. Students may alternately use a different programming language such as Julia, Python/NumPy or C/C++ if desired after consulting with the class lecturer.
Prerequisites
- Integral and differential calculus
- Linear algebra
- Prior programming experience encouraged.
Grading and expectations of students
Grades are determined by the student's performance on three areas:
- Homework problems (60%). Homework will be assigned in each class, due on the weekend after the next class (1 ½ weeks). Some homework problems will involve pencil and paper derivations. However, the majority of the homework will require students to write a computer program solving a problem designed to exemplify concepts taught during class. Students must submit their program with a “test harness” -- an outer program which invokes their program and exercises it, demonstrating that it behaves correctly for as many inputs as possible. Homework should be e-mailed to the grader upon completion.
- Mini-projects (35%). Students will work on two mini-projects – one around week 7, and one at the end of the class. For their mini-projects, students will work on developing a program to solve a non-trivial problem of their choosing. The projects will build upon concepts presented in class. A list of suggested lab projects will be made prior to each lab period to help students looking for ideas. Each student will work on a project individually. Students will have 2 – 3 weeks to complete the project. Upon completion of their project, each student will create a 10 min PowerPoint talk discussing their project and presenting their results. Each student will present his/her talk to the class, and submit their code & slides to the lecturers for grading. The goal is to give students experience working on writing non-trivial computer programs solving interesting problems.
- Class participation (5%). Students are expected to come to class and be engaged. Questions are encouraged.
Class topics
- Computer architecture and floating point computations. Evaluation of functions. Numerical error and stability.
- Time series analysis – the FFT and its applications.
- Root finding in one and many dimensions.
- Numerical linear algebra. Dense and sparse matrices.
- Dense matrices and direct solvers for systems of linear equations.
- Sparse matrices and iterative solvers for systems of linear equations.
- Eigendecompositions and the SVD.
- PCA for data analysis.
- Interpolation and splines.
- Regression and fitting functions to data.
- Numerical integration and quadrature rules
We plan to have a couple of sessions featuring guest lecturers from industry.