Try our new documentation site (beta).
GRBaddconstrs
int | GRBaddconstrs ( | GRBmodel | *model, |
int | numconstrs, | ||
int | numnz, | ||
int | *cbeg, | ||
int | *cind, | ||
double | *cval, | ||
char | *sense, | ||
double | *rhs, | ||
const char | **constrnames ) |
Add new constraints to an existing model. Note that the new constraints won't actually be added until the next call to GRBoptimize or GRBupdatemodel.
Return value:
A non-zero return value indicates that a problem occurred while adding the constraints. Refer to the Error Code table for a list of possible return values. Details on the error can be obtained by calling GRBgeterrormsg.
Arguments:
model: The model to which the new constraints should be added.
numconstrs: The number of new constraints to add.
numnz: The total number of non-zero coefficients in the new constraints.
cbeg: Constraint matrix non-zero values are passed into this routine in Compressed Sparse Row (CSR) format by this routine. Each constraint in the constraint matrix is represented as a list of index-value pairs, where each index entry provides the variable index for a non-zero coefficient, and each value entry provides the corresponding non-zero value. Each new constraint has an associated cbeg value, indicating the start position of the non-zeros for that constraint in the cind and cval arrays. This routine requires that the non-zeros for constraint i immediately follow those for constraint i-1 in cind and cval. Thus, cbeg[i] indicates both the index of the first non-zero in constraint i and the end of the non-zeros for constraint i-1. To give an example of how this representation is used, consider a case where cbeg[2] = 10 and cbeg[3] = 12. This would indicate that constraint 2 has two non-zero values associated with it. Their variable indices can be found in cind[10] and cind[11], and the numerical values for those non-zeros can be found in cval[10] and cval[11].
cind: Variable indices associated with non-zero values. See the description of the cbeg argument for more information.
cval: Numerical values associated with constraint matrix non-zeros. See the description of the cbeg argument for more information.
sense: Sense for the new constraints. Options are GRB_LESS_EQUAL, GRB_EQUAL, or GRB_GREATER_EQUAL.
rhs: Right-hand-side values for the new constraints. This argument can be NULL, in which case the right-hand-side values are set to 0.0.
constrnames: Names for the new constraints. This argument can be NULL, in which case all constraints are given default names.