0% found this document useful (0 votes)
316 views

Applied Numerical Methods Using MATLAB - 2005 - Yang

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
316 views

Applied Numerical Methods Using MATLAB - 2005 - Yang

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

APPLIED NUMERICAL

METHODS USING MATLAB


10.1002/0471705195.fmatter, Downloaded from https://onlinelibrary.wiley.com/doi/10.1002/0471705195.fmatter by Central Library, Wiley Online Library on [09/08/2023]. See the Terms and Conditions (https://onlinelibrary.wiley.com/terms-and-conditions) on Wiley Online Library for rules of use; OA articles are governed by the applicable Creative Commons License
Tae-Sang Chung
Won Young Yang
Chung-Ang University, Korea

Wenwu Cao

Chung-Ang University, Korea

The University of Auckland, New Zealand

A JOHN WILEY & SONS, INC., PUBLICATION


Pennsylvania State University

John Morris
APPLIED NUMERICAL
METHODS USING
MATLAB
10.1002/0471705195.fmatter, Downloaded from https://onlinelibrary.wiley.com/doi/10.1002/0471705195.fmatter by Central Library, Wiley Online Library on [09/08/2023]. See the Terms and Conditions (https://onlinelibrary.wiley.com/terms-and-conditions) on Wiley Online Library for rules of use; OA articles are governed by the applicable Creative Commons License
Questions about the contents of this book can be mailed to [email protected].
MATLAB and Simulink are trademarks of the The MathWorks, Inc. and are used with
permission. The MathWorks does not warrant the accuracy of the text or exercises in this book.
This book’s use or discussion of MATLAB and Simulink software or related products does not
constitute endorsement or sponsorship by The MathWorks of a particular pedagogical approach or
particular use of the MATLAB and Simulink software.
Copyright  2005 by John Wiley & Sons, Inc. All rights reserved.
Published by John Wiley & Sons, Inc., Hoboken, New Jersey.
Published simultaneously in Canada.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any
form or by any means, electronic, mechanical, photocopying, recording, scanning, or otherwise,
except as permitted under Section 107 or 108 of the 1976 United States Copyright Act, without
either the prior written permission of the Publisher, or authorization through payment of the
appropriate per-copy fee to the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers,
MA 01923, 978-750-8400, fax 978-646-8600, or on the web at www.copyright.com. Requests to
the Publisher for permission should be addressed to the Permissions Department, John Wiley &
Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008.
Limit of Liability/Disclaimer of Warranty: While the publisher and authors have used their best
efforts in preparing this book, they make no representations or warranties with respect to the
accuracy or completeness of the contents of this book and specifically disclaim any implied
warranties of merchantability or fitness for a particular purpose. No warranty may be created or
extended by sales representatives or written sales materials. The advice and strategies contained
herein may not be suitable for your situation. You should consult with a professional where
appropriate. Neither the publisher nor author shall be liable for any loss of profit or any other
commercial damages, including but not limited to special, incidental, consequential, or other
damages.
For general information on our other products and services please contact our Customer Care
Department within the U.S. at 877-762-2974, outside the U.S. at 317-572-3993 or
fax 317-572-4002.
Wiley also publishes its books in a variety of electronic formats. Some content that appears in
print, however, may not be available in electronic format.
Library of Congress Cataloging-in-Publication Data
Yang, Won-young, 1953–
Applied numerical methods using MATLAB / Won Y. Yang, Wenwu Cao, Tae S.
Chung, John Morris.
p. cm.
Includes bibliographical references and index.
ISBN 0-471-69833-4 (cloth)
1. Numerical analysis–Data processing. 2. MATLAB. I. Cao, Wenwu. II.
Chung, Tae-sang, 1952– III. Title.
QA297.Y36 2005
518–dc22
2004013108

Printed in the United States of America.


10 9 8 7 6 5 4 3 2 1
10.1002/0471705195.fmatter, Downloaded from https://onlinelibrary.wiley.com/doi/10.1002/0471705195.fmatter by Central Library, Wiley Online Library on [09/08/2023]. See the Terms and Conditions (https://onlinelibrary.wiley.com/terms-and-conditions) on Wiley Online Library for rules of use; OA articles are governed by the applicable Creative Commons License
who enriched our knowledge
to our teachers and students
To our parents and families
who love and support us
and
10.1002/0471705195.fmatter, Downloaded from https://onlinelibrary.wiley.com/doi/10.1002/0471705195.fmatter by Central Library, Wiley Online Library on [09/08/2023]. See the Terms and Conditions (https://onlinelibrary.wiley.com/terms-and-conditions) on Wiley Online Library for rules of use; OA articles are governed by the applicable Creative Commons License
CONTENTS

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 2-D Graphic Input/Output / 5
1.1.5 3-D 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 64-bit Floating-Point 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

