Variable Class
Namespace: Optimizer.Objects
Assembly: xprsdn (in xprsdn.dll) Version: 44.01.04
public sealed class Variable : Expression, IIndex, IComparable<Variable>
The Variable type exposes the following members.
Name | Description | |
---|---|---|
![]() |
AbsOf |
Create a constraint that requires this variable to be the absolute value of
x.
|
![]() |
AndOf(Variable) |
Create a constraint that requires this variable to be the and of the specified other variables.
|
![]() |
AndOf(ICollection<Variable>) |
Create a constraint that requires this variable to be the and of the specified arguments.
|
![]() |
AndOf(IEnumerable<Variable>) |
Create a constraint that requires this variable to be the and of the specified arguments.
|
![]() |
AndOf(Variable, String) |
Create a constraint that requires this variable to be the and of the specified arguments.
|
![]() |
ChgCoef |
Change the coefficient for this variable in a row.
|
![]() |
ChgCoefs |
Change the coefficients for this variable in multiple rows.
|
![]() |
ChgObj |
Change objective coefficient for this variable.
|
![]() |
ChgObjN |
Change objective coefficient for this variable.
|
![]() |
CompareTo |
Compares the current object with another object of the same type.
|
![]() |
Div(Double) |
Create a new expression that represents the quotient of
this and
arg.
(Overrides Expression.Div(Double).) |
![]() |
Div(ConstantExpression) |
Create a new expression that represents the quotient of
this and
arg.
|
![]() |
Div(Expression) |
Create a new expression that represents the quotient of
this and
arg.
(Overrides Expression.Div(Expression).) |
![]() |
Eq(Double) |
Create an "equals" constraint with this expression as left-hand side.
(Overrides Expression.Eq(Double).) |
![]() |
Eq(Expression) |
Create an "equals" constraint with this expression as left-hand side.
(Overrides Expression.Eq(Expression).) |
![]() |
Equals | (Overrides Object.Equals(Object).) |
![]() |
Evaluate |
Compute the value of this expression with respect to the given solution Vector (which is not required to be feasible).
(Overrides Expression.Evaluate(Double).) |
![]() |
Extract(Double, IPostfixExtractor) |
Extract this expression into postfix notation.
(Overrides Expression.Extract(Double, IPostfixExtractor).) |
![]() |
Extract(Double, XPRSprob.RowCreator) |
Extract this expression into a row. This is for internal use only, you should never have to call this function explicitly.
(Overrides Expression.Extract(Double, XPRSprob.RowCreator).) |
![]() |
Fix |
Fix this variable to a value. Set the lower bound and upper bound in the
XpressProblem instance to which this variable belongs.
|
![]() |
Geq(Double) |
Create a "greater than or equal" constraint with this expression as left-hand side.
(Overrides Expression.Geq(Double).) |
![]() |
Geq(Expression) |
Create a "greater than or equal" constraint with this expression as left-hand side.
(Overrides Expression.Geq(Expression).) |
![]() |
GetCallbackRedCost |
Get reduced cost value for this variable from the solution associated with the current callback.
Note: This functions uses under the hood. Note: Calling this function for multiple variables is not efficient. If you need to get values for multiple variables then consider using to get the values for all variables and then use to extract the value for a particular variable. |
![]() |
GetCallbackSolution |
Get value for this variable from the solution associated with the current callback.
Note: This functions uses under the hood. Note: Calling this function for multiple variables is not efficient. If you need to get values for multiple variables then consider using to get the values for all variables and then use to extract the value for a particular variable. |
![]() |
GetConstantView |
Get the constant value to which this expression evaluates. If this expression can be treated as a constant value then the function returns the constant value. If the expression cannot be treated as a constant then an exception is raised. In order to test whether the expression can be treated as constant, use function .GetMaxDegree() and check whether it returns 0.
(Overrides Expression.GetConstantView().) |
![]() |
GetHashCode |
Serves as a hash function for a particular type.
(Overrides Object.GetHashCode().) |
![]() |
GetIndex |
Get the index that this object has in the underlying model.
Attention: this is a very advanced function. Use it only if you know exactly what you are doing.
|
![]() |
GetIndexForProb |
Get the index stored in this object but raise an exception if the problem that created this object is not
prob.
|
![]() |
GetLB |
Get the lower bound for this variable. Queries the
Optimizer.Objects.XpressProblem instance to which this variable belongs and returns the lower bound obtained from that instance.
|
![]() |
GetLinearView |
Get a linear read-only view on this expression. If this expression can be treated as a linear expression then the function returns a readonly view on the linear terms (including the constant term if there is any). If the expression cannot be treated as a linear expression then an exception is raised. In order to test this expression can be treated as linear, use function .GetMaxDegree() and check whether it returns 0 or 1. In the returned
System.Collections.Generic.KeyValuePair instances the constant term is indicated with a key of Optimizer.Objects.XpressProblem.NULL_VARIABLE. Note that depending on the actual expression class and its implementation, the terms may not be presented in the same order in which you added them. There may also be multiple elements with the same key (again depending on the implementation of the actual object).
(Overrides Expression.GetLinearView().) |
![]() |
GetMaxDegree |
Get the maximum degree of any of the terms/monomials that appear in the symbolic representation of all parenthesized sub-expressions are fully expanded. The maximum degree is
(Overrides Expression.GetMaxDegree().)
|
![]() |
GetName |
Get the name of this object. Queries the problem instance that owns this object and returns the name from that instance.
|
![]() |
GetObj |
Get objective coefficient for this variable.
|
![]() |
GetObjN |
Get objective coefficient for this variable.
|
![]() |
GetProblem |
Get the problem to which this element belongs.
|
![]() |
GetQuadView |
Get a quadratic read-only view on this expression. If this expression can be treated as a quadratic expression then the function returns a readonly view on the quadratic terms (including the constant term and linear terms if there are any). If the expression cannot be treated as a linear expression then an exception is raised. In order to test this expression can be treated as quadratic, use function .GetMaxDegree() and check whether it returns 0, 1, or 2. In the returned
System.Collections.Generic.KeyValuePair instances the constant term is indicated with a key with two Optimizer.Objects.XpressProblem.NULL_VARIABLEs. Linear terms are represented by a
QPair with Optimizer.Objects.XpressProblem.NULL_VARIABLE as second variable. Note that depending on the actual expression class and its implementation, the terms may not be presented in the same order in which you added them. There may also be multiple elements with the same key (again depending on the implementation of the actual object).
(Overrides Expression.GetQuadView().) |
![]() |
GetRedCost |
Get the current reduced cost value for this variable.
Note: This functions uses under the hood. This is only valid to call if the `Optimizer.Objects.XpressProblem` instance owning this variable is currently not under optimization. Note: Calling this function for multiple variables is not efficient. If you need to get values for multiple variables then consider using to get the values for all variables and then use to extract the value for a particular variable. This strategy is also valid from callbacks. |
![]() |
GetRTTI |
Get runtime type identification.
(Overrides Expression.GetRTTI().) |
![]() |
GetSerial |
Get the serial number of this object.
|
![]() |
GetSolution |
Get the current solution value for this variable.
Note: This functions uses under the hood. This is only valid to call if the `XpressProblem` instance owning this variable is currently not under optimization. Note: Calling this function for multiple variables is not efficient. If you need to get values for multiple variables then consider using to get the values for all variables and then use to extract the value for a particular variable. This strategy is also valid from callbacks. |
![]() |
GetType |
Get the type for this variable. Queries the
XpressProblem instance to which this variable belongs and returns the name obtained from that instance.
|
![]() |
GetUB |
Get the upper bound for this variable. Queries the
XpressProblem instance to which this variable belongs and returns the upper bound obtained from that instance.
|
![]() |
GetValue |
Get the value of this variable from an array. The function assumes that
data is an array that stores a value for each variable in the underlying problem and returns the value from this array that corresponds to this variable.
data arrays can be obtained for example from
prob.GetSolution() or
prob.GetCallbackSolution().
|
![]() |
IfNotThen |
Create an indicator constraint with this variable as indicator variable. The constraint will enforce
implied if this variable is set to 0.
|
![]() |
IfThen |
Create an indicator constraint with this variable as indicator variable. The constraint will enforce
implied if this variable is set to 1.
|
![]() |
In |
Create a range constraint that bounds this expression from below and above.
(Overrides Expression.In(Double, Double).) |
![]() |
Leq(Double) |
Create a "less than or equal" constraint with this expression as left-hand side.
(Overrides Expression.Leq(Double).) |
![]() |
Leq(Expression) |
Create a "less than or equal" constraint with this expression as left-hand side.
(Overrides Expression.Leq(Expression).) |
![]() |
MarkDeleted | |
![]() |
MaxOf(Variable) |
Create a constraint that requires this variable to be the maximum of the specified other variables.
|
![]() |
MaxOf(Variable, Double) |
Create a constraint that requires this variable to be the maximum of the specified other variables and values.
|
![]() |
MaxOf(ICollection<Variable>, ICollection<Double>) |
Create a constraint that requires this variable to be the maximum of the specified arguments.
|
![]() |
MaxOf(IEnumerable<Variable>, IEnumerable<Double>) |
Create a constraint that requires this variable to be the maximum of the specified arguments.
|
![]() |
MaxOf(Variable, Double, String) |
Create a constraint that requires this variable to be the maximum of the specified arguments.
|
![]() |
MinOf(Variable) |
Create a constraint that requires this variable to be the minimum of the specified other variables.
|
![]() |
MinOf(Variable, Double) |
Create a constraint that requires this variable to be the minimum of the specified other variables and values.
|
![]() |
MinOf(ICollection<Variable>, ICollection<Double>) |
Create a constraint that requires this variable to be the minimum of the specified arguments.
|
![]() |
MinOf(IEnumerable<Variable>, IEnumerable<Double>) |
Create a constraint that requires this variable to be the minimum of the specified arguments.
|
![]() |
MinOf(Variable, Double, String) |
Create a constraint that requires this variable to be the minimum of the specified arguments.
|
![]() |
Minus(Double) |
Create a new expression that represents the difference of
this and
arg.
(Inherited from Expression.) |
![]() |
Minus(Expression) |
Create a new expression that represents the difference of
this and
arg.
(Inherited from Expression.) |
![]() |
Mul(Double) |
Create a new expression that represents the product of
this and
arg.
(Overrides Expression.Mul(Double).) |
![]() |
Mul(ConstantExpression) |
Create a new expression that represents the product of
this and
arg.
|
![]() |
Mul(Expression) |
Create a new expression that represents the product of
this and
arg.
(Overrides Expression.Mul(Expression).) |
![]() |
Mul(LinTerm) |
Create a new expression that represents the product of
this and
arg.
|
![]() |
Mul(Variable) |
Create a new expression that represents the product of
this and
arg.
|
![]() |
OrOf(Variable) |
Create a constraint that requires this variable to be the or of the specified other variables.
|
![]() |
OrOf(ICollection<Variable>) |
Create a constraint that requires this variable to be the or of the specified arguments.
|
![]() |
OrOf(IEnumerable<Variable>) |
Create a constraint that requires this variable to be the or of the specified arguments.
|
![]() |
OrOf(Variable, String) |
Create a constraint that requires this variable to be the or of the specified arguments.
|
![]() |
Plus(Double) |
Create a new expression that represents the sum of
this and
arg.
(Inherited from Expression.) |
![]() |
Plus(Expression) |
Create a new expression that represents the sum of
this and
arg.
(Inherited from Expression.) |
![]() |
PwlOf(Variable, PwlBreakpoint) |
Create a new piecewise linear constraint that requires this variable to be the value of the piecewise linear function specified by
breakpoints evaluated for
input.
|
![]() |
PwlOf(Variable, ICollection<PwlBreakpoint>) |
Create a new piecewise linear constraint that requires this variable to be the value of the piecewise linear function specified by
breakpoints evaluated for
input.
|
![]() |
PwlOf(Variable, IEnumerable<PwlBreakpoint>) |
Create a new piecewise linear constraint that requires this variable to be the value of the piecewise linear function specified by
breakpoints evaluated for
input.
|
![]() |
PwlOf(Variable, PwlBreakpoint, String) |
Create a new piecewise linear constraint that requires this variable to be the value of the piecewise linear function specified by
breakpoints evaluated for
input.
|
![]() |
PwlOf(Variable, ICollection<PwlBreakpoint>, String) |
Create a new piecewise linear constraint that requires this variable to be the value of the piecewise linear function specified by
breakpoints evaluated for
input.
|
![]() |
PwlOf(Variable, IEnumerable<PwlBreakpoint>, String) |
Create a new piecewise linear constraint that requires this variable to be the value of the piecewise linear function specified by
breakpoints evaluated for
input.
|
![]() |
PwlOf(Variable, Double, Double) |
Create a new piecewise linear constraint that requires this variable to be the value of the piecewise linear function specified by
xval/
yval evaluated for
input.
|
![]() |
PwlOf(Variable, Double, Double, String) |
Create a new piecewise linear constraint that requires this variable to be the value of the piecewise linear function specified by
xval/
yval evaluated for
input.
|
![]() |
SetLB |
Set the lower bound for this variable. Set the lower bound in the
XpressProblem instance to which this variable belongs.
|
![]() |
SetLimit |
Set the limit for this variable. Set the limit in the
XpressProblem instance to which this variable belongs. Note that limits are ignored unless the variable is semi-continuous, semi-integer, or partial integer.
|
![]() |
SetName |
Set the name of this variable. Sets the name of this variable in the problem instance that owns the object.
|
![]() |
SetType |
Set the type for this variable. Set the type in the
XpressProblem instance to which this variable belongs.
|
![]() |
SetUB |
Set the upper bound for this variable. Set the upper bound in the
XpressProblem instance to which this variable belongs.
|
![]() |
Square |
Create a quadratic term by multiplying this variable with itself.
|
![]() |
ToString |
Returns the name from .GetName().
(Overrides Object.ToString().) |
![]() |
Uminus |
Create a new expression that represents the unary minus of this one.
(Overrides Expression.Uminus().) |
![]() |
UpdateIndex |
Add
delta to this object's index.
|
Reference
© 2001-2025 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.