SourceForge Logo Tiny Vector Matrix library using Expression Templates Sourceforge Project Page

Functions
Global Binary Operators
Global Operators
Collaboration diagram for Global Binary Operators:

Functions

template<class T , std::size_t Rows, std::size_t Cols>
std::ostream & tvmet::operator<< (std::ostream &os, const Matrix< T, Rows, Cols > &rhs) TVMET_CXX_ALWAYS_INLINE
 Overload operator for i/o.
template<class E1 , std::size_t Rows1, std::size_t Cols1, class T2 , std::size_t Cols2>
XprMatrix< XprMMProduct
< XprMatrix< E1, Rows1, Cols1 >
, Rows1, Cols1,
MatrixConstReference< T2,
Cols1, Cols2 >, Cols2 >, Rows1,
Cols2 > 
tvmet::operator* (const XprMatrix< E1, Rows1, Cols1 > &lhs, const Matrix< T2, Cols1, Cols2 > &rhs) TVMET_CXX_ALWAYS_INLINE
 Evaluate the product of XprMatrix and Matrix.
template<class T1 , std::size_t Rows1, std::size_t Cols1, class E2 , std::size_t Cols2>
XprMatrix< XprMMProduct
< MatrixConstReference< T1,
Rows1, Cols1 >, Rows1, Cols1,
XprMatrix< E2, Cols1, Cols2 >
, Cols2 >, Rows1, Cols2 > 
tvmet::operator* (const Matrix< T1, Rows1, Cols1 > &lhs, const XprMatrix< E2, Cols1, Cols2 > &rhs) TVMET_CXX_ALWAYS_INLINE
 Evaluate the product of Matrix and XprMatrix.
template<class T1 , std::size_t Rows, std::size_t Cols, class T2 >
XprVector< XprMVProduct
< MatrixConstReference< T1,
Rows, Cols >, Rows, Cols,
VectorConstReference< T2, Cols >
>, Rows > 
tvmet::operator* (const Matrix< T1, Rows, Cols > &lhs, const Vector< T2, Cols > &rhs) TVMET_CXX_ALWAYS_INLINE
 multiply a Matrix with a Vector.
template<class T1 , class E2 , std::size_t Rows, std::size_t Cols>
XprVector< XprMVProduct
< MatrixConstReference< T1,
Rows, Cols >, Rows, Cols,
XprVector< E2, Cols > >, Rows > 
tvmet::operator* (const Matrix< T1, Rows, Cols > &lhs, const XprVector< E2, Cols > &rhs) TVMET_CXX_ALWAYS_INLINE
 Function for the matrix-vector-product.
template<class E1 , class T2 , std::size_t Rows, std::size_t Cols>
XprVector< XprMVProduct
< XprMatrix< E1, Rows, Cols >
, Rows, Cols,
VectorConstReference< T2, Cols >
>, Rows > 
tvmet::operator* (const XprMatrix< E1, Rows, Cols > &lhs, const Vector< T2, Cols > &rhs) TVMET_CXX_ALWAYS_INLINE
 Compute the product of an XprMatrix with a Vector.
template<class E >
std::ostream & tvmet::operator<< (std::ostream &os, const TvmetBase< E > &e)
 overloaded ostream operator using static polymorphic.
template<class E1 , std::size_t Rows1, std::size_t Cols1, class E2 , std::size_t Cols2>
XprMatrix< XprMMProduct
< XprMatrix< E1, Rows1, Cols1 >
, Rows1, Cols1, XprMatrix< E2,
Cols1, Cols2 >, Cols2 >, Rows1,
Cols2 > 
tvmet::operator* (const XprMatrix< E1, Rows1, Cols1 > &lhs, const XprMatrix< E2, Cols1, Cols2 > &rhs) TVMET_CXX_ALWAYS_INLINE
 Evaluate the product of two XprMatrix.
template<class E1 , std::size_t Rows, std::size_t Cols, class E2 >
XprVector< XprMVProduct
< XprMatrix< E1, Rows, Cols >
, Rows, Cols, XprVector< E2,
Cols > >, Rows > 
tvmet::operator* (const XprMatrix< E1, Rows, Cols > &lhs, const XprVector< E2, Cols > &rhs) TVMET_CXX_ALWAYS_INLINE
 Evaluate the product of XprMatrix and XprVector.

Function Documentation

