Procedure GMP::Column::UnfreezeRaw(GMP, colSet)


The procedure GMP::Column::UnfreezeRaw removes the frozen status of a group of columns in a generated mathematical program.

     GMP,            ! (input) a generated mathematical program
     colSet          ! (input) a subset of Integers



An element in AllGeneratedMathematicalPrograms.


A subset of the set Integers, representing a set of column numbers.

Return Value

The procedure returns 1 on success, and 0 otherwise.


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


Assume that ‘MP’ is a mathematical program. To use GMP::Column::UnfreezeRaw we declare the following identifiers (in ams format):

ElementParameter myGMP {
    Range: AllGeneratedMathematicalPrograms;
Set VariableSet {
    SubsetOf: AllVariables;
Set ColumnSet {
    SubsetOf: Integers;
    Index: cc;

To unfreeze the variable x(i) we can use:

myGMP := GMP::Instance::Generate( MP );

VariableSet := { 'x' };
ColumnSet := GMP::Instance::GetColumnNumbers( myGMP, VariableSet );

GMP::Column::Unfreeze( myGMP, ColumnSet );