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
Zero 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
XPRSbtran.


If you have any comments or suggestions about these pages, please send mail to docs@dashoptimization.com.