Constructs a new nonlinear program with linear constraints in standard form.
Extreme.Numerics.Net40 (in Extreme.Numerics.Net40.dll) Version: 6.0.16073.0 (6.0.17114.0)
Func<Vector, double> objective,
Func<Vector, Vector, Vector> objectiveGradient,
Public Sub New (
objective As Func(Of Vector, Double),
objectiveGradient As Func(Of Vector, Vector, Vector),
constraints As Matrix,
rightHandSides As Vector,
equalities As Integer
Func<Vector^, double>^ objective,
Func<Vector^, Vector^, Vector^>^ objectiveGradient,
objective : Func<Vector, float> *
objectiveGradient : Func<Vector, Vector, Vector> *
constraints : Matrix *
rightHandSides : Vector *
equalities : int -> NonlinearProgram
- Type: SystemFuncVector, Double
A delegate that represents the objective function as a multivariate function.
- Type: SystemFuncVector, Vector, Vector
A delegate that represents the gradient of the objective function
and also returns the result in its second argument.
- Type: Extreme.MathematicsMatrix
The matrix of coefficients of the constraints.
- Type: Extreme.MathematicsVector
The vector of right-hand-sides of the constraints.
- Type: SystemInt32
The number of equality constraints.
|ArgumentNullException||objective is .
constraints is .
rightHandSides is .
|ArgumentOutOfRangeException||equalities is less than zero or greater than the number of constraints.
The length of rightHandSides does not equal the number of rows of constraints.
The length of objective does not equal the number of columns of constraints.
Use this constructor to create a nonlinear program in standard form with equality constraints.
It is more efficient to specify an equality constraint as a single constraint
rather than as two inequality constraints with opposite bounds. This constructor is preferred
for linear programs in standard form with equality constraints.
The equalities must be listed first in the constraint matrix and in the right-hand sides,
followed by the inequalities.
Note that it is much more efficient to specify bounds on variables directly than to encode
the bounds in additional constraints. It is also more efficient to specify a boxed constraint
as a single constraint than as two inequality constraints with opposite bounds.
For linear programs with such constraints, the more general constructor is recommended.
The variables are given the names x1, x2... Constraints are given the names
Supported in: 5.x, 4.x