Learning through doing is the foundation of this book, which allows readers to explore case studies as well as expository material. The book provides a practical guide to the numerical solution of linear and nonlinear equations, differential equations, optimization problems, and eigenvalue problems. It treats standard problems and introduces important variants such as sparse systems, differential-algebraic equations, constrained optimization, Monte Carlo simulations, and parametric studies. Stability and error analysis is emphasized, and the MATLAB® algorithms are grounded in sound principles of software design and in the understanding of machine arithmetic and memory management.
Nineteen case studies allow readers to become familiar with mathematical modeling and algorithm design, motivated by problems in physics, engineering, epidemiology, chemistry, and biology. A website provides solutions to the challenges that are offered throughout the book and also supplies relevant MATLAB codes, derivations, and supplementary notes and slides.
Audience: This book is intended as a primary text for courses in numerical analysis, scientific computing, and computational science for advanced undergraduate and early graduate students. Physicists, chemists, biologists, earth scientists, astronomers, and engineers whose work involves numerical computing also will find the book useful as a reference and tool for self-study.
Contents: Preface; Part I: Preliminaries: Mathematical Modeling, Errors, Hardware, and Software; Chapter 1: Errors and Arithmetic; Chapter 2: Sensitivity Analysis: When a Little Means a Lot; Chapter 3: Computer Memory and Arithmetic: A Look Under the Hood; Chapter 4: Design of Computer Programs: Writing Your Legacy; Part II: Dense Matrix Computations; Chapter 5: Matrix Factorizations; Chapter 6: Case Study: Image Deblurring: I Can See Clearly Now; Chapter 7: Case Study: Updating and Downdating Matrix Factorizations: A Change in Plans; Chapter 8: Case Study: The Direction-of-Arrival Problem; Part III: Optimization and Data Fitting; Chapter 9: Numerical Methods for Unconstrained Optimization; Chapter 10: Numerical Methods for Constrained Optimization; Chapter 11: Case Study: Classified Information: The Data Clustering Problem; Chapter 12: Case Study: Achieving a Common Viewpoint: Yaw, Pitch, and Roll; Chapter 13: Case Study: Fitting Exponentials: An Interest in Rates; Chapter 14: Case Study: Blind Deconvolution: Errors, Errors, Everywhere; Chapter 15: Case Study: Blind Deconvolution: A Matter of Norm; Part IV: Monte Carlo Computations; Chapter 16: Monte Carlo Principles; Chapter 17: Case Study: Monte-Carlo Minimization and Counting One, Two, Too Many; Chapter 18: Case Study: Multidimensional Integration: Partition and Conquer; Chapter 19: Case Study: Models of Infections: Person to Person; Part V: Ordinary Differential Equations; Chapter 20: Solution of Ordinary Differential Equations; Chapter 21: Case Study: More Models of Infection: It s Epidemic; Chapter 22: Case Study: Robot Control: Swinging Like a Pendulum; Chapter 23: Case Study: Finite Differences and Finite Elements: Getting to Know You; Part VI: Nonlinear Equations and Continuation Methods; Chapter 24: Nonlinear Systems; Chapter 25: Case Study: Variable-Geometry Trusses; Chapter 26: Case Study: Beetles, Cannibalism, and Chaos; Part VII: Sparse Matrix Computations, with Application to Partial Differential Equations; Chapter 27: Solving Sparse Linear Systems: Taking the Direct Approach; Chapter 28: Iterative Methods for Linear Systems; Chapter 29: Case Study: Elastoplastic Torsion: Twist and Stress; Chapter 30: Case Studt: Fast Solvers and Sylvester Equations: Both Sides Now; Chapter 31: Case Study: Eigenvalues: Valuable Principles; Chapter 32: Multigrid Methods: Managing Massive Meshes; Bibliography; Index