ILOG CPLEX .NET Reference Manual

IConversion Interface

IConversion objects allow you to locally change the type of one or more variables.

For a list of all members of this type, see IConversion Members.

public interface IConversion : IAddable, ICopyable

Remarks

When a variable is created, its type is determined to be one of Int, Float, or Bool. The type of a variable can be queried with the method INumVar.GetType(). It cannot be changed throughout the lifetime of the variable.

However, it is sometimes necessary to consider a model where, for example, some integer variables are relaxed to be continuous. This is achieved using objects of type IConversion. By adding an IConversion object to a model, you can change the types of the variables represented in the IConversion object for that model only. When solving the model, the changed types are used instead of the original types of the variables. Method INumVar.GetType() still returns the original variable types.

The type of a variable can be changed only once per model. An attempt to add more than one IConversion object to a model containing the same variable will cause an exception to be thrown.

To change the type of a variable more than once, you must remove the existing IConversion object before adding a new IConversion object. Removing the conversion object for a variable from the model will reinstantiate the original type of variable within that model.

See IMPModeler.Conversion.

Requirements

Namespace: ILOG.Concert

Assembly: ILOG.CPLEX (in ILOG.CPLEX.dll)

See Also

IConversion Members | ILOG.Concert Namespace