MatrixExpression concept

Description

A matrix expression is an expression which after computation results in a matrix. Thus a matrix expression can be assigned to a matrix collection.

Refinement of

Expression.

Associated types

EqualityComparable.
Value type X::value_type The type of the entries in the expression
Const reference type X::const_reference Type that is a reference to an element in the expression but prohibits modifying the element.
Row-size type X::row_size_type The type of the row-indices. The row_size_type must be a signed or unsigned integer type
Column-size type X::column_size_type The type of the column-indices. The column_size_type must be a signed or unsigned integer type

Notation

X Type that is a model of Expression
a Objects of type X

Definitions

Valid expressions

Name Expression Type requirements Return type
Number of rows a.num_rows() row_size_type
Number of columns a.num_columns() column_size_type
Element access a(i,j) const_reference
Destructor a.~X()

Expression semantics

Name Expression Precondition Semantics Postcondition
Number of rows a.num_rows() Returns the number of rows a.num_rows()≥0
Number of columns a.num_columns() Returns the number of columns a.num_columns()≥0
Element access a(i,j) 0≤i and i<a.size() Returns the value at the given index
Destructor a.~X()

Complexity guarantees

Invariants

Models

Notes