Try our new documentation site (beta).
Advanced simplex routines
This section describes a set of advanced basis routines. These routines allow you to compute solutions to various linear systems involving the simplex basis matrix. Note that these should only be used by advanced users. We provide no technical support for these routines.
Before describing the routines, we should first describe the
GRBsvec
data structure that is used to input or
return sparse vectors:
typedef | struct SVector { | |
int | len; | |
int | *ind; | |
double | *val; | |
} GRBsvec; |
The len
field gives the number of non-zero values in the
vector. The ind
and val
fields give the index and
value for each non-zero, respectively. Indices are zero-based.
To give an example, the sparse vector
[0, 2.0, 0, 1.0]
would be represented as
len=2
, ind = [1, 3]
, and val = [2.0, 1.0]
.
The user is responsible for allocating and freeing the ind
and
val
fields. The length of the result vector for these
routines is not known in advance, so the user must allocate
these arrays to hold the longest possible result (whose length is
noted in the documentation for each routine).
Subsections