Go to the documentation of this file.
7 #ifndef INCLUDE_JET_MATRIX_EXPRESSION_H_
8 #define INCLUDE_JET_MATRIX_EXPRESSION_H_
25 template <
typename T,
typename E>
113 template <
typename T,
typename E,
typename Op>
145 template <
typename T,
typename E>
178 template <
typename T,
typename E>
207 template <
typename T,
typename E,
typename U>
223 template <
typename T,
typename E1,
typename E2,
typename Op>
259 template <
typename T,
typename E,
typename Op>
294 template <
typename T,
typename ME,
typename VE>
320 template <
typename T,
typename E1,
typename E2>
347 template <
typename T,
typename E1,
typename E2>
351 template <
typename T,
typename E>
355 template <
typename T,
typename E1,
typename E2>
359 template <
typename T,
typename E>
363 template <
typename T,
typename E>
367 template <
typename T,
typename E>
371 template <
typename T,
typename E>
375 template <
typename T,
typename E>
381 template <
typename T,
typename E>
385 template <
typename T,
typename E1,
typename E2>
390 template <
typename T,
typename E>
394 template <
typename T,
typename E>
398 template <
typename T,
typename E1,
typename E2>
403 template <
typename T,
typename E>
407 template <
typename T,
typename E>
411 template <
typename T,
typename E>
415 template <
typename T,
typename E>
419 template <
typename T,
typename ME,
typename VE>
424 template <
typename T,
typename E1,
typename E2>
429 template <
typename T,
typename E>
433 template <
typename T,
typename E>
438 #include "detail/matrix_expression-inl.h"
440 #endif // INCLUDE_JET_MATRIX_EXPRESSION_H_
T operator[](size_t i) const
Returns vector element at i.
Size2 size() const
Size of the matrix.
Base class for vector expression.
Definition: vector_expression.h:25
MatrixUnaryOp(const E &u)
Constructs unary operation expression for given input expression.
MatrixConstant(size_t m, size_t n, const T &c)
Constructs m x n constant matrix expression.
const E & operator()() const
Returns actual implementation (the subclass).
size_t rows() const
Number of rows.
size_t cols() const
Number of columns.
T operator()(size_t i, size_t j) const
Returns matrix element at (i, j).
Constant matrix expression.
Definition: matrix_expression.h:49
size_t rows() const
Number of rows.
Vector expression for matrix-vector multiplication.
Definition: matrix_expression.h:295
T operator()(size_t i, size_t j) const
Returns matrix element at (i, j).
Matrix expression for binary operation.
Definition: matrix_expression.h:225
size_t cols() const
Number of columns.
size_t rows() const
Number of rows.
size_t cols() const
Number of columns.
size_t size() const
Size of the vector.
Size2 size() const
Size of the matrix.
Size2 size() const
Size of the matrix.
T operator()(size_t i, size_t j) const
Returns matrix element at (i, j).
MatrixDiagonal(const E &u, bool isDiag)
T operator()(size_t i, size_t j) const
Returns matrix element at (i, j).
Definition: advection_solver2.h:18
MatrixVectorMul(const ME &m, const VE &v)
Base class for matrix expression.
Definition: matrix_expression.h:26
MatrixScalarBinaryOp(const E &u, const T &v)
Constructs a binary expression for given matrix and scalar.
Size2 size() const
Size of the matrix.
size_t rows() const
Number of rows.
size_t cols() const
Number of columns.
MatrixIdentity(size_t m)
Constructs m x m identity matrix expression.
size_t cols() const
Number of columns.
MatrixMul(const E1 &u, const E2 &v)
Matrix expression for matrix-scalar binary operation.
Definition: matrix_expression.h:261
Size2 size() const
Size of the matrix.
Matrix2x2< T > operator+(const Matrix2x2< T > &a, const Matrix2x2< T > &b)
Returns a + b (element-size).
size_t cols() const
Number of columns.
MatrixTriangular(const E &u, bool isUpper, bool isStrict)
Identity matrix expression.
Definition: matrix_expression.h:80
T operator()(size_t i, size_t j) const
Returns matrix element at (i, j).
2-D size class.
Definition: size2.h:19
size_t rows() const
Number of rows.
Triangular matrix expression.
Definition: matrix_expression.h:179
size_t cols() const
Number of columns.
size_t cols() const
Number of columns.
size_t cols() const
Number of columns.
Matrix expression for matrix-matrix multiplication.
Definition: matrix_expression.h:321
T operator()(size_t i, size_t j) const
Returns matrix element at (i, j).
Matrix2x2< T > operator/(const Matrix2x2< T > &a, T b)
Returns a' / b, where every element of matrix a' is a.
Diagonal matrix expression.
Definition: matrix_expression.h:146
size_t rows() const
Number of rows.
Matrix expression for unary operation.
Definition: matrix_expression.h:114
Matrix2x2< T > operator-(const Matrix2x2< T > &a)
Returns a matrix with opposite sign.
size_t rows() const
Number of rows.
size_t rows() const
Number of rows.
Size2 size() const
Size of the matrix.
Size2 size() const
Size of the matrix.
Size2 size() const
Size of the matrix.
Matrix2x2< T > operator*(const Matrix2x2< T > &a, T b)
Returns a * b', where every element of matrix b' is b.
size_t rows() const
Number of rows.
Size2 size() const
Size of the matrix.
T operator()(size_t i, size_t j) const
Returns matrix element at (i, j).
T operator()(size_t i, size_t j) const
Returns matrix element at (i, j).
MatrixBinaryOp(const E1 &u, const E2 &v)