In general, you need not provide a version of qphess, because a ‘default’ method with name e04nfu is included in the Library. However, the algorithm of h02cb requires only the product of or and a vector ; and in some cases you may obtain increased efficiency by providing a version of qphess that avoids the need to define the elements of the matrices or explicitly. qphess is not referenced if the problem is of type FP or LP, in which case qphess may be the method e04nfu.
Syntax
C# |
---|
public delegate void H02CB_QPHESS( int n, int jthcol, double[,] h, double[] x, double[] hx, H..::..h02cbOptions options ) |
Visual Basic |
---|
Public Delegate Sub H02CB_QPHESS ( _ n As Integer, _ jthcol As Integer, _ h As Double(,), _ x As Double(), _ hx As Double(), _ options As H..::..h02cbOptions _ ) |
Visual C++ |
---|
public delegate void H02CB_QPHESS( int n, int jthcol, array<double,2>^ h, array<double>^ x, array<double>^ hx, H..::..h02cbOptions^ options ) |
F# |
---|
type H02CB_QPHESS = delegate of n : int * jthcol : int * h : float[,] * x : float[] * hx : float[] * options : H..::..h02cbOptions -> unit |
Parameters
- n
- Type: System..::..Int32
- jthcol
- Type: System..::..Int32On entry: specifies whether or not the vector is a column of the identity matrix.
- The vector is the th column of the identity matrix, and hence or is the th column of or , respectively, which may in some cases require very little computation and qphess may be coded to take advantage of this. However special code is not necessary because is always stored explicitly in the array x.
- has no special form.
- h
- Type: array<System..::..Double,2>[,](,)[,][,]
- x
- Type: array<System..::..Double>[]()[][]On entry: the vector .
- hx
- Type: array<System..::..Double>[]()[][]On exit: the product if the problem is of type QP1 or QP2 (the default), or the product if the problem is of type QP3 or QP4.
- options
- Type: NagLibrary..::..H..::..h02cbOptions