本书介绍了数值方法的理论及实用知识,讲述了如间利用MATLAB软件实现各种数值算法,以便为读者今后的学习打下坚实的数值分析与科学计算基础。本书内容丰富、翔实,可以根据不同的学习对象和学习目的选择相应的章节,形成理论与实践相结合的学习策略。书中的每个概念均以实例说明,同时还包含大量的习题,范围涉及多个不同的领域。通过这些实例,进一步说明数值方法是如何被实际应用的。本书的突出特点是强调利用MATLAB进行数值方法的程序设计,可提高读者的实践能力和加深对数值方法理论的理解;同时它的覆盖范围广,包含数据方法的众多研究领域,可以满足不同专业和不同层次学生的需求。\r\n\r\n 本书概念清晰、逻辑性强,可作为大专院校计算机、工程和应用数学专业的教材和参考书。\r\n\r\n\r\n
\r\n
1 Preliminaries 1 \r\n\r\n 1.1 Review of Calculus 2 \r\n\r\n 1.2 Binary Numbers I3 \r\n\r\n 1.3 Error Analysis 24 \r\n\r\n 2 The Solution of Nonlinear Equations \r\n\r\n f(x) == 0 40 \r\n\r\n 2.l Iteration for Solving x = g(x) 41 \r\n\r\n 2.2 Bracketing Methods for Locating a Root 51 \r\n\r\n 2.3 Initial Approximation and Convergence Criteria 62 \r\n\r\n 2.4 Newton-Raphson and Secant Methods 70 \r\n\r\n 2.5 Aitken's Process and Steffensen's and \r\n\r\n Muller's Methods (Optional) 90 \r\n\r\n 3 The Solution of Linear Systems AX = B \r\n\r\n 3.1 Introduction to Vectors and Matrices 101 \r\n\r\n 3.2 Properties of Vectors and Matrices 109 \r\n\r\n 3.3 Uppertriangular Linear Systems i20 \r\n\r\n 3.4 Gaussian Elimination and Pivoting 125 \r\n\r\n 3.5 TriangularFactorization 141 \r\n\r\n 3.6 Iterative Methods tbr Linear Systems 156 \r\n\r\n 3.7 Iteration for Non]inear Systems: Seide1 and \r\n\r\n Newton's Methods (Optiona1) i67 \r\n\r\n 4 Interpolation and Polynomial \r\n\r\n Approximation 186 \r\n\r\n 4.1 Taylor Series and Calculation of Functions I87 \r\n\r\n 4.2 Introduction to Interpolation i99 \r\n\r\n 4.3 Lagrange Approximation 206 \r\n\r\n 4.4 Newton Po1ynomials 220 \r\n\r\n 4.5 Chebyshev Polynomials (Optional) 230 \r\n\r\n 4.6 Pade Approximations 243 \r\n\r\n 5 Curve Fitting 252 \r\n\r\n 5.1 Least-squares Line 253 \r\n\r\n 5.2 Curve Fitting 263 \r\n\r\n 5.3 Interpolation by Spline Functions 279 \r\n\r\n 5.4 Fourier Series and Trigonometric Polynomia1s 297 \r\n\r\n 6 Numerical Differentiation 310 \r\n\r\n 6.1 Approximating The Derivative 311 \r\n\r\n 6.2 Numerical Differentiation Formulas 329 \r\n\r\n 7 Numerical Integration J42 \r\n\r\n 7.1 Introduction to Quadrature 343 \r\n\r\n 7.2 Composite Trapezoidal and Simpson's Rule 354 \r\n\r\n 7.3 Recursive Rules and Romberg Integration 368 \r\n\r\n 7.4 Adaptive Quadrature 382 \r\n\r\n 7.5 Gauss-Legendre Integration (Optional) 389 \r\n\r\n 8 Numerical Optimization 399 \r\n\r\n 8.1 Minimization of a Function 400 \r\n\r\n 9 Solution of Differential Equations 426 \r\n\r\n 9.1 Introduction to Differential Equations 427 \r\n\r\n 9.2 Euler's Method Jj3 \r\n\r\n 9.3 Heun's Method 443 \r\n\r\n 9.4 Taylor Series Method 451 \r\n\r\n 9.5 Runge-Kutta Methods 458 \r\n\r\n 9.6 Predictor-Corrector Methods 474 \r\n\r\n 9.7 Systems of Differential Equations 487 \r\n\r\n 9.8 Boundary Value Problems 497 \r\n\r\n 9.9 Finite-difference Method 505 \r\n\r\n 10 Solution of Partial Differential Equations S14 \r\n\r\n 10.1 Hyperbolic Equations 516 \r\n\r\n 10.2 Parabolic Equations 526 \r\n\r\n 10.3 Elliptic Equations 538 \r\n\r\n 11 Eigenvalues and Eigenvectors 555 \r\n\r\n 11.1 Homogeneous Systems f The Eigenvalue Problem 556 \r\n\r\n 11.2 Power Method 568 \r\n\r\n 11.3 Jacobi's Method 581 \r\n\r\n 11.4 Eigenvalues of Symmetric Matrices 594 \r\n\r\n Appendix: An Introduction to MATLAB 608 \r\n\r\n Some Suggested References for Reports 616 \r\n\r\n Bibliography and References 619 \r\n\r\n Answers to Selected Exercises 631 \r\n\r\n Index 655 \r\n
\r\n
This book provides a fundamental introduction to numerical analysis suitable for undergraduate students in mathematics, computer science, physical sciences, and engineering. It is assumed that the reader is fami1ial with calculus and has taken a structured programming course. The text has enough material fitted modularly for either a single-term course or a year sequence. In short, the book contains enough material so instructors will be able to select topics appropriate to their needs.
Students of various backgrounds should find numerical methods quite interesting and useful, and this is kept in mind throughout the book. Thus, there is a wide variety of examples and problems that help to sharpen one's skill in both the theory and practice of numerica1 analysis. Computer calculations are Presented in the form of tables and graphs whenever possible so that the resulting numerical approximations are easier to visualize and interpret. MATLAB programs are the vehicle for presenting the underlying numerical algorithms.
Emphasis is placed on understanding why numerical methods work and their limitations. This is challenging and involves a balance between theory, error analysis, and readability. An error analysis for each method is presented in a fashion that is appropriate for the method at hand, yet does not turn off the reader A mathematical derivation for each method is given that uses elementary results and builds the student's understanding of calcu1us. Computer assignments using MATLAB give students an opportunity to practice their skills at scientific programming.
Shorter numerical exercises can be carried out with a pocket calculator/computer, and the longer ones can be done using MATLAB subroutines. It is left for the instructor to guide the students regarding the pedagogical use of numerical computations.
Each instructor can make assignments that are appropriate to the available computing resources. Experimentation with the MATLAB subroutine libraries is encouraged.
These materials can be used to assist students in the completion of the numerical analysis component of computer laboratory exercises.
This Third Edition grows out of much polishing of the narrative for the Second Edition. For example, the QR method has been added to the chapter on Eigenvalues and Eigenvectors. New to this edition is the explicit use of the software MATLAB.
An appendix gives an introduction to MATLAB syntax. Examples have been added throughout the text with MATLAB and complete MATLAB programs are given in each section. An instructor's disk is available upon request from the publisher Previously we took the attitude that any software program that students mastered would work fine. However, many students entering this course have yet to master a programming language (computer science students excepted). MATLAB has become the tool of near1y all engineers and applied mathematicians, and its newest versions have improved the programming aspects. So we think that students will have an easier and more productive time in this MATLAB version of our text.
Acknowledgments
We would 1ike to express my gratitude to all the people whose efforts contributed to the various editions of this book. I (John Mathews) thank the students at California Statue University, Fullerton. I thank my co11eagues Stephen Goode, Mathew Koshy, Edward Sabotka, Hatris Schultz, and Soo Tang Tan for their support in the first edition; additionally, I thank Russell Egbert, Wi11iam Gearhart, Ronald Miller, and Greg Pierce for their suggestions for the second edition. I also thank James Friel, Chairman of the Mathematics Department at CSUF for his encouragement.
Reviewers who made useful recommendations for the first edition are Walter M.Patterson, III, Lander College; George B. Miller, Central Connecticut State University; Peter J. Gingo, The University of Akron; Michael A. Freedman, The University of A1aska, Fairbanks; and Kenneth P. Bube, University of California, Los Angeles. For the second edition, we thank Richard Bumby, Rutgers University; Robert L. Curry U.S. Army; Bruce Edwards, University of Florida; and David R. Hill, Temple University.
For this third edition we wish to thank Tim Sauer, George Mason University; Gerald M. Pitstick, University of Oklahoma; Victor De Brunner, University of Oklahoma; George Trapp, West Vrginia University; Tad Jarik, University of Alabama, Huntsville; Jeffrey S. Scroggs, North Carolina State University; Kurt Georg, Colorado State University; and Jarnes N. Craddock, Southem Illinois University at Carbondale.
Suggestions for improvements and additions to the book are a1ways welcome and can be made by corresponding directly with the authors.
John H. Mathews Kurtis D. Fink Mathematics Department Department of Mathematics California State University Northwest Missouri State University Fullerton, CA 92634 Maryville, MO 64468
mathews@fullerton.edu kfink@mail.nwmissouri.edu