GRBQConstr#

GRBQConstr#

Gurobi quadratic constraint object. Quadratic constraints are always associated with a particular model. You create a quadratic constraint object by adding a quadratic constraint to a model (using GRBModel.AddQConstr), rather than by using a GRBQConstr constructor.

Example:
// Create variables
GRBVar x = model.AddVar(-2.0, 2.0, 0.0, GRB.CONTINUOUS, "x");
GRBVar y = model.AddVar(0.0, 3.0, 0.0, GRB.CONTINUOUS, "y");
// Add quadratic constraint x^2 + x*y + y = 0 with name c1
GRBQConstr constr = model.AddQConstr(x*x + x*y + y == 0, "c1");

The methods on quadratic constraint objects are used to get and set quadratic constraint attributes. For example, quadratic constraint right-hand sides can be queried by calling Get (GRB.DoubleAttr.QCRHS). Note, however, that it is generally more efficient to query attributes for a set of constraints at once. This is done using the attribute query method on the GRBModel object (GRBModel.Get).

The full list of attributes can be found in the Attributes section of this document. Examples of how to query and set attributes can also be found in this section.

char Get(GRB.CharAttr attr)#

Query the value of a char-valued quadratic constraint attribute.

Parameters:

attr – The attribute being queried.

Returns:

The current value of the requested attribute.

Example:
// Get constraint sense
char sense = constr.Get(GRB.CharAttr.QCSense);
double Get(GRB.DoubleAttr attr)#

Query the value of a double-valued quadratic constraint attribute.

Parameters:

attr – The attribute being queried.

Returns:

The current value of the requested attribute.

Example:
// Get RHS
double rhs = constr.Get(GRB.DoubleAttr.QCRHS);
int Get(GRB.IntAttr attr)#

Query the value of an int-valued quadratic constraint attribute.

Parameters:

attr – The attribute being queried.

Returns:

The current value of the requested attribute.

Example:
// Get information whether constraint participates in a
// previously computed IIS
int iisqconstr = constr.Get(GRB.IntAttr.IISQConstr);
string Get(GRB.StringAttr attr)#

Query the value of a string-valued quadratic constraint attribute.

Parameters:

attr – The attribute being queried.

Returns:

The current value of the requested attribute.

Example:
// Get constraint name
string name = constr.Get(GRB.StringAttr.QCName);
void Set(GRB.CharAttr attr, char newvalue)#

Set the value of a char-valued quadratic constraint attribute.

Parameters:
  • attr – The attribute being modified.

  • newvalue – The desired new value of the attribute.

Example:
// Set constraint sense
constr.Set(GRB.CharAttr.QCSense, '>');
void Set(GRB.DoubleAttr attr, double newvalue)#

Set the value of a double-valued quadratic constraint attribute.

Parameters:
  • attr – The attribute being modified.

  • newvalue – The desired new value of the attribute.

Example:
// Set RHS
constr.Set(GRB.DoubleAttr.QCRHS, 2.0);
void Set(GRB.IntAttr attr, int newvalue)#

Set the value of an int-valued quadratic constraint attribute.

Parameters:
  • attr – The attribute being modified.

  • newvalue – The desired new value of the attribute.

Example:
// Force constraint into IIS
constr.Set(GRB.IntAttr.IISQConstrForce, 1);
void Set(GRB.StringAttr attr, string newvalue)#

Set the value of a string-valued quadratic constraint attribute.

Parameters:
  • attr – The attribute being modified.

  • newvalue – The desired new value of the attribute.

Example:
// Set constraint name
constr.Set(GRB.StringAttr.QCName, "newName");