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

Namespaces | Defines | Functions
include/tvmet/MatrixBinaryFunctions.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  tvmet
 

The namespace for the Tiny Vector Matrix using Expression Templates Libary.


Defines

#define TVMET_DECLARE_MACRO(NAME)
#define TVMET_DECLARE_MACRO(NAME, TP)
#define TVMET_IMPLEMENT_MACRO(NAME)
#define TVMET_IMPLEMENT_MACRO(NAME, TP)

Functions

template<class T , std::size_t Rows, std::size_t Cols>
XprMatrix< XprBinOp< Fcnl_pow
< T, std::complex< T >
>, MatrixConstReference< T,
Rows, Cols >, XprLiteral
< std::complex< T > > >, Rows,
Cols > 
tvmet::pow (const Matrix< T, Rows, Cols > &lhs, const std::complex< T > &rhs) TVMET_CXX_ALWAYS_INLINE
 power function on Matrix and std::complex<T>.
template<class T , std::size_t Rows, std::size_t Cols>
XprMatrix< XprBinOp< Fcnl_pow
< std::complex< T >
, std::complex< T >
>, MatrixConstReference
< std::complex< T >, Rows,
Cols >, XprLiteral
< std::complex< T > > >, Rows,
Cols > 
tvmet::pow (const Matrix< std::complex< T >, Rows, Cols > &lhs, const std::complex< T > &rhs) TVMET_CXX_ALWAYS_INLINE
template<class T , std::size_t Rows, std::size_t Cols>
XprMatrix< XprBinOp< Fcnl_pow
< std::complex< T >, T >
, MatrixConstReference
< std::complex< T >, Rows,
Cols >, XprLiteral< T >
>, Rows, Cols > 
tvmet::pow (const Matrix< std::complex< T >, Rows, Cols > &lhs, const T &rhs) TVMET_CXX_ALWAYS_INLINE
template<class T , std::size_t Rows, std::size_t Cols>
XprMatrix< XprBinOp< Fcnl_pow
< std::complex< T >, int >
, MatrixConstReference
< std::complex< T >, Rows,
Cols >, XprLiteral< int >
>, Rows, Cols > 
tvmet::pow (const Matrix< std::complex< T >, Rows, Cols > &lhs, int rhs) TVMET_CXX_ALWAYS_INLINE
template<class T , std::size_t Rows, std::size_t Cols>
XprMatrix< XprBinOp
< Fcnl_polar< T, T >
, MatrixConstReference< T,
Rows, Cols >, XprLiteral< T >
>, Rows, Cols > 
tvmet::polar (const Matrix< T, Rows, Cols > &lhs, const T &rhs) TVMET_CXX_ALWAYS_INLINE

Define Documentation

#define TVMET_DECLARE_MACRO (   NAME)
#define TVMET_DECLARE_MACRO (   NAME,
  TP 
)
Value:
template<class T, std::size_t Rows, std::size_t Cols>     \
XprMatrix<                \
  XprBinOp<               \
    Fcnl_##NAME<T, TP >,            \
    MatrixConstReference<T, Rows, Cols>,        \
    XprLiteral< TP >              \
  >,                  \
  Rows, Cols                \
>                 \
NAME(const Matrix<T, Rows, Cols>& lhs, TP rhs) TVMET_CXX_ALWAYS_INLINE;
#define TVMET_IMPLEMENT_MACRO (   NAME)
#define TVMET_IMPLEMENT_MACRO (   NAME,
  TP 
)
Value:
template<class T, std::size_t Rows, std::size_t Cols>     \
inline                  \
XprMatrix<                \
  XprBinOp<               \
    Fcnl_##NAME<T, TP >,            \
    MatrixConstReference<T, Rows, Cols>,        \
    XprLiteral< TP >              \
  >,                  \
  Rows, Cols                \
>                 \
NAME(const Matrix<T, Rows, Cols>& lhs, TP rhs) {      \
  typedef XprBinOp<             \
    Fcnl_##NAME<T, TP >,            \
    MatrixConstReference<T, Rows, Cols>,        \
    XprLiteral< TP >              \
  >             expr_type;  \
  return XprMatrix<expr_type, Rows, Cols>(        \
    expr_type(lhs.const_ref(), XprLiteral< TP >(rhs)));     \
}
 All Classes Namespaces Files Functions Variables Typedefs Enumerator Friends Defines

Author: