This paper deals with the calculation of partial derivatives (w.r.t. the independent variables, x) of a vec of dependent variables y which satisfy a system of nonlinear equations g(u(x), y) = 0 . A number of authors have suggested that the forward accumulation method of automatic differentiation can be applied to a suitable iterative scheme for solving the nonlinear system with a view to giving simultaneous convergence both to the correct value y and also to its Jacobian matrix yx. It is known, however, that convergence of the derivatives may not occur at the same rate as the convergence of the y values. In this paper we avoid both the difficulty and the potential cost of iterating the gradient part of the calculation to sufficient accuracy. We do this by observing that forward accumulation need only be applied to the functions g after the dependent variables, y, have been computed in standard real arithmetic usin g any appropriate method. This so-called Post-Differentiation (PD) technique is shown, on a number of examples, to have an advantage in terms of both accuracy and speed over approaches where forward accumulation is applied over the entire iterative process. Moreover, the PD technique can be implemented in such a way as to provide a friendly interface for non-specialist users.
[1]
Andreas Griewank,et al.
Algorithm 755: ADOL-C: a package for the automatic differentiation of algorithms written in C/C++
,
1996,
TOMS.
[2]
Christian Bischof,et al.
The ADIFOR 2.0 system for the automatic differentiation of Fortran 77 programs
,
1997
.
[3]
G. Charles.
Automatic differentiation and iterative processes
,
1992
.
[4]
Louis B. Rall,et al.
Automatic Differentiation: Techniques and Applications
,
1981,
Lecture Notes in Computer Science.
[5]
Bruce Christianson,et al.
Automatic Hessians by reverse accumulation
,
1992
.
[6]
Andreas Griewank,et al.
ADIFOR - Generating Derivative Codes form Fortran Programs
,
1992,
Sci. Program..
[7]
Bruce Christianson,et al.
Sharing storage using dirty vectors
,
1996
.
[8]
C. G. Broyden.
A Class of Methods for Solving Nonlinear Simultaneous Equations
,
1965
.
[9]
Bruce Christianson,et al.
Optimization & automatic differentiation in Ada: some practical experience
,
1994
.
[10]
B. Christianson.
Reverse accumulation and attractive fixed points
,
1994
.