TLinearConstraint Struct Reference

Detailed Description

A linear constraint is a sum of weighted variables equated to a right-hand value. In this implementation, the right-hand value is an interval and, thus, linear constraints are to be in the given range. By representing linear constraints in this way we can easily add them to the simplex tableaus.

Obseve that when operating linear constraints (scale, add, etc.) some numerical errors are introduced. Therefore the scale factors for each variable (i.e., the values stored in the val field) are only approximations to the correct values. To try to compensate for such numerical errors, every time we have to evalute (crop,...) a linear constraint, we treat the scale factors as tiny intervals adding them a [-ZERO,ZERO] interval (ZERO is about 1e-11).

See Also
linear_constraint.h, linear_constraint.c

Definition at line 51 of file linear_constraint.h.

Data Fields

unsigned int n
unsigned int max
unsigned int * ind
double * val
Tinterval error

Field Documentation

unsigned int TLinearConstraint::max

Maximum number of variables in the linear constraint.

Definition at line 53 of file linear_constraint.h.

Referenced by AddTerm2LinearConstraint(), CopyLinearConstraint(), InitLinearConstraint(), LoadLinearConstraint(), and SaveLinearConstraint().