Numerical Analysis is a comprehensive introduction to numerical methods for students in mathematics, computer science, engineering and the physical sciences. It assumes no background beyond a good first course in calculus. Some familiarity with differential equations and linear algebra would be helpful, but the authors provide adequate introductory material in those areas. The book has sufficient material for two or three courses over a full year — actually even more than that — but most schools would probably use it for a single term course.
The authors’ stated goals for the book remain as they were in the first edition nearly thirty years ago. They are:
To introduce modern approximation techniques: to explain how, why, and when they can be expected to work; and to provide a foundation for further study of numerical analysis and scientific computing.
Several changes have been made to this ninth edition. Perhaps the most significant one has been an extensive expansion of the treatment of numerical linear algebra. The authors have added a section on the Singular Value Decomposition (SVD), and rewritten pieces of earlier chapters to include necessary material on symmetric and orthogonal matrices. They have also incorporated many new examples and exercises. This is an important and valuable change since the SVD is now much more widely used across a variety of disciplines. It is, however, a bit of a concern for students who use this book without the benefit of an earlier linear algebra course. Without a somewhat deeper understanding of linear algebra, the SVD (and even the simpler matrix factorizations the authors discuss) can seem like sophisticated numerical magic. The problem isn’t the lack of proofs so much as the absence of an intuitive foundation.
There is much to admire about this book. It is so comprehensive that it can serve both as a good introduction and as a reference for many topics. There is almost nothing in numerical analysis that it doesn’t cover, from solutions of linear and nonlinear systems of equations, to ordinary and partial differential equations, numerical differentiation and integration, approximation by polynomials, and estimation of eigenvalues. It’s all there, complete and much of it very tidily done. Yet in places it suffers from this comprehensiveness, for it occasionally trades off comprehensibility for completeness. The treatment of Gaussian quadrature, for example, — a widely used technique of numerical integration, and one the authors clearly recognize as superior to the other methods they describe — is just too sketchy.
The authors provide pseudo-code for many of the algorithms they discuss. This is clearly valuable to students who will sometimes need to create executable computer versions. However, exception and error handling are rarely included. (The only examples I could find were for iterative algorithms that did not converge in a pre-selected number of iterations.) But algorithms fail. If you’re lucky, they fail egregiously, so you can’t help but notice. If you’re unlucky, the failure is subtle and hard to detect. Students, I believe, need to be strongly encouraged to prepare for these failures, know the symptoms, and understand what to do in response. I understand that to include error handling in all the algorithms would be a distraction, but to downplay it gives the impression that failure is rare. That’s the wrong lesson.
A couple of other things are mildly troublesome. I question the value of the brief review of calculus in the first chapter. It makes much more sense to review the necessary elements — such as Taylor series — as they arise. So why not pack it away in an appendix for use as needed? The very next section — on round-off errors and computer arithmetic — is very nicely done, but again is too early in the story. The topic is much better handled when a concrete example shows unforeseen consequences of finite precision arithmetic.
Overall, this is a polished and well-tested textbook. It has an appealing look and feel. Any of the deficiencies I have noted could easily be remedied by the classroom instructor. The high price of the book is, of course, hard to ignore. A slimmed-down version, suitable for a one-term course, would be desirable.
Bill Satzer (firstname.lastname@example.org) is a senior intellectual property scientist at 3M Company, having previously been a lab manager at 3M for composites and electromagnetic materials. His training is in dynamical systems and particularly celestial mechanics; his current interests are broadly in applied mathematics and the teaching of mathematics.
1. MATHEMATICAL PRELIMINARIES AND ERROR ANALYSIS.
Review of Calculus. Round-off Errors and Computer Arithmetic. Algorithms and Convergence. Numerical Software.
2. SOLUTIONS OF EQUATIONS IN ONE VARIABLE.
The Bisection Method. Fixed-Point Iteration. Newton's Method and its Extensions. Error Analysis for Iterative Methods. Accelerating Convergence. Zeros of Polynomials and Müller's Method. Survey of Methods and Software.
3. INTERPOLATION AND POLYNOMIAL APPROXIMATION.
Interpolation and the Lagrange Polynomial. Data Approximation and Neville's Method. Divided Differences. Hermite Interpolation. Cubic Spline Interpolation. Parametric Curves. Survey of Methods and Software.
4. NUMERICAL DIFFERENTIATION AND INTEGRATION.
Numerical Differentiation. Richardson's Extrapolation. Elements of Numerical Integration. Composite Numerical Integration. Romberg Integration. Adaptive Quadrature Methods. Gaussian Quadrature. Multiple Integrals. Improper Integrals. Survey of Methods and Software.
5. INTIAL-VALUE PROBLEMS FOR ORDINARY DIFFERENTIAL EQUATIONS.
The Elementary Theory of Initial-Value Problems. Euler's Method. Higher-Order Taylor Methods. Runge-Kutta Methods. Error Control and the Runge-Kutta-Fehlberg Method. Multistep Methods. Variable Step-Size Multistep Methods. Extrapolation Methods. Higher-Order Equations and Systems of Differential Equations. Stability. Stiff Differential Equations. Survey of Methods and Software.
6. DIRECT METHODS FOR SOLVING LINEAR SYSTEMS.
Linear Systems of Equations. Pivoting Strategies. Linear Algebra and Matrix Inversion. The Determinant of a Matrix. Matrix Factorization. Special Types of Matrices. Survey of Methods and Software.
7. ITERATIVE TECHNIQUES IN MATRIX ALGEBRA.
Norms of Vectors and Matrices. Eigenvalues and Eigenvectors. The Jacobi and Gauss-Siedel Iterative Techniques. Iterative Techniques for Solving Linear Systems. Relaxation Techniques for Solving Linear Systems. Error Bounds and Iterative Refinement. The Conjugate Gradient Method. Survey of Methods and Software.
8. APPROXIMATION THEORY.
Discrete Least Squares Approximation. Orthogonal Polynomials and Least Squares Approximation. Chebyshev Polynomials and Economization of Power Series. Rational Function Approximation. Trigonometric Polynomial Approximation. Fast Fourier Transforms. Survey of Methods and Software.
9. APPROXIMATING EIGENVALUES.
Linear Algebra and Eigenvalues. Orthogonal Matrices and Similarity Transformations. The Power Method. Householder's Method. The QR Algorithm. Singular Value Decomposition. Survey of Methods and Software.
10. NUMERICAL SOLUTIONS OF NONLINEAR SYSTEMS OF EQUATIONS.
Fixed Points for Functions of Several Variables. Newton's Method. Quasi-Newton Methods. Steepest Descent Techniques. Homotopy and Continuation Methods. Survey of Methods and Software.
11. BOUNDARY-VALUE PROBLEMS FOR ORDINARY DIFFERENTIAL EQUATIONS.
The Linear Shooting Method. The Shooting Method for Nonlinear Problems. Finite-Difference Methods for Linear Problems. Finite-Difference Methods for Nonlinear Problems. The Rayleigh-Ritz Method. Survey of Methods and Software.
12. NUMERICAL SOLUTIONS TO PARTIAL DIFFERENTIAL EQUATIONS.
Elliptic Partial Differential Equations. Parabolic Partial Differential Equations. Hyperbolic Partial Differential Equations. An Introduction to the Finite-Element Method.
Survey of Methods and Software.