14.2.1 Class BaseExpression

mosek::fusion::BaseExpression

Base class for most expressions

Members

BaseExpression.eval – Evaluate the expression and push the result onto the work stack.

BaseExpression.getDim – Return the d’th dimension in the expression.

BaseExpression.getND – Return the number of dimensions in the expression.

BaseExpression.getShape – Get the shape of the expression.

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

BaseExpression.index – Get a single element in the expression.

BaseExpression.pick – Pick a number of elements from the expression.

BaseExpression.slice – Get a slice of the expression.

BaseExpression.toString – Return a string representation of the expression object.

Implemented by

Expr

BaseExpression.eval
void eval(WorkStack::t rs, WorkStack::t ws, WorkStack::t 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.

BaseExpression.getDim
int getDim(int d)

Return the d’th dimension in the expression.

Parameters

d (int)

Return

(int)

BaseExpression.getND
int getND()

Return the number of dimensions in the expression.

Return

(int)

BaseExpression.getShape
shared_ptr<ndarray<int,1>> getShape()

Get the shape of the expression.

Return

(int[])

BaseExpression.getSize
long long getSize()

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

Return

(long long)

BaseExpression.index
Expression::t index(int i)
Expression::t index(shared_ptr<ndarray<int,1>> 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)

BaseExpression.pick
Expression::t pick(shared_ptr<ndarray<int,1>> indexes)
Expression::t pick(shared_ptr<ndarray<int,2>> 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)

BaseExpression.slice
Expression::t slice(int first, int last)
Expression::t slice(shared_ptr<ndarray<int,1>> firsta, shared_ptr<ndarray<int,1>> 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)

BaseExpression.toString
string toString()

Return a string representation of the expression object.

Return

(string)