1. Methods for Numerical Differentiation.- 1.1. Wengert's Method.- 1.2. FEED (Fast and Efficient Evaluation of Derivatives).- 1.3. An Implementation of the FEED Procedure in BASIC.- 1.4. Wexler's Approach.- 1.5. Higher-Order Methods for Finding Roots.- Exercises.- 2. Nonlinear Least Squares.- 2.1. Fitting the CES Production Function.- 2.2. Passive Ranging.- 2.3. Constrained Optimization.- Appendix A. Nonlinear Least Squares Using FEED.- Appendix B. Modifications for Passive Ranging Problem.- Appendix C. Sample Output for Passive Ranging.- 3. Optimal Control.- 3.1. Control Theory.- 3.1.1. Euler-Lagrange Equations.- 3.1.2. Pontryagin's Maximum Principle.- 3.2. Numerical Methods.- 3.2.1. Newton-Raphson Method.- 3.2.2. Gradient Method.- 3.3. Description of the Subroutines.- 3.3.1. Subroutine Constant.- 3.3.2. Subroutine Add.- 3.3.3. Subroutine Multiplication.- 3.3.4. Subroutine Division.- 3.3.5. Subroutine Function.- 3.4. Examples of Optimal Control Problems.- 3.4.1. Newton-Raphson Method.- 3.4.2. Gradient Method.- 3.5. Program Listings.- 3.5.1. Simplest Problem in the Calculus of Variations.- 3.5.2. Second-Order Systems Using the Newton-Raphson Method.- 3.5.3.Nth-Order Systems Using the Gradient Method.- Exercises.- 4. System Identification.- 4.1. Quasilinearization.- 4.2. Fast and Efficient Evaluation of Derivatives (FEED).- 4.3. Computer Program.- 4.4. Numerical Results.- 4.5. Program Listing.- 5. Sukhanov's Variable Initial Value Method for Boundary Value Problems.- 5.1. Sukhanov's Initial Value Equations.- 5.1.1. Euler's Method.- 5.1.2. Runge-Kutta Integration Method.- 5.2. Automatic Derivative Evaluation.- 5.2.1. Second-Order System.- 5.2.2. Fourth-Order System.- 5.3. Examples Using Sukhanov's Method.- 5.3.1. Second-Order System.- 5.3.2. Fourth-Order System.- 5.4. Program Listing.- Exercises.- 6. Nonlinear Integral Equations.- 6.1. Derivation of the Imbedding Equations.- 6.2. Method of Computation.- 6.3. Automatic Derivative Evaluation.- 6.3.1. Subroutine Linear.- 6.3.2. Programming the Derivative Vector Operations in BASIC. ..- 6.4. Examples of Integral Equation Problems.- 6.4.1. Linear Integral Equation.- 6.4.2. Nonlinear Integral Equation.- 6.5. Program Listing.- Exercises.- References.- Author Index.
For many years it has been an article of faith of numerical analysts that the evaluation of derivatives of complicated functions should be avoided. Derivatives were evaluated using finite differences or, more recently, using symbolic manipulation packages. The first has the disadvantage of limited accuracy. The second has disadvantages of being expensive and requiring considerable computer memory. The recent developments described in this text allow the evaluation of derivatives using simple automatic derivative evaluation subroutines pro grammed in FORTRAN or BASIC. These subroutines can even be programmed on a personal computer. The concept for the evaluation of the derivatives was originally developed by Wengert over 20 years ago. Significant im provements have been made in Wengert's method and are utilized in this text. The purpose of this text is to familiarize computer users with a simple and practical method for obtaining the partial derivatives of complicated mathematical expressions. The text illustrates the use of automatic deriva tive evaluation subroutines to solve a wide range of nonlinear least-squares, optimal control, system identification, two-point boundary value problems, and integral equations. The numerical values of the derivatives are evalu~ ated exactly, except for roundoff, using simple FORTRAN or BASIC sub routines. These derivatives are derived automatically behind the scenes, from the equivalent of analytical expressions, without any effort from the user. The use of costly software packages is not required.