h must calculate the second derivatives of F at any point x. (As with funct, there is the option of causing e04lb to terminate immediately.)

Syntax

C#
public delegate void E04LB_H(
	ref int iflag,
	int n,
	double[] xc,
	double[] fhesl,
	double[] fhesd
)
Visual Basic
Public Delegate Sub E04LB_H ( _
	ByRef iflag As Integer, _
	n As Integer, _
	xc As Double(), _
	fhesl As Double(), _
	fhesd As Double() _
)
Visual C++
public delegate void E04LB_H(
	int% iflag, 
	int n, 
	array<double>^ xc, 
	array<double>^ fhesl, 
	array<double>^ fhesd
)
F#
type E04LB_H = 
    delegate of 
        iflag : int byref * 
        n : int * 
        xc : float[] * 
        fhesl : float[] * 
        fhesd : float[] -> unit

Parameters

iflag
Type: System..::..Int32%
On entry: is set to a non-negative number.
On exit: if h resets iflag to some negative number, e04lb will terminate immediately with ifail set to your setting of iflag.
n
Type: System..::..Int32
On entry: the number n of variables.
xc
Type: array<System..::..Double>[]()[][]
On entry: the point x at which the second derivatives of F are required.
fhesl
Type: array<System..::..Double>[]()[][]
On exit: unless iflag is reset, h must place the strict lower triangle of the second derivative matrix of F (evaluated at the point x) in fhesl, stored by rows, i.e., set fhesl[i-1i-2/2+j-1]=2Fxixjxc, for i=2,3,,n and j=1,2,,i-1. (The upper triangle is not required because the matrix is symmetric.)
fhesd
Type: array<System..::..Double>[]()[][]
On entry: the value of Fxj at the point x, for j=1,2,,n.
These values may be useful in the evaluation of the second derivatives.
On exit: unless iflag is reset, h must place the diagonal elements of the second derivative matrix of F (evaluated at the point x) in fhesd, i.e., set fhesd[j-1]=2Fxj2xc, j=1,2,,n.

See Also