XPRSftran
XPRSftran |
Purpose
Pre-multiplies a (column) vector provided by the user by the inverse of the current matrix.
Synopsis
int XPRS_CC XPRSftran(XPRSprob prob, double vec[]);
Arguments
prob
|
The current problem.
|
vec
|
Double array of length
ROWS containing the values which are to be multiplied by the basis inverse. The transformed values appear in the array.
|
Related controls
Double
Tolerance on eta elements.
|
Example
To get the (unscaled) tableau column of structural variable number
jcol, assuming that all arrays have been dimensioned, do the following:
/* Min size of arrays: mstart: 2; mrowind, dmatval & y: nrow. */ /* Get column as loaded originally, in sparse format */ rc = XPRSgetcols(prob, mstart, mrowind, dmatval, nrow, &nelt, jcol, jcol); /* Unpack into the zeroed array */ for(i = 0; i < nrow; i++) y[i] = 0.0; for(ielt = 0; ielt < nelt; ielt++) y[mrowind[ielt]] = dmatval[ielt]; rc = XPRSftran(prob,y);
Get the (unscaled) tableau column of the slack variable for row number
irow, assuming that all arrays have been dimensioned.
/* Min size of arrays: y: nrow */ /* Set up the original slack column in full format */ for(i = 0; i < nrow; i++) y[i] = 0.0; y[irow] = 1.0; rc = XPRSftran(prob,y);
Further information
If the matrix is in a presolved state, the function will work with the basis for the presolved problem.
Related topics