After the initialization routine
e04raf has been called,
e04rkf may be used to define the nonlinear constraints
of the problem unless the nonlinear constraints have already been defined. This will typically be used for nonlinear programming problems (NLP) of the kind:
where
is the number of the decision variables
,
is the number of the nonlinear constraints (in
(1)(b)) and
,
and
are
-dimensional vectors.
Note that upper and lower bounds are specified for all the constraints. This form allows full generality in specifying various types of constraint. In particular, the
th constraint may be defined as an equality by setting
. If certain bounds are not present, the associated elements
or
may be set to special values that are treated as
or
. See the description of the optional parameter
Infinite Bound Size which is common among all solvers in the suite. Its value is denoted as
further in this text. Note that the bounds are interpreted based on its value at the time of calling this routine and any later alterations to
Infinite Bound Size will not affect these constraints.
Since each nonlinear constraint is most likely to involve a small subset of the decision variables, the partial derivatives of the constraint functions with respect to those variables are best expressed as a sparse Jacobian matrix of rows and columns. The row and column positions of all the nonzero derivatives must be registered with the handle through e04rkf.
The values of the nonlinear constraint functions and their nonzero gradients at particular points in the decision variable space will be communicated to the NLP solver by user-supplied functions (e.g.,
confun and
congrd for
e04stf).
None.
If on entry
or
, explanatory error messages are output on the current error message unit (as defined by
x04aaf).
Not applicable.
None.