vii
10.1002/0471705195.fmatter, Downloaded from https://onlinelibrary.wiley.com/doi/10.1002/0471705195.fmatter by Central Library, Wiley Online Library on [09/08/2023]. See the Terms and Conditions (https://onlinelibrary.wiley.com/terms-and-conditions) on Wiley Online Library for rules of use; OA articles are governed by the applicable Creative Commons License
viii CONTENTS

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 ): Minimum-Norm
Solution / 72
2.1.3 The Overdetermined Case (M > N ): Least-Squares Error
Solution / 75
2.1.4 RLSE (Recursive Least-Squares 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 Two-dimensional 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
10.1002/0471705195.fmatter, Downloaded from https://onlinelibrary.wiley.com/doi/10.1002/0471705195.fmatter by Central Library, Wiley Online Library on [09/08/2023]. See the Terms and Conditions (https://onlinelibrary.wiley.com/terms-and-conditions) on Wiley Online Library for rules of use; OA articles are governed by the applicable Creative Commons License
CONTENTS ix

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 Real-World 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 High-Order Differential Equation to State Equation / 283
6.5.4 Stiff Equation / 284
10.1002/0471705195.fmatter, Downloaded from https://onlinelibrary.wiley.com/doi/10.1002/0471705195.fmatter by Central Library, Wiley Online Library on [09/08/2023]. See the Terms and Conditions (https://onlinelibrary.wiley.com/terms-and-conditions) on Wiley Online Library for rules of use; OA articles are governed by the applicable Creative Commons License
x CONTENTS

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 [L-2, Chapter 7] / 321


7.1.1 Golden Search Method / 321
7.1.2 Quadratic Approximation Method / 323
7.1.3 Nelder–Mead Method [ W-8] / 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 [W-7] / 334
7.1.8 Genetic Algorithm [W-7] / 338
7.2 Constrained Optimization [L-2, Chapter 10] / 343
7.2.1 Lagrange Multiplier Method / 343
7.2.2 Penalty Function Method / 346
7.3 MATLAB Built-In 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
10.1002/0471705195.fmatter, Downloaded from https://onlinelibrary.wiley.com/doi/10.1002/0471705195.fmatter by Central Library, Wiley Online Library on [09/08/2023]. See the Terms and Conditions (https://onlinelibrary.wiley.com/terms-and-conditions) on Wiley Online Library for rules of use; OA articles are governed by the applicable Creative Commons License
CONTENTS xi

9.2.3 The Crank–Nicholson Method / 409


9.2.4 Two-Dimensional Parabolic PDE / 412
9.3 Hyperbolic PDE / 414
9.3.1 The Explicit Central Difference Method / 415
9.3.2 Two-Dimensional 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


10.1002/0471705195.fmatter, Downloaded from https://onlinelibrary.wiley.com/doi/10.1002/0471705195.fmatter by Central Library, Wiley Online Library on [09/08/2023]. See the Terms and Conditions (https://onlinelibrary.wiley.com/terms-and-conditions) on Wiley Online Library for rules of use; OA articles are governed by the applicable Creative Commons License
PREFACE

This book introduces applied numerical methods for engineering and science
students in sophomore to senior levels; it targets the students of today who do
not like or do not have time to derive and prove mathematical results. It can
also serve as a reference to MATLAB applications for professional engineers
and scientists, since many of the MATLAB codes presented after introducing
each algorithm’s basic ideas can easily be modified to solve similar problems
even by those who do not know what is going on inside the MATLAB routines
and the algorithms they use. Just as most drivers only have to know where to
go and how to drive a car to get to their destinations, most users only have to
know how to define the problems they want to solve using MATLAB and how
to use the corresponding routines to solve their problems. We never deny that
detailed knowledge about the algorithm (engine) of the program (car) is helpful
for getting safely to the solution (destination); we only imply that one-time users
of any MATLAB program or routine may use this book as well as the students
who want to understand the underlying principle of each algorithm.
In this book, we focus on understanding the fundamental mathematical con-
cepts and mastering problem-solving skills using numerical methods with the
help of MATLAB and skip some tedious derivations. Obviously, basic con-
cepts must be taught so that students can properly formulate the mathematics
problems. Afterwards, students can directly use the MATLAB codes to solve
practical problems. Almost every algorithm introduced in this book is followed
by example MATLAB code with a friendly interface so that students can easily
modify the code to solve real life problems. The selection of exercises fol-
lows the some philosophy of making the learning easy and practical. Students
should be able to solve similar problems immediately after taking the class using
the MATLAB codes we provide. For most students—and particularly nonmath
majors—understanding how to use numerical tools correctly in solving their
problems of interest is more important than studying lengthy proofs and deriva-
tions.
MATLAB is one of the most developed software packages available today.
It provides many numerical methods and it is very easy to use, even for people
without prior programming experience. We have supplemented MATLAB’s built-
in functions with more than 100 small MATLAB routines. Readers should find
xiii
10.1002/0471705195.fmatter, Downloaded from https://onlinelibrary.wiley.com/doi/10.1002/0471705195.fmatter by Central Library, Wiley Online Library on [09/08/2023]. See the Terms and Conditions (https://onlinelibrary.wiley.com/terms-and-conditions) on Wiley Online Library for rules of use; OA articles are governed by the applicable Creative Commons License
xiv PREFACE

these routines handy and useful. Some of these routines give better results for
some problems than the built-in functions. Students are encouraged to develop
their own routines following the examples.
The knowledge in this book is derived from the work of many eminent sci-
entists, scholars, researchers, and MATLAB developers, all of whom we thank.
We thank our colleagues, students, relatives, and friends for their support and
encouragement. We thank the reviewers, whose comments were so helpful in
tuning this book. We especially thank Senior Researcher Yong-Suk Park for his
invaluable help in correction. We thank the editorial and production staff of John
Wiley & Sons, Inc. including Editor Val Moliere and Production Editor Lisa
VanHorn for their kind, efficient, and encouraging guide.

WON YOUNG YANG


WENWU CAO
TAE-SANG CHUNG
JOHN MORRIS
October 2004

You might also like