## System of Constrained Nonlinear Equations (SCNLE)

### Problem Definition

A SCNLE has the following form: Where F is a vector function containing the nonlinear equations.

#### Linear Inequalities

A is a m x n dense matrix, b is a m x 1 vector.

#### Linear Equalities

Aeq is a k x n dense matrix, beq is a k x 1 vector.

#### Decision Variable Bounds

lb and ub are n x 1 vectors, where -inf or inf indicate an unbounded lower or upper bound, respectively.

The goal is to set the function values of all equations to zero by selecting a value of x that also satisfies all constraints. This problem is known as constrained root solving, or multivariable root solving when the dimension of x is greater than 1.

Note a SCNLE is created in a similar way as a SNLE problem. It is recommened you complete reading the SNLE section before reading the remainder of the section.

### Example 1: Bounded SNLE To setup this problem, it can be entered as follows:

% System of Nonlinear Equations
nleq = @(x) [ 2*x(1) - x(2) - exp(-x(1));
-x(1) + 2*x(2) - exp(-x(2))];

% Bounds
lb = [0.6;0];
ub = [1;1];

% Starting Guess
x0 = [-5;5];

And the problem solved by passing the problem variables to OPTI, and calling solve on the resulting object:

% Create OPTI Object
Opt = opti('nleq',nleq,'bounds',lb,ub,'x0',x0)

% Solve the SCNLE problem
[x,fval,exitflag,info] = solve(Opt)