Hide navigation sidebar
Hide table of contents sidebar
Back to top
Toggle table of contents sidebar

# Quadratic Constraint Attributes

These are quadratic constraint attributes, meaning that they are associated with specific quadratic constraints in the model. You should use one of the various `get` routines to retrieve the value of an attribute. These are described at the beginning of this section. For the object-oriented interfaces, quadratic constraint attributes are retrieved by invoking the `get` method on a constraint object. For attributes that can be modified directly by the user, you can use one of the various `set` methods.

Attempting to query an attribute that is not available will produce an error. In C, the attribute query routine will return a DATA_NOT_AVAILABLE error code. The object-oriented interfaces will throw an exception.

## QCSense

- Type: `char`

- Modifiable: `Yes`

Quadratic constraint sense (`'<'`, `'>'`, or `'='`).

Please note that `'<'` and `'>'` refer to the mathematical constraint senses \(\le\) and \(\ge\), respectively.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## QCRHS

- Type: `double`

- Modifiable: `Yes`

Quadratic constraint right-hand side. Note that a less-than-or-equal constraint with a RHS value of `1e20` or larger, or a greater-than-or-equal constraint with RHS value of `-1e20` or smaller, will be treated as always being satisfied. Equality constraints with very large RHS values can lead to numerical issues, so these should be avoided.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## QCName

- Type: `string`

- Modifiable: `Yes`

Quadratic constraint name.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## QCPi

- Type: `double`

- Modifiable: `No`

The constraint dual value in the current solution. Note that quadratic constraint dual values are only available when the QCPDual parameter is set to 1.

Only available for convex, continuous models.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## QCSlack

- Type: `double`

- Modifiable: `No`

The constraint slack in the current solution.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## QCTag

- Type: `string`

- Modifiable: `Yes`

Tag for quadratic constraints.

If you will be retrieving the solution to your model in JSON format, you might define a tag for every quadratic constraint that you plan to retrieve solution information for. Each quadratic constraint tag must be unique, and if any tag is used (variable tag, constraint tag, quadratic constraint tag) only tagged elements will appear in the JSON solution string. Tags must consist of printable US-ASCII characters. Using extended characters or escaped characters will result in an error. The maximum supported length for a tag is 10240 characters.

Note that quadratic constraint tags are only allowed for continuous models.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## IISQConstr

- Type: `int`

- Modifiable: `No`

For an infeasible model, indicates whether the quadratic constraint participates in the computed Irreducible Inconsistent Subsystem (IIS). Only available after you have computed an IIS.

For examples of how to query or modify attributes, refer to our Attribute Examples.

## IISQConstrForce

- Type: `int`

- Modifiable: `Yes`

When computing an Irreducible Inconsistent Subsystem (IIS) for an infeasible model, indicates whether the quadratic constraint should be included or excluded from the IIS.

The default value of -1 lets the IIS algorithm decide.

If the attribute is set to 0, the constraint is not eligible for inclusion in the IIS.

If the attribute is set to 1, the constraint is included in the IIS and the IIS algorithm never considers the possibility of removing it.

Note that setting this attribute to 0 may make the resulting subsystem feasible (or consistent), which would then make it impossible to construct an IIS. Trying anyway will result in a IIS_NOT_INFEASIBLE error. Similarly, setting this attribute to 1 may result in an IIS that is not irreducible. More precisely, the system would only be irreducible with respect to the model elements that have force values of -1 or 0.

See the `Model.computeIIS` documentation for more details.

For examples of how to query or modify attributes, refer to our Attribute Examples.

Help and Feedback

Press `/` or click to search this documentation | Gurobi website | Gurobi community forum
Go to other Gurobi documentation | Gurobi download | Contact support