XSLPaddtolsets
XSLPaddtolsets |
Purpose
Add sets of standard tolerance values to an SLP problem
Synopsis
int XPRS_CC XSLPaddtolsets(XSLPprob Prob, int nSLPTol, double *SLPTol);
Arguments
Prob
|
The current SLP problem.
|
nSLPTol
|
The number of tolerance sets to be added.
|
SLPTol
|
Double array of (
nSLPTol * 9) items containing the 9 tolerance values for each set in order.
|
Example
The following example creates two tolerance sets: the first has values of 0.005 for all tolerances; the second has values of 0.001 for relative tolerances (numbers 2,4,6,8), values of 0.01 for absolute tolerances (numbers 1,3,5,7) and zero for the closure tolerance (number 0).
double SLPTol[18]; for (i=0;i<9;i++) SLPTol[i] = 0.005; SLPTol[9] = 0; for (i=10;i<18;i=i+2) SLPTol[i] = 0.01; for (i=11;i<18;i=i+2) SLPTol[i] = 0.001; XSLPaddtolsets(Prob, 2, SLPTol);
Further information
A tolerance set is an array of 9 values containing the following tolerances:
Entry / Bit | Tolerance | XSLP constant | XSLP bit constant |
---|---|---|---|
0 | Closure tolerance (TC) | XSLP_TOLSET_TC | XSLP_TOLSETBIT_TC |
1 | Absolute delta tolerance (TA) | XSLP_TOLSET_TA | XSLP_TOLSETBIT_TA |
2 | Relative delta tolerance (RA) | XSLP_TOLSET_RA | XSLP_TOLSETBIT_RA |
3 | Absolute coefficient tolerance (TM) | XSLP_TOLSET_TM | XSLP_TOLSETBIT_TM |
4 | Relative coefficient tolerance (RM) | XSLP_TOLSET_RM | XSLP_TOLSETBIT_RM |
5 | Absolute impact tolerance (TI) | XSLP_TOLSET_TI | XSLP_TOLSETBIT_TI |
6 | Relative impact tolerance (RI) | XSLP_TOLSET_RI | XSLP_TOLSETBIT_RI |
7 | Absolute slack tolerance (TS) | XSLP_TOLSET_TS | XSLP_TOLSETBIT_TS |
8 | Relative slack tolerance (RS) | XSLP_TOLSET_RS | XSLP_TOLSETBIT_RS |
The XSLP_TOLSET constants can be used to access the corresponding entry in the value arrays, while the XSLP_TOLSETBIT constants are used to set or retrieve which tolerance values are used for a given SLP variable.
Once created, a tolerance set can be used to set the tolerances for any SLP variable.
If a tolerance value is zero, then the default tolerance will be used instead. To force the use of a zero tolerance, use the XSLPchgtolset function and set the Status variable appropriately.
See the section Convergence criteria for a fuller description of tolerances and their uses.
The XSLPadd... functions load additional items into the SLP problem. The corresponding XSLPload... functions delete any existing items first.
Related topics