35#include <blitz/meta/metaprog.h>
39#include <blitz/meta/dot.h>
40#include <blitz/meta/product.h>
41#include <blitz/meta/sum.h>
45template<
typename T_numtype1,
typename T_numtype2,
int N_length>
50 return _bz_meta_vectorDot<N_length, 0>::f(
a,
b);
53template<
typename T_numtype1,
int N_length>
57 return _bz_meta_vectorProduct<N_length, 0>::f(
a);
60template<
typename T_numtype,
int N_length>
64 return _bz_meta_vectorSum<N_length, 0>::f(
a);
69template<
typename T_ret>
73 template<
typename T_numtype1,
typename T_numtype2,
int N_length>
78 return _bz_meta_vectorDotRet<N_length, 0, T_ret>::f(
a,
b);
81template<
typename T_numtype1,
int N_length>
85 return _bz_meta_vectorProductRet<N_length, 0, T_ret>::f(
a);
88template<
typename T_numtype,
int N_length>
92 return _bz_meta_vectorSumRet<N_length, 0, T_ret>::f(
a);
The TinyVector class is a one-dimensional, fixed length vector that implements the blitz expression t...
Definition tinyvec2.h:73
Definition tvecglobs.h:70
static T_ret dot(const TinyVector< T_numtype1, N_length > &a, const TinyVector< T_numtype2, N_length > &b)
Definition tvecglobs.h:75
static T_ret sum(const TinyVector< T_numtype, N_length > &a)
Definition tvecglobs.h:90
static T_ret product(const TinyVector< T_numtype1, N_length > &a)
Definition tvecglobs.h:83
Definition array-impl.h:66
N_length const TinyVector< T_numtype2, N_length > & b
Definition tvecglobs.h:49
BZ_PROMOTE(T_numtype1, T_numtype2) dot(const TinyVector< T_numtype1
N_length & a
Definition tvecglobs.h:47
#define BZ_SUMTYPE(X)
Definition numtrait.h:42