Procedure GMP::Column::UnfreezeMulti(GMP, binding, column)

# GMP::Column::UnfreezeMulti¶

The procedure GMP::Column::UnfreezeMulti removes the frozen status of a group of columns, belonging to a variable, in the matrix of a generated mathematical program.

GMP::Column::UnfreezeMulti(
GMP,            ! (input) a generated mathematical program
binding,        ! (input) an index binding
column          ! (input) a variable expression
)


## Arguments¶

GMP
An element in AllGeneratedMathematicalPrograms.
binding
An index binding that specifies and possibly limits the scope of indices.
column
A variable that, combined with the binding domain, specifies the columns.

## Return Value¶

The procedure returns 1 on success, and 0 otherwise.

Note

During a call to function GMP::Column::FreezeMulti AIMMS stores the upper and lower bound of the column before the function was called. This information is used when function GMP::Column::UnfreezeMulti is called thereafter. This information is not copied by the function GMP::Instance::Copy.

## Example¶

To unfreeze variable x(i) we can use:

for (i) do
GMP::Column::Unfreeze( myGMP, x(i) );
endfor;


It is more efficient to use:

GMP::Column::UnfreezeMulti( myGMP, i, x(i) );


If we only want to unfreeze those x(i) for which dom(i) is unequal to zero, then we use:

GMP::Column::UnfreezeMulti( myGMP, i | dom(i), x(i) );