Initializing help system before first use

problem.chgnlcoef

problem.chgnlcoef


Purpose
Add or change a single matrix coefficient using a parsed or unparsed formula
Synopsis
problem.chgnlcoef (rowindex, colindex, factor, parsed, type, value)
Arguments
rowindex 
The index of the matrix row for the coefficient.
colindex 
The index of the matrix column for the coefficient.
factor 
Address of a double precision variable holding the constant multiplier for the formula. If Factor is None, a value of 1.0 will be used.
parsed 
Integer indicating the whether the token arrays are formatted as internal unparsed ( parsed=False) or internal parsed reverse Polish ( parsed=True).
type 
Array of token types providing the description and formula for each item.
value 
Array of values corresponding to the types in type.
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.
type  = [xp.xslp_op_ifun,  xp.xslp_op_var, xp.xslp_op_rb, xp.xslp_op_eof]
value = [xp.xslp_ifun_sin, 1,              0,             0]

Factor = 2.5
p.chgnlcoef (1, 3, Factor, 0, type, value)

problem.getIndex is used to retrieve the index for the internal function sin. The "nocase" version matches the function name regardless of the (upper or lower) case of the name.

Tokens of type xpress.xslp_op_var always count from 1, so Col1 is 1.

The formula is written in unparsed form (parsed = 0) and so it is provided as tokens in the same order as they would appear if the formula were written in character form.


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.


Related topics