Book : Numerical Methods in Engineering with Python 2.X
Preface:
-
The book is for engineers and engineering students (sophomores, seniors and graduate students) who are supposed to be familiar with computer language and have basic knowledge of engineering.
-
This book focuses on numerical methods, rather than programming. Engineers are expected to learn how to utilized functions and subroutines which have already existed and assemble them into a coherent package that can probably solve the problems at hand.
-
As said, you need to pay attention to the rationale behind these numerical methods not the algorithm itself.
-
More specifically, the rationale refers to the inner workings of the method and its shortcomings.
-
The topics covered in this book include: solution of equations, interpolation and data fitting, numerical differentiation and integration, solution of Ordinary Differential Equations and eigenvalue problems. More specifically, each topic is tilted toward relevance to engineering problems.
-
One criterion for selection of methods is clarity. This is an attempt to conform the views outlined above. That is, try to avoid overemphasizing on programming.
-
Another criterion is to keep this book up to date. Examples: 1. Roots of equations: Brent's method more favorable than the secant method; 2. Runge-Kutta and Bulirsch-Stoer methods more favorable than Milne and Adams methods, thus being chosen.
-
The chapter on partial differential equations (PDEs) is left out in this book because the commonly-used finite difference model is impractical in tackling multidimensional boundary value problems (it can be well treated by finite element or boundary element methods.
-
The programs can be run with Python 2.2.2 and 2.3.4 under XP and RHL.