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

tvmet::meta::gemmt< Rows1, Cols1, Cols2, K > Class Template Reference

#include <tvmet/meta/Gemmt.h>

List of all members.


Detailed Description

template<std::size_t Rows1, std::size_t Cols1, std::size_t Cols2, std::size_t K>
class tvmet::meta::gemmt< Rows1, Cols1, Cols2, K >

Meta class for product matrix-transpose(matrix) operations.

using formula

\[ M_1\,M_2^{T} \]

Note:
The rows of matrix 2 have to be equal to cols of matrix 1. The result is a rows1 * cols2 matrix.


Static Public Member Functions

template<class E1, class E2>
static PromoteTraits< typename
E1::value_type, typename E2::value_type
>::value_type 
prod (const E1 &lhs, const E2 &rhs, std::size_t i, std::size_t j)

Private Types

enum  { doIt = (K != Cols2 - 1) }

Private Member Functions

 gemmt ()
 gemmt (const gemmt &)
gemmtoperator= (const gemmt &)


Member Enumeration Documentation

template<std::size_t Rows1, std::size_t Cols1, std::size_t Cols2, std::size_t K>
anonymous enum [private]

Enumerator:
doIt  recursive counter


Constructor & Destructor Documentation

template<std::size_t Rows1, std::size_t Cols1, std::size_t Cols2, std::size_t K>
tvmet::meta::gemmt< Rows1, Cols1, Cols2, K >::gemmt (  )  [private]

template<std::size_t Rows1, std::size_t Cols1, std::size_t Cols2, std::size_t K>
tvmet::meta::gemmt< Rows1, Cols1, Cols2, K >::gemmt ( const gemmt< Rows1, Cols1, Cols2, K > &   )  [private]


Member Function Documentation

template<std::size_t Rows1, std::size_t Cols1, std::size_t Cols2, std::size_t K>
gemmt& tvmet::meta::gemmt< Rows1, Cols1, Cols2, K >::operator= ( const gemmt< Rows1, Cols1, Cols2, K > &   )  [private]

template<std::size_t Rows1, std::size_t Cols1, std::size_t Cols2, std::size_t K>
template<class E1, class E2>
static PromoteTraits< typename E1::value_type, typename E2::value_type >::value_type tvmet::meta::gemmt< Rows1, Cols1, Cols2, K >::prod ( const E1 &  lhs,
const E2 &  rhs,
std::size_t  i,
std::size_t  j 
) [inline, static]


Author: