## JACNLC Statement

**JACNLC** * variables ***;**

The JACNLC statement defines the Jacobian matrix for the
system of constraint functions *c*_{1}(*x*), ... ,*c*_{mc}(*x*).
The statements lists the *mc***n* variable names which correspond
to the elements *CJ*_{i,j}, *i* = 1, ... ,*mc*, *j* = 1, ... ,*n*, of
the Jacobian matrix by rows.

For example, the statements
nlincon c1-c3;
decvar x1-x2;
jacnlc cj1-cj6;

correspond to the Jacobian matrix

The *mc* rows of the Jacobian matrix must be in the same order
as the *mc* corresponding names of nonlinear constraints listed
in the NLINCON statement. The *n* columns of the Jacobian matrix
must be in the same order as the *n* corresponding parameter
names listed in the DECVAR statement.
To specify the values
of nonzero derivatives, the variables specified in the JACOBIAN
statement have to be defined on the left-hand side of algebraic
expressions in programming statements.
For example,

array cd[3,4] cd1-cd12;
nlincon c1-c3 >= 0;
jacnlc cd1-cd12;
c1 = 8 - x1 * x1 - x2 * x2 - x3 * x3 - x4 * x4 -
x1 + x2 - x3 + x4;
c2 = 10 - x1 * x1 - 2 * x2 * x2 - x3 * x3 - 2 * x4 * x4 +
x1 + x4;
c3 = 5 - 2 * x1 * x2 - x2 * x2 - x3 * x3 - 2 * x1 + x2 + x4;
cd[1,1]= -1 - 2 * x1; cd[1,2]= 1 - 2 * x2;
cd[1,3]= -1 - 2 * x3; cd[1,4]= 1 - 2 * x4;
cd[2,1]= 1 - 2 * x1; cd[2,2]= -4 * x2;
cd[2,3]= -2 * x3; cd[2,4]= 1 - 4 * x4;
cd[3,1]= -2 - 4 * x1; cd[3,2]= 1 - 2 * x2;
cd[3,3]= -2 * x3; cd[3,4]= 1;

Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.