Expression template node interpreting a binary combination of two vector expressions as a matrix (e.g. outer product), via the per-element functor F invoked with both expressions and the element coordinates.
More...
#include <MatrixExpression.hpp>
template<typename E1, typename E2, typename F>
class CDPL::Math::VectorMatrixBinary< E1, E2, F >
Expression template node interpreting a binary combination of two vector expressions as a matrix (e.g. outer product), via the per-element functor F invoked with both expressions and the element coordinates.
- Template Parameters
-
| E1 | The first vector expression type. |
| E2 | The second vector expression type. |
| F | The per-element functor type. |
◆ ValueType
template<typename E1 , typename E2 , typename F >
The element value type of the expression (the functor's result type).
◆ ConstReference
template<typename E1 , typename E2 , typename F >
Constant element reference type.
◆ Reference
template<typename E1 , typename E2 , typename F >
Mutable element reference type (degrades to const for expression template results).
◆ ConstClosureType
template<typename E1 , typename E2 , typename F >
Constant closure type used when this expression appears inside another expression.
◆ ClosureType
template<typename E1 , typename E2 , typename F >
Closure type used when this expression appears inside another expression.
◆ SizeType
template<typename E1 , typename E2 , typename F >
The common size type of the two wrapped vector expressions.
◆ DifferenceType
template<typename E1 , typename E2 , typename F >
The common signed difference type of the two wrapped vector expressions.
◆ VectorMatrixBinary()
template<typename E1 , typename E2 , typename F >
Constructs the expression template node wrapping e1 and e2.
- Parameters
-
| e1 | The first vector expression (row source). |
| e2 | The second vector expression (column source). |
◆ getSize1()
template<typename E1 , typename E2 , typename F >
Returns the first wrapped vector expression's size (number of rows of the resulting matrix view).
- Returns
- The number of rows.
◆ getSize2()
template<typename E1 , typename E2 , typename F >
Returns the second wrapped vector expression's size (number of columns of the resulting matrix view).
- Returns
- The number of columns.
◆ operator()()
template<typename E1 , typename E2 , typename F >
Applies the binary functor to e1(i) and e2(j) to produce the matrix element at (i, j).
- Parameters
-
| i | The zero-based row index. |
| j | The zero-based column index. |
- Returns
- The computed matrix element.
The documentation for this class was generated from the following file: