Numerical Methods in Engineering with Python, 2nd Edition is a text for engineering students and a reference for practicing engineers, especially those who wish to explore Python. This new edition features 18 additional exercises and the addition of rational function interpolation. Brent's method of root finding was replaced by Ridder's method, and the Fletcher-Reeves method of optimization was dropped in favor of the downhill simplex method. Each numerical method is explained in detail, and its shortcomings are pointed out. The examples that follow individual topics fall into two categories: hand computations that illustrate the inner workings of the method and small programs that show how the computer code is utilized in solving a problem. This second edition also includes more robust computer code with each method, which is available on the book Web site. This code is made simple and easy to understand by avoiding complex bookkeeping schemes, while maintaining the essential features of the method.
Author(s): Jaan Kiusalaas
Edition: 2
Publisher: Cambridge University Press
Year: 2010
Language: English
Pages: 422
Cover
Half-title
Title
Copyright
Contents
Preface to the First Edition
Preface to the Second Edition
1 Introduction to Python
1.1 General Information
Quick Overview
Obtaining Python
1.2 Core Python
Variables
Strings
Tuples
Lists
Arithmetic Operators
Comparison Operators
Conditionals
Loops
Type Conversion
Mathematical Functions
Reading Input
Printing Output
Opening and Closing a File
Reading Data from a File
Writing Data to a File
Error Control
1.3 Functions and Modules
Functions
Lambda Statement
Modules
1.4 Mathematics Modules
math Module
cmath Module
1.5 numpy Module
General Information
Creating an Array
Accessing and Changing Array Elements
Operations on Arrays
Array Functions
Linear Algebra Module
Copying Arrays
Vectorizing Algorithms
1.6 Scoping of Variables
1.7 Writing and Running Programs
2 Systems of Linear Algebraic Equations
2.1 Introduction
Notation
Uniqueness of Solution
Ill Conditioning
Linear Systems
Methods of Solution
Overview of Direct Methods
2.2 Gauss Elimination Method
Introduction
Elimination Phase
Back Substitution Phase
Algorithm for Gauss Elimination Method
Elimination Phase
Back Substitution Phase
Operation Count
Multiple Sets of Equations
2.3 LU Decomposition Methods
Introduction
Doolittle’s Decomposition Method
Decomposition Phase
Solution Phase
Choleski’s Decomposition Method
Other Methods
Crout’s Decomposition
Gauss–Jordan Elimination
2.4 Symmetric and Banded Coefficient Matrices
Introduction
Tridiagonal Coefficient Matrix
Symmetric Coefficient Matrices
Symmetric, Pentadiagonal Coefficient Matrix
2.5 Pivoting
Introduction
Diagonal Dominance
Gauss Elimination with Scaled Row Pivoting
When to Pivot
Alternate Solution
2.6 Matrix Inversion
2.7 Iterative Methods
Introduction
Gauss–Seidel Method
Conjugate Gradient Method
2.8 Other Methods
3 Interpolation and Curve Fitting
3.1 Introduction
3.2 Polynomial Interpolation
Lagrange’s Method
Newton’s Method
Neville’s Method
Limitations of Polynomial Interpolation
Rational Function Interpolation
3.3 Interpolation with Cubic Spline
3.4 Least-Squares Fit
Overview
Fitting a Straight Line
Fitting Linear Forms
Polynomial Fit
Weighting of Data
Weighted Linear Regression
Fitting Exponential Functions
4 Roots of Equations
4.1 Introduction
4.2 Incremental Search Method
4.3 Method of Bisection
4.4 Methods Based on Linear Interpolation
Secant and False Position Methods
Ridder’s Method
4.5 Newton–Raphson Method
4.6 Systems of Equations
Introduction
Newton–Raphson Method
Alternate solution
4.7 Zeroes of Polynomials
Introduction
Evaluation Polynomials
Deflation of Polynomials
Laguerre’s Method
Other Methods
5 Numerical Differentiation
5.1 Introduction
5.2 Finite Difference Approximations
First Central Difference Approximations
First Noncentral Finite Difference Approximations
Second Noncentral Finite Difference Approximations
Errors in Finite Difference Approximations
5.3 Richardson Extrapolation
5.4 Derivatives by Interpolation
Polynomial Interpolant
Cubic Spline Interpolant
6 Numerical Integration
6.1 Introduction
6.2 Newton–Cotes Formulas
Trapezoidal Rule
Composite Trapezoidal Rule
Recursive Trapezoidal Rule
Simpson’s Rules
6.3 Romberg Integration
6.4 Gaussian Integration
Gaussian Integration Formulas
Orthogonal Polynomials
Determination of Nodal Abscissas and Weights
Abscissas and Weights for Classical Gaussian Quadratures
Gauss–Legendre Quadrature
Gauss–Chebyshev Quadrature
Gauss–Laguerre Quadrature
Gauss–Hermite Quadrature
Gauss Quadrature with Logarithmic Singularity
Gauss–Legendre Quadrature over a Quadrilateral Element
Quadrature over a Triangular Element
6.5 Multiple Integrals
Quadrature over a Triangular Element
7 Initial Value Problems
7.1 Introduction
7.2 Taylor Series Method
7.3 Runge–Kutta Methods
Second-Order Runge–Kutta Method
Fourth-Order Runge–Kutta Method
7.4 Stability and Stiffness
Stability of Euler’s Method
Stiffness
7.5 Adaptive Runge–Kutta Method
7.6 Bulirsch–Stoer Method
Midpoint Method
Richardson Extrapolation
Bulirsch–Stoer Algorithm
7.7 Other Methods
8 Two-Point Boundary Value Problems
8.1 Introduction
8.2 Shooting Method
Second-Order Differential Equation
Higher-Order Equations
8.3 Finite Difference Method
Second-Order Differential Equation
Fourth-Order Differential Equation
9 Symmetric Matrix Eigenvalue Problems
9.1 Introduction
9.2 Jacobi Method
Similarity Transformation and Diagonalization
Jacobi Rotation
Jacobi Diagonalization
Transformation to Standard Form
9.3 Power and Inverse Power Methods
Inverse Power Method
Eigenvalue Shifting
Power Method
9.4 Householder Reduction to Tridiagonal Form
Householder Matrix
Householder Reduction of a Symmetric Matrix
Accumulated Transformation Matrix
9.5 Eigenvalues of Symmetric Tridiagonal Matrices
Sturm Sequence
Gerschgorin’s Theorem
Bracketing Eigenvalues
Computation of Eigenvalues
Computation of Eigenvectors
9.6 Other Methods
10 Introduction to Optimization
10.1 Introduction
10.2 Minimization along a Line
Bracketing
Golden Section Search
10.3 Powell’s Method
Introduction
Conjugate Directions
Powell’s Algorithm
Check
10.4 Downhill Simplex Method
Check
10.5 Other Methods
Appendices
A1 Taylor Series
Function of a Single Variable
Function of Several Variables
A2 Matrix Algebra
Transpose
Addition
Vector Products
Array Products
Identity Matrix
Inverse
Determinant
Positive Definiteness
Useful Theorems
List of Program Modules (by Chapter)
Chapter 1
Chapter 2
Chapter 3
Chapter 4
Chapter 6
Chapter 7
Chapter 8
Chapter 9
Chapter 10
Available on Website
Index