Solve a general nonlinear programming problem using the successive quadratic programming algorithm with a finite-difference gradient or with a user-supplied gradient.

Namespace: Imsl.Math
Assembly: ImslCS (in ImslCS.dll) Version: 6.5.0.0

Syntax

C#
public double[] Solve(
	MinConNLP..::.IFunction f
)
Visual Basic (Declaration)
Public Function Solve ( _
	f As MinConNLP..::.IFunction _
) As Double()
Visual C++
public:
array<double>^ Solve(
	MinConNLP..::.IFunction^ f
)

Parameters

f
Type: Imsl.Math..::.MinConNLP..::.IFunction
Defines the user-supplied MinConNLP.IFunction to be evaluated at a given point. f can be used to supply a MinConNLP.IGradient of the function. If f implements IGradient the user-supplied gradient is used. Otherwise, an attempt to solve the problem is made using a finite-difference gradient.

Return Value

A double array containing the last computed solution of the nonlinear programming problem.

Exceptions

ExceptionCondition
Imsl.Math..::.ConstraintEvaluationException is thrown if a constraint evaluation returns an error.
Imsl.Math..::.ObjectiveEvaluationException is thrown if objective evaluation returns an error.
Imsl.Math..::.WorkingSetSingularException is thrown if
Imsl.Math..::.QPInfeasibleException is thrown if the working set is singular in dual extended QP.
Imsl.Math..::.PenaltyFunctionPointInfeasibleException is thrown if the penalty function point infeasible.
Imsl.Math..::.LimitingAccuracyException is thrown if limiting accuracy reached for a singular problem.
Imsl.Math..::.TooManyIterationsException is thrown if maximum number of iterations exceeded.
Imsl.Math..::.NoAcceptableStepsizeException is thrown if there is no acceptable stepsize.
Imsl.Math..::.BadInitialGuessException is thrown if the penalty function point infeasible for original problem.
Imsl.Math..::.IllConditionedException is thrown if the problem is singular or ill-conditioned.
Imsl.Math..::.SingularException is thrown ifthe problem is singular.
Imsl.Math..::.LinearlyDependentGradientsException is thrown if the working set gradients are linearly dependent.
Imsl.Math..::.TerminationCriteriaNotSatisfiedException is thrown if termination criteria are not satisfied.

See Also