Applied Numerical Methods Using MATLABISBN: 9780471698333
528 pages
May 2005

An Instructor's Manual presenting detailed solutions to all the problems in the book is available online.
Preface xiii
1 MATLAB Usage and Computational Errors 1
1.1 Basic Operations of MATLAB 1
1.1.1 Input/Output of Data from MATLAB Command Window 2
1.1.2 Input/Output of Data Through Files 2
1.1.3 Input/Output of Data Using Keyboard 4
1.1.4 2D Graphic Input/Output 5
1.1.5 3D Graphic Output 10
1.1.6 Mathematical Functions 10
1.1.7 Operations on Vectors and Matrices 15
1.1.8 Random Number Generators 22
1.1.9 Flow Control 24
1.2 Computer Errors Versus Human Mistakes 27
1.2.1 IEEE 64bit FloatingPoint Number Representation 28
1.2.2 Various Kinds of Computing Errors 31
1.2.3 Absolute/Relative Computing Errors 33
1.2.4 Error Propagation 33
1.2.5 Tips for Avoiding Large Errors 34
1.3 Toward Good Program 37
1.3.1 Nested Computing for Computational Efficiency 37
1.3.2 Vector Operation Versus Loop Iteration 39
1.3.3 Iterative Routine Versus Nested Routine 40
1.3.4 To Avoid Runtime Error 40
1.3.5 Parameter Sharing via Global Variables 44
1.3.6 Parameter Passing Through Varargin 45
1.3.7 Adaptive Input Argument List 46
Problems 46
2 System of Linear Equations 71
2.1 Solution for a System of Linear Equations 72
2.1.1 The Nonsingular Case (M = N) 72
2.1.2 The Underdetermined Case (M <N): MinimumNorm Solution 72
2.1.3 The Overdetermined Case (M >N): LeastSquares Error Solution 75
2.1.4 RLSE (Recursive LeastSquares Estimation) 76
2.2 Solving a System of Linear Equations 79
2.2.1 Gauss Elimination 79
2.2.2 Partial Pivoting 81
2.2.3 Gauss–Jordan Elimination 89
2.3 Inverse Matrix 92
2.4 Decomposition (Factorization) 92
2.4.1 LU Decomposition (Factorization): Triangularization 92
2.4.2 Other Decomposition (Factorization): Cholesky, QR, and SVD 97
2.5 Iterative Methods to Solve Equations 98
2.5.1 Jacobi Iteration 98
2.5.2 Gauss–Seidel Iteration 100
2.5.3 The Convergence of Jacobi and Gauss–Seidel Iterations 103
Problems 104
3 Interpolation and Curve Fitting 117
3.1 Interpolation by Lagrange Polynomial 117
3.2 Interpolation by Newton Polynomial 119
3.3 Approximation by Chebyshev Polynomial 124
3.4 Pade Approximation by Rational Function 129
3.5 Interpolation by Cubic Spline 133
3.6 Hermite Interpolating Polynomial 139
3.7 Twodimensional Interpolation 141
3.8 Curve Fitting 143
3.8.1 Straight Line Fit: A Polynomial Function of First Degree 144
3.8.2 Polynomial Curve Fit: A Polynomial Function of Higher Degree 145
3.8.3 Exponential Curve Fit and Other Functions 149
3.9 Fourier Transform 150
3.9.1 FFT Versus DFT 151
3.9.2 Physical Meaning of DFT 152
3.9.3 Interpolation by Using DFS 155
Problems 157
4 Nonlinear Equations 179
4.1 Iterative Method Toward Fixed Point 179
4.2 Bisection Method 183
4.3 False Position or Regula Falsi Method 185
4.4 Newton(–Raphson) Method 186
4.5 Secant Method 189
4.6 Newton Method for a System of Nonlinear Equations 191
4.7 Symbolic Solution for Equations 193
4.8 A RealWorld Problem 194
Problems 197
5 Numerical Differentiation/Integration 209
5.1 Difference Approximation for First Derivative 209
5.2 Approximation Error of First Derivative 211
5.3 Difference Approximation for Second and Higher Derivative 216
5.4 Interpolating Polynomial and Numerical Differential 220
5.5 Numerical Integration and Quadrature 222
5.6 Trapezoidal Method and Simpson Method 226
5.7 Recursive Rule and Romberg Integration 228
5.8 Adaptive Quadrature 231
5.9 Gauss Quadrature 234
5.9.1 Gauss–Legendre Integration 235
5.9.2 Gauss–Hermite Integration 238
5.9.3 Gauss–Laguerre Integration 239
5.9.4 Gauss–Chebyshev Integration 240
5.10 Double Integral 241
Problems 244
6 Ordinary Differential Equations 263
6.1 Euler’s Method 263
6.2 Heun’s Method: Trapezoidal Method 266
6.3 Runge–Kutta Method 267
6.4 Predictor–Corrector Method 269
6.4.1 Adams–Bashforth–Moulton Method 269
6.4.2 Hamming Method 273
6.4.3 Comparison of Methods 274
6.5 Vector Differential Equations 277
6.5.1 State Equation 277
6.5.2 Discretization of LTI State Equation 281
6.5.3 HighOrder Differential Equation to State Equation 283
6.5.4 Stiff Equation 284
6.6 Boundary Value Problem (BVP) 287
6.6.1 Shooting Method 287
6.6.2 Finite Difference Method 290
Problems 293
7 Optimization 321
7.1 Unconstrained Optimization [L2, Chapter 7] 321
7.1.1 Golden Search Method 321
7.1.2 Quadratic Approximation Method 323
7.1.3 Nelder–Mead Method [W8] 325
7.1.4 Steepest Descent Method 328
7.1.5 Newton Method 330
7.1.6 Conjugate Gradient Method 332
7.1.7 Simulated Annealing Method [W7] 334
7.1.8 Genetic Algorithm [W7] 338
7.2 Constrained Optimization [L2, Chapter 10] 343
7.2.1 Lagrange Multiplier Method 343
7.2.2 Penalty Function Method 346
7.3 MATLAB BuiltIn Routines for Optimization 350
7.3.1 Unconstrained Optimization 350
7.3.2 Constrained Optimization 352
7.3.3 Linear Programming (LP) 355
Problems 357
8 Matrices and Eigenvalues 371
8.1 Eigenvalues and Eigenvectors 371
8.2 Similarity Transformation and Diagonalization 373
8.3 Power Method 378
8.3.1 Scaled Power Method 378
8.3.2 Inverse Power Method 380
8.3.3 Shifted Inverse Power Method 380
8.4 Jacobi Method 381
8.5 Physical Meaning of Eigenvalues/Eigenvectors 385
8.6 Eigenvalue Equations 389
Problems 390
9 Partial Differential Equations 401
9.1 Elliptic PDE 402
9.2 Parabolic PDE 406
9.2.1 The Explicit Forward Euler Method 406
9.2.2 The Implicit Backward Euler Method 407
9.2.3 The Crank–Nicholson Method 409
9.2.4 TwoDimensional Parabolic PDE 412
9.3 Hyperbolic PDE 414
9.3.1 The Explicit Central Difference Method 415
9.3.2 TwoDimensional Hyperbolic PDE 417
9.4 Finite Element Method (FEM) for solving PDE 420
9.5 GUI of MATLAB for Solving PDEs: PDETOOL 429
9.5.1 Basic PDEs Solvable by PDETOOL 430
9.5.2 The Usage of PDETOOL 431
9.5.3 Examples of Using PDETOOL to Solve PDEs 435
Problems 444
Appendix A. Mean Value Theorem 461
Appendix B. Matrix Operations/Properties 463
Appendix C. Differentiation with Respect to a Vector 471
Appendix D. Laplace Transform 473
Appendix E. Fourier Transform 475
Appendix F. Useful Formulas 477
Appendix G. Symbolic Computation 481
Appendix H. Sparse Matrices 489
Appendix I. MATLAB 491
References 497
Subject Index 499
Index for MATLAB Routines 503
Index for Tables 509
WENWU CAO, PhD, is Professor of Mathematics and Materials Science at The Pennsylvania State University.
TAESANG CHUNG, PhD, is Professor of Electrical Engineering at ChungAng University, Korea.
JOHN MORRIS, PhD, is Associate Professor of Computer Science and Electrical and Computer Engineering at The University of Auckland, New Zealand.