Instructor¶
This is a course developed by Andreas Buttenschoen and Brian van Koten at the University of Massachusetts Amherst.
Description¶
Math 551 is a first course in numerical analysis that introduces students to the fundamental concepts and techniques of scientific computing. We will study numerical algorithms, floating-point arithmetic and round-off errors, root-finding methods for nonlinear equations, and numerical linear algebra including direct and iterative methods for solving linear systems. The course emphasizes both theoretical understanding and practical implementation using Python.
Learning Goals¶
Understand floating-point arithmetic and sources of numerical error
Apply Taylor’s theorem to analyze the accuracy of numerical approximations
Implement and analyze root-finding algorithms (bisection, Newton’s method, fixed-point iteration)
Solve linear systems using direct methods (LU factorization, Gaussian elimination)
Apply iterative methods (Jacobi, Gauss-Seidel) for large sparse systems
Construct and use polynomial interpolants (Lagrange, Newton, Chebyshev)
Perform matrix computations using Python, NumPy, and SciPy
Prerequisites¶
MATH 233 (Multivariate Calculus)
MATH 235 (Introduction to Linear Algebra)
A scientific programming course: COMPSCI 121, E&C-ENG 122, PHYSICS 281, or E&C-ENG 242
How to Use This Book¶
Learning Outcomes appear at the start of each chapter. Use them to check your understanding—if you can do what each outcome describes, you’ve mastered that material.
Exercises come in three types:
Self-assessment questions — quick conceptual checks
Pencil-and-paper problems — work through by hand to build intuition
Computational exercises — implement algorithms in Python
Problems marked (optional) go beyond the core material.
Notebooks in the Interactive Notebooks section contain runnable code. Click the Colab badge to open in Google Colaboratory, or use the launch button for Binder/JupyterHub.
Course Topics¶
Numerical Algorithms - Taylor polynomials, finite difference approximations, error analysis
Round-off Errors - Floating point arithmetic, machine epsilon, catastrophic cancellation
Nonlinear Equations - Bisection method, Newton’s method, fixed point iteration
Linear Algebra Background - Matrix norms, condition numbers, sensitivity analysis
Direct Methods - LU factorization, Gaussian elimination, Cholesky decomposition
Iterative Methods - Jacobi method, Gauss-Seidel, convergence analysis
Polynomial Interpolation - Lagrange interpolation, Newton form, Chebyshev polynomials
Mathematical Python Resources¶
Mathematical Python - Great resource to get started with mathematical Python
Course Grading Tools¶
PLOM Grading will be used to grade quizzes and exams.
License¶
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
