ROOT
6.07/01
Reference Guide
|
These function apply to matrices (and also Matrix expression) and can return a matrix expression of a particular defined type, like in the matrix multiplication or a vector, like in the matrix-vector product or a scalar like in the Similarity vector-matrix product.
Functions | |
template<class T , unsigned int D, unsigned int D2, class R1 , class R2 > | |
Expr< BinaryOp< AddOp< T > , SMatrix< T, D, D2, R1 > , SMatrix< T, D, D2, R2 >, T > , T, D, D2, typename AddPolicy < T, D, D2, R1, R2 >::RepType > | ROOT::Math::operator+ (const SMatrix< T, D, D2, R1 > &lhs, const SMatrix< T, D, D2, R2 > &rhs) |
Addition of two matrices C = A+B returning a matrix expression. More... | |
template<class A , class T , unsigned int D, unsigned int D2, class R > | |
Expr< BinaryOpCopyR< AddOp< T > , SMatrix< T, D, D2, R > , Constant< A >, T >, T, D, D2, R > | ROOT::Math::operator+ (const SMatrix< T, D, D2, R > &lhs, const A &rhs) |
Addition element by element of matrix and a scalar C(i,j) = A(i,j) + s returning a matrix expression. More... | |
template<class A , class T , unsigned int D, unsigned int D2, class R > | |
Expr< BinaryOpCopyL< AddOp< T > , Constant< A >, SMatrix< T, D, D2, R >, T >, T, D, D2, R > | ROOT::Math::operator+ (const A &lhs, const SMatrix< T, D, D2, R > &rhs) |
Addition element by element of matrix and a scalar C(i,j) = s + A(i,j) returning a matrix expression. More... | |
template<class T , unsigned int D, unsigned int D2, class R1 , class R2 > | |
Expr< BinaryOp< MinOp< T > , SMatrix< T, D, D2, R1 > , SMatrix< T, D, D2, R2 >, T > , T, D, D2, typename AddPolicy < T, D, D2, R1, R2 >::RepType > | ROOT::Math::operator- (const SMatrix< T, D, D2, R1 > &lhs, const SMatrix< T, D, D2, R2 > &rhs) |
Subtraction of two matrices C = A-B returning a matrix expression. More... | |
template<class A , class T , unsigned int D, unsigned int D2, class R > | |
Expr< BinaryOpCopyR< MinOp< T > , SMatrix< T, D, D2, R > , Constant< A >, T >, T, D, D2, R > | ROOT::Math::operator- (const SMatrix< T, D, D2, R > &lhs, const A &rhs) |
Subtraction of a scalar and a matrix (element wise) B(i,j) = A(i,j) - s returning a matrix expression. More... | |
template<class A , class T , unsigned int D, unsigned int D2, class R > | |
Expr< BinaryOpCopyL< MinOp< T > , Constant< A >, SMatrix< T, D, D2, R >, T >, T, D, D2, R > | ROOT::Math::operator- (const A &lhs, const SMatrix< T, D, D2, R > &rhs) |
Subtraction of a scalar and a matrix (element wise) B(i,j) = s - A(i,j) returning a matrix expression. More... | |
template<class T , unsigned int D, unsigned int D2, class R1 , class R2 > | |
Expr< BinaryOp< MulOp< T > , SMatrix< T, D, D2, R1 > , SMatrix< T, D, D2, R2 >, T > , T, D, D2, typename AddPolicy < T, D, D2, R1, R2 >::RepType > | ROOT::Math::Times (const SMatrix< T, D, D2, R1 > &lhs, const SMatrix< T, D, D2, R2 > &rhs) |
Element by element matrix multiplication C(i,j) = A(i,j)*B(i,j) returning a matrix expression. More... | |
template<class A , class T , unsigned int D, unsigned int D2, class R > | |
Expr< BinaryOpCopyR< MulOp< T > , SMatrix< T, D, D2, R > , Constant< A >, T >, T, D, D2, R > | ROOT::Math::operator* (const SMatrix< T, D, D2, R > &lhs, const A &rhs) |
Multiplication (element wise) of a matrix and a scalar, B(i,j) = A(i,j) * s returning a matrix expression. More... | |
template<class A , class T , unsigned int D, unsigned int D2, class R > | |
Expr< BinaryOpCopyL< MulOp< T > , Constant< A >, SMatrix< T, D, D2, R >, T >, T, D, D2, R > | ROOT::Math::operator* (const A &lhs, const SMatrix< T, D, D2, R > &rhs) |
Multiplication (element wise) of a matrix and a scalar, B(i,j) = s * A(i,j) returning a matrix expression. More... | |
template<class T , unsigned int D, unsigned int D2, class R1 , class R2 > | |
Expr< BinaryOp< DivOp< T > , SMatrix< T, D, D2, R1 > , SMatrix< T, D, D2, R2 >, T > , T, D, D2, typename AddPolicy < T, D, D2, R1, R2 >::RepType > | ROOT::Math::Div (const SMatrix< T, D, D2, R1 > &lhs, const SMatrix< T, D, D2, R2 > &rhs) |
Division (element wise) of two matrices of the same dimensions: C(i,j) = A(i,j) / B(i,j) returning a matrix expression. More... | |
template<class A , class T , unsigned int D, unsigned int D2, class R > | |
Expr< BinaryOpCopyR< DivOp< T > , SMatrix< T, D, D2, R > , Constant< A >, T >, T, D, D2, R > | ROOT::Math::operator/ (const SMatrix< T, D, D2, R > &lhs, const A &rhs) |
Division (element wise) of a matrix and a scalar, B(i,j) = A(i,j) / s returning a matrix expression. More... | |
template<class A , class T , unsigned int D, unsigned int D2, class R > | |
Expr< BinaryOpCopyL< DivOp< T > , Constant< A >, SMatrix< T, D, D2, R >, T >, T, D, D2, R > | ROOT::Math::operator/ (const A &lhs, const SMatrix< T, D, D2, R > &rhs) |
Division (element wise) of a matrix and a scalar, B(i,j) = s / A(i,j) returning a matrix expression. More... | |
template<class T , unsigned int D1, unsigned int D2, class R > | |
VecExpr< VectorMatrixRowOp < SMatrix< T, D1, D2, R > , SVector< T, D2 >, D2 >, T, D1 > | ROOT::Math::operator* (const SMatrix< T, D1, D2, R > &lhs, const SVector< T, D2 > &rhs) |
Matrix * Vector multiplication \( a(i) = \sum_{j} M(i,j) * b(j) \) returning a vector expression. More... | |
template<class T , unsigned int D1, unsigned int D, unsigned int D2, class R1 , class R2 > | |
Expr< MatrixMulOp< SMatrix< T, D1, D, R1 >, SMatrix< T, D, D2, R2 >, T, D >, T, D1, D2, typename MultPolicy< T, R1, R2 > ::RepType > | ROOT::Math::operator* (const SMatrix< T, D1, D, R1 > &lhs, const SMatrix< T, D, D2, R2 > &rhs) |
Matrix * Matrix multiplication , \( C(i,j) = \sum_{k} A(i,k) * B(k,j)\) returning a matrix expression. More... | |
template<class T , unsigned int D1, unsigned int D2, class R > | |
Expr< TransposeOp< SMatrix< T, D1, D2, R >, T, D1, D2 >, T, D2, D1, typename TranspPolicy < T, D1, D2, R >::RepType > | ROOT::Math::Transpose (const SMatrix< T, D1, D2, R > &rhs) |
Matrix Transpose B(i,j) = A(j,i) returning a matrix expression. More... | |
template<class T , unsigned int D, class R > | |
T | ROOT::Math::Similarity (const SMatrix< T, D, D, R > &lhs, const SVector< T, D > &rhs) |
Similarity Vector - Matrix Product: v^T * A * v returning a scalar value of type T \( s = \sum_{i,j} v(i) * A(i,j) * v(j)\). More... | |
template<class T , unsigned int D1, unsigned int D2, class R > | |
SMatrix< T, D1, D1, MatRepSym < T, D1 > > | ROOT::Math::Similarity (const SMatrix< T, D1, D2, R > &lhs, const SMatrix< T, D2, D2, MatRepSym< T, D2 > > &rhs) |
Similarity Matrix Product : B = U * A * U^T for A symmetric returning a symmetric matrix expression: \( B(i,j) = \sum_{k,l} U(i,k) * A(k,l) * U(j,l) \). More... | |
template<class T , unsigned int D1, unsigned int D2, class R > | |
SMatrix< T, D2, D2, MatRepSym < T, D2 > > | ROOT::Math::SimilarityT (const SMatrix< T, D1, D2, R > &lhs, const SMatrix< T, D1, D1, MatRepSym< T, D1 > > &rhs) |
Transpose Similarity Matrix Product : B = U^T * A * U for A symmetric returning a symmetric matrix expression: \( B(i,j) = \sum_{k,l} U(k,i) * A(k,l) * U(l,j) \). More... | |
template<class T , unsigned int D, unsigned int D2, class R > | |
Expr< UnaryOp< Minus< T > , SMatrix< T, D, D2, R >, T > , T, D, D2, R > | ROOT::Math::operator- (const SMatrix< T, D, D2, R > &rhs) |
Unary - operator B = - A returning a matrix expression. More... | |
template<class T , unsigned int D, unsigned int D2, class R > | |
Expr< UnaryOp< Fabs< T > , SMatrix< T, D, D2, R >, T > , T, D, D2, R > | ROOT::Math::fabs (const SMatrix< T, D, D2, R > &rhs) |
abs of a matrix m2(i,j) = | m1(i,j) | returning a matrix epression More... | |
template<class T , unsigned int D, unsigned int D2, class R > | |
Expr< UnaryOp< Sqr< T > , SMatrix< T, D, D2, R >, T > , T, D, D2, R > | ROOT::Math::sqr (const SMatrix< T, D, D2, R > &rhs) |
square of a matrix B(i,j) = A(i,j)*A(i,j) returning a matrix expression More... | |
template<class T , unsigned int D, unsigned int D2, class R > | |
Expr< UnaryOp< Sqrt< T > , SMatrix< T, D, D2, R >, T > , T, D, D2, R > | ROOT::Math::sqrt (const SMatrix< T, D, D2, R > &rhs) |
square root of a matrix (element by element) m2(i,j) = sqrt ( m1(i,j) ) returning a matrix expression More... | |
|
inline |
Division (element wise) of two matrices of the same dimensions: C(i,j) = A(i,j) / B(i,j) returning a matrix expression.
Definition at line 897 of file BinaryOperators.h.
Referenced by test21().
|
inline |
abs of a matrix m2(i,j) = | m1(i,j) | returning a matrix epression
Definition at line 180 of file UnaryOperators.h.
|
inline |
Matrix * Vector multiplication \( a(i) = \sum_{j} M(i,j) * b(j) \) returning a vector expression.
Definition at line 219 of file MatrixFunctions.h.
|
inline |
Matrix * Matrix multiplication , \( C(i,j) = \sum_{k} A(i,k) * B(k,j)\) returning a matrix expression.
Definition at line 394 of file MatrixFunctions.h.
|
inline |
Multiplication (element wise) of a matrix and a scalar, B(i,j) = A(i,j) * s returning a matrix expression.
Definition at line 708 of file BinaryOperators.h.
|
inline |
Multiplication (element wise) of a matrix and a scalar, B(i,j) = s * A(i,j) returning a matrix expression.
Definition at line 726 of file BinaryOperators.h.
|
inline |
Addition of two matrices C = A+B returning a matrix expression.
Definition at line 176 of file BinaryOperators.h.
|
inline |
Addition element by element of matrix and a scalar C(i,j) = A(i,j) + s returning a matrix expression.
Definition at line 230 of file BinaryOperators.h.
|
inline |
Addition element by element of matrix and a scalar C(i,j) = s + A(i,j) returning a matrix expression.
Definition at line 247 of file BinaryOperators.h.
|
inline |
Unary - operator B = - A returning a matrix expression.
Definition at line 105 of file UnaryOperators.h.
|
inline |
Subtraction of two matrices C = A-B returning a matrix expression.
Definition at line 420 of file BinaryOperators.h.
|
inline |
Subtraction of a scalar and a matrix (element wise) B(i,j) = A(i,j) - s returning a matrix expression.
Definition at line 474 of file BinaryOperators.h.
|
inline |
Subtraction of a scalar and a matrix (element wise) B(i,j) = s - A(i,j) returning a matrix expression.
Definition at line 492 of file BinaryOperators.h.
|
inline |
Division (element wise) of a matrix and a scalar, B(i,j) = A(i,j) / s returning a matrix expression.
Definition at line 951 of file BinaryOperators.h.
|
inline |
Division (element wise) of a matrix and a scalar, B(i,j) = s / A(i,j) returning a matrix expression.
Definition at line 969 of file BinaryOperators.h.
|
inline |
Similarity Vector - Matrix Product: v^T * A * v returning a scalar value of type T \( s = \sum_{i,j} v(i) * A(i,j) * v(j)\).
Definition at line 671 of file MatrixFunctions.h.
Referenced by test4(), test_smatrix_sym_kalman(), and testInnerProd_S().
|
inline |
Similarity Matrix Product : B = U * A * U^T for A symmetric returning a symmetric matrix expression: \( B(i,j) = \sum_{k,l} U(i,k) * A(k,l) * U(j,l) \).
Definition at line 744 of file MatrixFunctions.h.
|
inline |
Transpose Similarity Matrix Product : B = U^T * A * U for A symmetric returning a symmetric matrix expression: \( B(i,j) = \sum_{k,l} U(k,i) * A(k,l) * U(l,j) \).
Definition at line 794 of file MatrixFunctions.h.
Referenced by test_smatrix_sym_kalman(), and testATBA_S2().
|
inline |
square of a matrix B(i,j) = A(i,j)*A(i,j) returning a matrix expression
Definition at line 255 of file UnaryOperators.h.
|
inline |
square root of a matrix (element by element) m2(i,j) = sqrt ( m1(i,j) ) returning a matrix expression
Definition at line 329 of file UnaryOperators.h.
|
inline |
Element by element matrix multiplication C(i,j) = A(i,j)*B(i,j) returning a matrix expression.
This is not a matrix-matrix multiplication and works only for matrices of the same dimensions.
Definition at line 654 of file BinaryOperators.h.
|
inline |
Matrix Transpose B(i,j) = A(j,i) returning a matrix expression.
Definition at line 546 of file MatrixFunctions.h.
Referenced by ROOT::Math::Similarity(), ROOT::Math::SimilarityT(), test10(), test12(), test14(), test16(), test24(), test_smatrix_kalman(), test_smatrix_sym_kalman(), testATBA_S(), testMT_S(), TMatrixT< Element >::TMatrixT(), TMatrixTSparse< Element >::TMatrixTSparse(), and TMatrixTSym< Element >::TMatrixTSym().