template<class E1 , std::size_t Rows1, std::size_t Cols1, class T2 , std::size_t Cols2>
XprMatrix< XprMMProduct< XprMatrix< E1, Rows1, Cols1 >, Rows1, Cols1, MatrixConstReference< T2, Cols1, Cols2 >, Cols2 >, Rows1, Cols2 > tvmet::operator* ( const XprMatrix< E1, Rows1, Cols1 > &  lhs,
const Matrix< T2, Cols1, Cols2 > &  rhs 
) [inline]
template<class E1 , std::size_t Rows, std::size_t Cols, class E2 >
XprVector< XprMVProduct< XprMatrix< E1, Rows, Cols >, Rows, Cols, XprVector< E2, Cols > >, Rows > tvmet::operator* ( const XprMatrix< E1, Rows, Cols > &  lhs,
const XprVector< E2, Cols > &  rhs 
) [inline]

Evaluate the product of XprMatrix and XprVector.

See also:
prod(XprMatrix<E1, Rows, Cols> lhs, XprVector<E2, Cols> rhs)

References tvmet::prod().

template<class T1 , std::size_t Rows, std::size_t Cols, class T2 >
XprVector< XprMVProduct< MatrixConstReference< T1, Rows, Cols >, Rows, Cols, VectorConstReference< T2, Cols > >, Rows > tvmet::operator* ( const Matrix< T1, Rows, Cols > &  lhs,
const Vector< T2, Cols > &  rhs 
) [inline]

multiply a Matrix with a Vector.

Note:
The length of the Vector has to be equal to the number of Columns.
See also:
prod(const Matrix<T1, Rows, Cols>& m, const Vector<T2, Cols>& v)

References tvmet::prod().

template<class E1 , std::size_t Rows1, std::size_t Cols1, class E2 , std::size_t Cols2>
tvmet::operator* ( const XprMatrix< E1, Rows1, Cols1 > &  lhs,
const XprMatrix< E2, Cols1, Cols2 > &  rhs 
) [inline]

Evaluate the product of two XprMatrix.

Multliply operator for two XprMatrix.

See also:
prod(XprMatrix<E1, Rows1, Cols1> lhs, XprMatrix<E2, Cols1, Cols2> rhs)

References tvmet::prod().

template<class E1 , class T2 , std::size_t Rows, std::size_t Cols>
XprVector< XprMVProduct< XprMatrix< E1, Rows, Cols >, Rows, Cols, VectorConstReference< T2, Cols > >, Rows > tvmet::operator* ( const XprMatrix< E1, Rows, Cols > &  lhs,
const Vector< T2, Cols > &  rhs 
) [inline]

Compute the product of an XprMatrix with a Vector.

See also:
prod(const XprMatrix<E, Rows, Cols>& lhs, const Vector<T, Cols>& rhs)

References tvmet::prod().

template<class T1 , class E2 , std::size_t Rows, std::size_t Cols>
XprVector< XprMVProduct< MatrixConstReference< T1, Rows, Cols >, Rows, Cols, XprVector< E2, Cols > >, Rows > tvmet::operator* ( const Matrix< T1, Rows, Cols > &  lhs,
const XprVector< E2, Cols > &  rhs 
) [inline]

Function for the matrix-vector-product.

See also:
prod(const Matrix<T, Rows, Cols>& lhs, const XprVector<E, Cols>& rhs)

References tvmet::prod().

template<class T1 , std::size_t Rows1, std::size_t Cols1, class E2 , std::size_t Cols2>
XprMatrix< XprMMProduct< MatrixConstReference< T1, Rows1, Cols1 >, Rows1, Cols1, XprMatrix< E2, Cols1, Cols2 >, Cols2 >, Rows1, Cols2 > tvmet::operator* ( const Matrix< T1, Rows1, Cols1 > &  lhs,
const XprMatrix< E2, Cols1, Cols2 > &  rhs 
) [inline]

Evaluate the product of Matrix and XprMatrix.

See also:
prod(const Matrix<T, Rows1, Cols1>& lhs, const XprMatrix<E, Cols1, Cols2>& rhs)

References tvmet::prod().

template<class T , std::size_t Rows, std::size_t Cols>
std::ostream & tvmet::operator<< ( std::ostream &  os,
const Matrix< T, Rows, Cols > &  rhs 
) [inline]

Overload operator for i/o.

template<class E >
tvmet::operator<< ( std::ostream &  os,
const TvmetBase< E > &  e 
) [inline]

overloaded ostream operator using static polymorphic.

 All Classes Namespaces Files Functions Variables Typedefs Enumerator Friends Defines

Author: