Try our new documentation site (beta).


GRBgetgenconstrPoly

int GRBgetgenconstrPoly ( GRBmodel *model,
    int id,
    int *xvarP,
    int *yvarP,
    int *plenP,
    double *p )

Retrieve the data associated with a general constraint of type POLY. Calling this method for a general constraint of a different type leads to an error return code. You can query the GenConstrType attribute to determine the type of the general constraint.

Typical usage is to call this routine twice. In the first call, you specify the requested general constraint, with a NULL value for the p argument. The routine returns the length of the p array in plenP. That allows you to make certain that the p array is of sufficient size to hold the result of the second call.

See also GRBaddgenconstrPoly for a description of the semantics of this general constraint type.

Return value:

A non-zero return value indicates that a problem occurred while retrieving the general constraint data. 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 that contains the desired general constraint.

id: The index of the general constraint to retrieve.

Note that any of the following arguments can be NULL.

xvarP: The index of variable <span>$</span>x<span>$</span>.

yvarP: The index of variable <span>$</span>y<span>$</span>.

plenP: Pointer to store the array length for p. If <span>$</span>x^d<span>$</span> is the highest power term, then <span>$</span>d+1<span>$</span> will be returned.

p: The coefficients for polynomial function.

Example usage:

  int type;
  int xvar;
  int yvar;
  int plen;
  double *p;

  error = GRBgetintattrelement(model, GRB_INT_ATTR_GENCONSTRTYPE, 3, &type);
  if (type == GRB_GENCONSTR_POLY) {
    error = GRBgetgenconstrPoly(model, 3, &xvar, &yvar, &plen, NULL);
    /* ...allocate p array with length plen */
    error = GRBgetgenconstrPoly(model, 3, NULL, NULL, NULL, p);
  }

Try Gurobi for Free

Choose the evaluation license that fits you best, and start working with our Expert Team for technical guidance and support.

Evaluation License
Get a free, full-featured license of the Gurobi Optimizer to experience the performance, support, benchmarking and tuning services we provide as part of our product offering.
Academic License
Gurobi supports the teaching and use of optimization within academic institutions. We offer free, full-featured copies of Gurobi for use in class, and for research.
Cloud Trial

Request free trial hours, so you can see how quickly and easily a model can be solved on the cloud.

Search

Gurobi Optimization