For QP problems, you must supply a version of qphx to compute the matrix product for a given vector . If has rows and columns of zeros, it is most efficient to order so that the nonlinear variables appear first. For example, if and only enters the objective quadratically then
In this case, ncolh should be the dimension of , and qphx should compute . For FP and LP problems, qphx will never be called by e04nq and hence qphx may be the dummy method E04NSH.
(2) |
Syntax
C# |
---|
public delegate void E04NQ_QPHX( int ncolh, double[] x, double[] hx, int nstate ) |
Visual Basic |
---|
Public Delegate Sub E04NQ_QPHX ( _ ncolh As Integer, _ x As Double(), _ hx As Double(), _ nstate As Integer _ ) |
Visual C++ |
---|
public delegate void E04NQ_QPHX( int ncolh, array<double>^ x, array<double>^ hx, int nstate ) |
F# |
---|
type E04NQ_QPHX = delegate of ncolh : int * x : float[] * hx : float[] * nstate : int -> unit |
Parameters
- ncolh
- Type: System..::..Int32
- x
- Type: array<System..::..Double>[]()[][]On entry: the first ncolh elements of the vector .
- hx
- Type: array<System..::..Double>[]()[][]
- nstate
- Type: System..::..Int32On entry: allows you to save computation time if certain data must be read or calculated only once. To preserve this data for a subsequent calculation place it in one of cuser, ruser or iuser .
- e04nq is calling qphx for the first time.
- There is nothing special about the current call of qphx.
- e04nq is calling qphx for the last time. This parameter setting allows you to perform some additional computation on the final solution.
- The current is optimal.
- The problem appears to be infeasible.
- The problem appears to be unbounded.
- The iterations limit was reached.