After the initialization routine
e04raf has been called and an objective function
$f$ or nonlinear constraint function
${g}_{i}$ has been registered with
e04rgf and
e04rkf,
e04rlf can be used to define the sparsity structure of the Hessians,
$H$, of those functions (i.e., the second partial derivatives with respect to the decision variables) or a linear combination of them, called the Lagrangian.
- Defining
${\nabla}^{2}f\equiv \left(\begin{array}{cccc}\frac{{\partial}^{2}f}{{\partial}^{2}{x}_{1}}& \frac{{\partial}^{2}f}{\partial {x}_{2}\partial {x}_{1}}& \dots & \frac{{\partial}^{2}f}{\partial {x}_{n}\partial {x}_{1}}\\ \frac{{\partial}^{2}f}{\partial {x}_{1}\partial {x}_{2}}& \frac{{\partial}^{2}f}{{\partial}^{2}{x}_{2}}& \dots & \frac{{\partial}^{2}f}{\partial {x}_{n}\partial {x}_{2}}\\ \vdots & \vdots & \ddots & \vdots \\ \frac{{\partial}^{2}f}{\partial {x}_{1}\partial {x}_{n}}& \frac{{\partial}^{2}f}{\partial {x}_{2}\partial {x}_{n}}& \dots & \frac{{\partial}^{2}f}{{\partial}^{2}{x}_{n}}\end{array}\right)$;
- the Hessian of the Lagrangian function $\equiv \sigma {\nabla}^{2}f+{\displaystyle \sum _{i=1}^{m}}{\lambda}_{i}{\nabla}^{2}{g}_{i}$;
- the Hessian of the objective function $\equiv {\nabla}^{2}f$;
- the Hessian of the constraint functions $\equiv {\nabla}^{2}{g}_{i}$.
The nonzero values of the Hessians at particular points in the decision variable space will be communicated to the NLP solver by user-supplied functions (e.g.,
hess for
e04stf).
Some NLP solvers (e.g.,
e04stf) expect either all of the Hessians (for objective and nonlinear constraints) to be supplied by the user or none and they will terminate with an error indicator if only some but not all of the Hessians have been introduced by
e04rlf.
Some NLP solvers (e.g.,
e04stf, again) will automatically switch to using internal approximations for the Hessians if none have been introduced by
e04rlf. This usually results in a slower convergence (more iterations to the solution) and might even result in no solution being attainable within the ordinary tolerances.
None.
If on entry
${\mathbf{ifail}}=0$ or
$-1$, explanatory error messages are output on the current error message unit (as defined by
x04aaf).
Not applicable.
None.