This class represents the matrix product of two linear expressions. See Multiply for the elementwise product.
# S4 method for class 'Expression,Expression'
x %*% y
# S4 method for class 'Expression,ConstVal'
x %*% y
# S4 method for class 'ConstVal,Expression'
x %*% y
# S4 method for class 'MulExpression'
to_numeric(object, values)
# S4 method for class 'MulExpression'
dim_from_args(object)
# S4 method for class 'MulExpression'
is_atom_convex(object)
# S4 method for class 'MulExpression'
is_atom_concave(object)
# S4 method for class 'MulExpression'
is_atom_log_log_convex(object)
# S4 method for class 'MulExpression'
is_atom_log_log_concave(object)
# S4 method for class 'MulExpression'
is_incr(object, idx)
# S4 method for class 'MulExpression'
is_decr(object, idx)
# S4 method for class 'MulExpression'
.grad(object, values)
# S4 method for class 'MulExpression'
graph_implementation(object, arg_objs, dim, data = NA_real_)
The Expression objects or numeric constants to multiply.
A MulExpression object.
A list of numeric values for the arguments
An index into the atom.
A list of linear expressions for each argument.
A vector representing the dimensions of the resulting expression.
A list of additional data required by the atom.
to_numeric(MulExpression)
: Matrix multiplication.
dim_from_args(MulExpression)
: The (row, col) dimensions of the expression.
is_atom_convex(MulExpression)
: Multiplication is convex (affine) in its arguments only if one of the arguments is constant.
is_atom_concave(MulExpression)
: If the multiplication atom is convex, then it is affine.
is_atom_log_log_convex(MulExpression)
: Is the atom log-log convex?
is_atom_log_log_concave(MulExpression)
: Is the atom log-log concave?
is_incr(MulExpression)
: Is the left-hand expression positive?
is_decr(MulExpression)
: Is the left-hand expression negative?
.grad(MulExpression)
: Gives the (sub/super)gradient of the atom w.r.t. each variable
graph_implementation(MulExpression)
: The graph implementation of the expression.