e04dg
is the AD Library version of the primal routine
e04dgf.
Based (in the C++ interface) on overload resolution,
e04dg can be used for primal, tangent and adjoint
evaluation. It supports tangents and adjoints of first order.
Note: this function can be used with AD tools other than dco/c++. For details, please contact
NAG.
e04dg
is the AD Library version of the primal routine
e04dgf.
e04dgf minimizes an unconstrained nonlinear function of several variables using a pre-conditioned, limited memory quasi-Newton conjugate gradient method. First derivatives (or an ‘acceptable’ finite difference approximation to them) are required. It is intended for use on large scale problems.
For further information see
Section 3 in the documentation for
e04dgf.
Gill P E and Murray W (1979) Conjugate-gradient methods for large-scale nonlinear optimization Technical Report SOL 79-15 Department of Operations Research, Stanford University
A brief summary of the AD specific arguments is given below. For the remainder, links are provided to the corresponding argument from the primal routine.
A tooltip popup for all arguments can be found by hovering over the argument name in
Section 2 and in this section.
e04dg preserves all error codes from
e04dgf and in addition can return:
An unexpected AD error has been triggered by this routine. Please
contact
NAG.
See
Error Handling in the NAG AD Library Introduction for further information.
The routine was called using a strategy that has not yet been implemented.
See
AD Strategies in the NAG AD Library Introduction for further information.
A C++ exception was thrown.
The error message will show the details of the C++ exception text.
Dynamic memory allocation failed for AD.
See
Error Handling in the NAG AD Library Introduction for further information.
Not applicable.
None.
The following examples are variants of the example for
e04dgf,
modified to demonstrate calling the NAG AD Library.
This example finds a minimum of the function
The initial point is
and
(to five figures).
The document for
e04dj includes an example program to solve the same problem using some of the optional parameters described in
Section 12.