problem.chgccoef
problem.chgccoef |
Purpose
Add or change a single matrix coefficient using a character string for the formula
Synopsis
problem.chgccoef(rowindex, colindex, factor, formula)
Arguments
rowindex
|
The row (i.e.
xpress.constraint object, index, or name) for the coefficient.
|
colindex
|
The column (i.e.
xpress.var object, index, or name) for the coefficient.
|
factor
|
Constant multiplier for the formula. If
factor is
None, a value of 1.0 will be used.
|
Formula
|
Character string holding the formula, with the tokens separated by spaces.
|
Example
Assuming that the columns of the matrix are named
Col1,
Col2, etc, the following example puts the formula
2.5*sin(Col1) into the coefficient in row 1, column 3.
Formula = "sin ( Col1 )" Factor = 2.5 p.chgccoef(1, 3, Factor, Formula)
Note that all the tokens in the formula (including mathematical operators and separators) are separated by one or more spaces.
Further information
If the coefficient already exists as a constant or formula, it will be changed into the new coefficient. If it does not exist, it will be added to the problem.
A coefficient is made up of two parts: Factor and Formula. Factor is a constant multiplier which can be provided in the Factor variable. If Xpress Nonlinear can identify a constant factor in the Formula, then it will use that as well, to minimize the size of the formula which has to be calculated.
This function can only be used if all the operands in the formula can be correctly identified as constants, existing columns, character variables or functions. Therefore, if a formula refers to a new column, that new item must be added to the Xpress Nonlinear problem first.
Related topics