14.2.14 Class Expression

mosek.fusion.Expression

Abstract base class for all objects which can be used as linear expressions of the form \(Ax+b.\)

The main use of this class is to store the result of expressions created by the static methods provided by Expr.

Members:

Expression.Eval – Evaluate the expression and push the result onto the work stack.

Expression.GetDim – Return the d’th dimension in the expression.

Expression.GetND – Return the number of dimensions in the expression.

Expression.GetShape – Get the shape of the expression.

Expression.GetSize – Return the total number of elements in the expression (the product of the dimensions).

Expression.Index – Get a single element in the expression.

Expression.Pick – Pick a number of elements from the expression.

Expression.Slice – Get a slice of the expression.

Expression.ToString – Return a string representation of the expression object.

Implemented by:

BaseExpression, Parameter, Variable

Expression.Eval
void Eval(WorkStack rs, WorkStack ws, WorkStack xs)

Evaluate the expression and push the result onto the rs work stack.

Parameters:
  • rs (WorkStack) – The stack where the result of the evaluation is stored.

  • ws (WorkStack) – The stack used by evaluation to perform intermediate computations. It will be returned in the same state as when the function is called.

  • xs (WorkStack) – An auxiliary stack.

Expression.GetDim
int GetDim(int d)

Return the d’th dimension in the expression.

Parameters:

d (int)

Return:

(int)

Expression.GetND
int GetND()

Return the number of dimensions in the expression.

Return:

(int)

Expression.GetShape
int[] GetShape()

Get the shape of the expression.

Return:

(int[])

Expression.GetSize
long GetSize()

Return the total number of elements in the expression (the product of the dimensions).

Return:

(long)

Expression.Index
Expression Index(int i)
Expression Index(int[] indexes)

Get a single element in the expression.

Parameters:
  • i (int) – Index of the element to pick.

  • indexes (int[]) – Multi-dimensional index of the element to pick.

Return:

(Expression)

Expression.Pick
Expression Pick(int[] indexes)
Expression Pick(int[,] indexrows)

Picks a number of elements from the expression and returns them as a one-dimensional expression.

Parameters:
  • indexes (int[]) – Indexes of the elements to pick

  • indexrows (int[,]) – Indexes of the elements to pick. Each row defines a separate multi-dimensional index.

Return:

(Expression)

Expression.Slice
Expression Slice(int first, int last)
Expression Slice(int[] firsta, int[] lasta)

Get a slice of the expression.

Parameters:
  • first (int) – Index of the first element in the slice.

  • last (int) – Index of the last element in the slice plus one.

  • firsta (int[]) – Multi-dimensional index of the first element in the slice.

  • lasta (int[]) – Multi-dimensional index of the element after the end of the slice.

Return:

(Expression)

Expression.ToString
string ToString()

Return a string representation of the expression object.

Return:

(string)