Initializing help system before first use

Xpress-SLP Matrix Name Generation

Xpress-SLP adds rows and columns to the nonlinear problem in order to create a linear approximation. The new rows and columns are given names derived from the row or column to which they are related as follows:

Row or column type Control parameter containing format Default format
Update row XSLP_UPDATEFORMAT pU_r
Delta vector XSLP_DELTAFORMAT pD_c
Penalty delta (below step bound) XSLP_MINUSDELTAFORMAT pD-c
Penalty delta (above step bound) XSLP_PLUSDELTAFORMAT pD+c
Penalty error (below RHS) XSLP_MINUSERRORFORMAT pE-r
Penalty error (above RHS) XSLP_PLUSERRORFORMAT pE+r
Row for total of all penalty vectors (error or delta) XSLP_PENALTYROWFORMAT pPR_x
Column for standard penalty cost (error or delta) XSLP_PENALTYCOLFORMAT pPC_x
LO step bound formulated as a row XSLP_SBLOROWFORMAT pSB-c
UP step bound formulated as a row XSLP_SBUPROWFORMAT pSB+c

In the default formats:

p
a unique prefix (one or more characters not used as the beginning of any name in the problem).
r
the original row name.
c
the original column name.
x
The penalty row and column vectors are suffixed with "ERR" or "DELT" (for error and delta respectively).
Other characters appear "as is".

The format of one of these generated names can be changed by setting the corresponding control parameter to a formatting string using standard "C"-style conventions. In these cases, the unique prefix is not available and the only obvious choices, apart from constant names, use "%s" to include the original name — for example:

 U_%s would create names like U_abcdefghi
 U_%-8s would create names like U_abcdefgh (always truncated to 8 characters).

You can use a part of the name by using the XSLP_*OFFSET control parameters (such as XSLP_UPDATEOFFSET) which will offset the start of the original name by the number of characters indicated (so, setting XSLP_UPDATEOFFSET to 1 would produce the name U_bcdefghi).