# 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
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.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.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.ToString
string ToString()


Return a string representation of the expression object.

Return

(string)