XPRSdelrows
XPRSdelrows |
Purpose
Synopsis
int XPRS_CC XPRSdelrows(XPRSprob prob, int nrows, const int mindex[]);
Arguments
prob
|
The current problem.
|
nrows
|
Number of rows to delete.
|
mindex
|
An integer array of length
nrows containing the rows to delete.
|
Example
In this example, rows
0 and
10 are deleted from the matrix:
mindex[0] = 0; mindex[1] = 10; XPRSdelrows(prob,2,mindex);
Further information
1. After rows have been deleted from a problem, the numbers of the remaining rows are moved down so that the rows are always numbered from
0 to
ROWS-1 where
ROWS is the problem attribute containing the number of non-deleted rows in the matrix.
2. If the problem has already been optimized, or an advanced basis has been loaded, and you delete a row for which the slack column is non-basic, the current basis will no longer be valid - the basis is "lost". If you go on to re-optimize the problem, a warning message is displayed (
140) and the Optimizer automatically generates a corrected basis.
You can avoid losing the basis by only deleting basic rows (see XPRSgetbasis), bringing a non-basic row into the basis first if necessary (see XPRSgetpivots and XPRSpivot).
You can avoid losing the basis by only deleting basic rows (see XPRSgetbasis), bringing a non-basic row into the basis first if necessary (see XPRSgetpivots and XPRSpivot).
Related topics