Functions | |
template<class E1 , class E2 , class result_type > | |
void | dot (vector_expression< E1 > const &e1, vector_expression< E2 > const &e2, result_type &result) |
Well known dot-product r=<e1,e2>=sum_i e1_i*e2_i. More... | |
template<class M , class E1 , class E2 > | |
void | gemm (matrix_expression< E1 > const &e1, matrix_expression< E2 > const &e2, matrix_expression< M > &m, typename M::value_type alpha) |
Well known GEneral Matrix-Matrix product kernel M+=alpha*E1*E2. More... | |
template<class M , class E1 , class E2 > | |
void | gemv (matrix_expression< E1 > const &e1, vector_expression< E2 > const &e2, vector_expression< M > &m, typename M::value_type alpha) |
Well known GEneral Matrix-Vector product kernel M+=alpha*E1*e2. More... | |
template<template< class T1, class T2 > class F, class M > | |
void | assign (matrix_expression< M > &m, typename M::value_type t, row_major) |
template<template< class T1, class T2 > class F, class M > | |
void | assign (matrix_expression< M > &m, typename M::value_type t, column_major) |
template<template< class T1, class T2 > class F, class M , class Orientation , class Triangular > | |
void | assign (matrix_expression< M > &m, typename M::value_type t, packed< Orientation, Triangular >) |
template<template< class T1, class T2 > class F, class M > | |
void | assign (matrix_expression< M > &m, typename M::value_type t) |
template<class M , class E , class TagE , class TagM > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, row_major, TagE, TagM) |
template<class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, column_major, dense_random_access_iterator_tag, dense_random_access_iterator_tag) |
template<class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, column_major, dense_random_access_iterator_tag, sparse_bidirectional_iterator_tag) |
template<class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, column_major, sparse_bidirectional_iterator_tag, dense_random_access_iterator_tag) |
template<class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, column_major, sparse_bidirectional_iterator_tag, sparse_bidirectional_iterator_tag) |
template<class M , class E , class Triangular > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, packed< row_major, Triangular >, packed< row_major, Triangular >, packed_random_access_iterator_tag, packed_random_access_iterator_tag) |
template<class M , class E , class Triangular > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, packed< row_major, Triangular >, packed< column_major, Triangular >, packed_random_access_iterator_tag, packed_random_access_iterator_tag) |
template<class M , class E , class TagE , class TagM > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, unknown_orientation, TagE tagE, TagM tagM) |
template<class M , class E , class EOrientation , class TagE , class TagM > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, column_major, EOrientation, TagE tagE, TagM tagM) |
template<class M , class E , class EOrientation , class Triangular , class TagM , class TagE > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, packed< column_major, Triangular >, packed< EOrientation, Triangular >, TagM tagM, TagE tagE) |
template<class M , class E > | |
void | assign (matrix_expression< M > &m, const matrix_expression< E > &e) |
template<template< class, class > class F, class M , class E , class TagE , class TagM > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, row_major, TagM, TagE) |
template<template< class, class > class F, class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, column_major, dense_random_access_iterator_tag, dense_random_access_iterator_tag) |
template<template< class, class > class F, class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, column_major, dense_random_access_iterator_tag, sparse_bidirectional_iterator_tag) |
template<template< class, class > class F, class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, column_major, sparse_bidirectional_iterator_tag, dense_random_access_iterator_tag) |
template<template< class, class > class F, class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, column_major, sparse_bidirectional_iterator_tag t, sparse_bidirectional_iterator_tag) |
template<template< class, class > class F, class M , class E , class Triangular > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, packed< row_major, Triangular >, packed< row_major, Triangular >) |
template<template< class, class > class F, class M , class E , class Triangular > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, packed< row_major, Triangular >, packed< column_major, Triangular >) |
template<template< class, class > class F, class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, row_major) |
template<template< class, class > class F, class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, column_major) |
template<template< class, class > class F, class M , class E > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, row_major, unknown_orientation) |
template<template< class, class > class F, class M , class E , class EOrientation > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, column_major, EOrientation) |
template<template< class, class > class F, class M , class E , class EOrientation , class Triangular > | |
void | assign (matrix_expression< M > &m, matrix_expression< E > const &e, packed< column_major, Triangular >, packed< EOrientation, Triangular >) |
template<template< class, class > class F, class M , class E > | |
void | assign (matrix_expression< M > &m, const matrix_expression< E > &e) |
template<class Triangular , typename MatA > | |
std::size_t | potrf (matrix_container< MatA > &A) |
Implements the POsitive TRiangular matrix Factorisation POTRF. More... | |
template<typename MatrA , typename VectorB > | |
void | syev (matrix_expression< MatrA > &matA, vector_expression< VectorB > &eigenValues) |
Well known SYmmetric EigenValue function (SYEV). More... | |
template<typename TriangularA , typename VecB > | |
void | tpmv (matrix_expression< TriangularA > const &A, vector_expression< VecB > &b) |
Implements the Tringular Packed Matrix-Vector multiplication(TPMV) More... | |
template<bool Upper, bool Unit, typename TriangularA , typename MatB > | |
void | trmm (matrix_expression< TriangularA > const &A, matrix_expression< MatB > &B) |
Implements the TRiangular Matrix Matrix multiply. More... | |
template<bool Upper, bool Unit, typename TriangularA , typename VecB > | |
void | trmv (matrix_expression< TriangularA > const &A, vector_expression< VecB > &b) |
Implements the TRiangular Solver for Vectors. More... | |
template<bool Upper, bool Unit, typename TriangularA , typename MatB > | |
void | trsm (matrix_expression< TriangularA > const &A, matrix_expression< MatB > &B) |
Implements the TRiangular Solver for Vectors. More... | |
template<bool Upper, bool Unit, typename TriangularA , typename V > | |
void | trsv (matrix_expression< TriangularA > const &A, vector_expression< V > &b) |
Implements the TRiangular Solver for Vectors. More... | |
template<template< class T1, class T2 > class F, class V > | |
void | assign (vector_expression< V > &v, typename V::value_type t) |
template<class V , class E > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, dense_random_access_iterator_tag, dense_random_access_iterator_tag) |
template<class V , class E > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, dense_random_access_iterator_tag, packed_random_access_iterator_tag) |
template<class V , class E > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, packed_random_access_iterator_tag, packed_random_access_iterator_tag) |
template<class V , class E > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, dense_random_access_iterator_tag, sparse_bidirectional_iterator_tag) |
template<class V , class E > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, sparse_bidirectional_iterator_tag, dense_random_access_iterator_tag) |
template<class V , class E > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, sparse_bidirectional_iterator_tag, sparse_bidirectional_iterator_tag) |
template<class V , class E > | |
void | assign (vector_expression< V > &v, const vector_expression< E > &e) |
template<class V , class E , class F > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, F f, dense_random_access_iterator_tag, dense_random_access_iterator_tag) |
template<class V , class E , class F > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, F f, dense_random_access_iterator_tag, packed_random_access_iterator_tag) |
template<class V , class E , class F > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, F f, packed_random_access_iterator_tag, packed_random_access_iterator_tag) |
template<class V , class E , class F > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, F f, dense_random_access_iterator_tag, sparse_bidirectional_iterator_tag) |
template<class V , class E , class F > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, F f, sparse_bidirectional_iterator_tag tag, dense_random_access_iterator_tag) |
template<class V , class E , class F > | |
void | assign_sparse (vector_expression< V > &v, vector_expression< E > const &e, F f) |
template<class V , class E , class F > | |
void | assign (vector_expression< V > &v, vector_container< E > const &e, F f, sparse_bidirectional_iterator_tag tag, sparse_bidirectional_iterator_tag) |
template<class V , class E , class F > | |
void | assign (vector_container< V > &v, vector_expression< E > const &e, F f, sparse_bidirectional_iterator_tag tag, sparse_bidirectional_iterator_tag) |
template<class V , class E , class F > | |
void | assign (vector_container< V > &v, vector_container< E > const &e, F f, sparse_bidirectional_iterator_tag tag, sparse_bidirectional_iterator_tag) |
template<class V , class E , class F > | |
void | assign (vector_expression< V > &v, vector_expression< E > const &e, F f, sparse_bidirectional_iterator_tag tag, sparse_bidirectional_iterator_tag) |
template<template< class T1, class T2 > class F, class V , class E > | |
void | assign (vector_expression< V > &v, const vector_expression< E > &e) |
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
typename V::value_type | t | ||
) |
Definition at line 39 of file vector_assign.hpp.
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
dense_random_access_iterator_tag | , | ||
dense_random_access_iterator_tag | |||
) |
Definition at line 55 of file vector_assign.hpp.
References shark::size(), and SIZE_CHECK.
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
dense_random_access_iterator_tag | , | ||
packed_random_access_iterator_tag | |||
) |
Definition at line 66 of file vector_assign.hpp.
References shark::size(), and SIZE_CHECK.
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
packed_random_access_iterator_tag | , | ||
packed_random_access_iterator_tag | |||
) |
Definition at line 100 of file vector_assign.hpp.
References shark::size(), and SIZE_CHECK.
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
dense_random_access_iterator_tag | , | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 132 of file vector_assign.hpp.
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
sparse_bidirectional_iterator_tag | , | ||
dense_random_access_iterator_tag | |||
) |
Definition at line 147 of file vector_assign.hpp.
References RANGE_CHECK, and shark::size().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
typename M::value_type | t, | ||
row_major | |||
) |
Definition at line 162 of file matrix_assign.hpp.
Referenced by assign(), and shark::blas::divide_assign().
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
sparse_bidirectional_iterator_tag | , | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 163 of file vector_assign.hpp.
References RANGE_CHECK.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
typename M::value_type | t, | ||
column_major | |||
) |
Definition at line 174 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
const vector_expression< E > & | e | ||
) |
Definition at line 181 of file vector_assign.hpp.
References assign(), shark::size(), and SIZE_CHECK.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
typename M::value_type | t, | ||
packed< Orientation, Triangular > | |||
) |
Definition at line 188 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
F | f, | ||
dense_random_access_iterator_tag | , | ||
dense_random_access_iterator_tag | |||
) |
Definition at line 194 of file vector_assign.hpp.
References shark::size(), and SIZE_CHECK.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
typename M::value_type | t | ||
) |
Definition at line 198 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
F | f, | ||
dense_random_access_iterator_tag | , | ||
packed_random_access_iterator_tag | |||
) |
Definition at line 208 of file vector_assign.hpp.
References shark::size(), and SIZE_CHECK.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
row_major | , | ||
TagE | , | ||
TagM | |||
) |
Definition at line 213 of file matrix_assign.hpp.
References assign(), and shark::blas::row().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
column_major | , | ||
dense_random_access_iterator_tag | , | ||
dense_random_access_iterator_tag | |||
) |
Definition at line 228 of file matrix_assign.hpp.
References shark::blas::min().
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
F | f, | ||
packed_random_access_iterator_tag | , | ||
packed_random_access_iterator_tag | |||
) |
Definition at line 241 of file vector_assign.hpp.
References shark::size(), and SIZE_CHECK.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
column_major | , | ||
dense_random_access_iterator_tag | , | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 264 of file matrix_assign.hpp.
References assign(), and shark::blas::column().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
column_major | , | ||
sparse_bidirectional_iterator_tag | , | ||
dense_random_access_iterator_tag | |||
) |
Definition at line 278 of file matrix_assign.hpp.
References assign(), and shark::blas::row().
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
F | f, | ||
dense_random_access_iterator_tag | , | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 282 of file vector_assign.hpp.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
column_major | , | ||
sparse_bidirectional_iterator_tag | , | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 291 of file matrix_assign.hpp.
References shark::blas::row().
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
F | f, | ||
sparse_bidirectional_iterator_tag | tag, | ||
dense_random_access_iterator_tag | |||
) |
Definition at line 297 of file vector_assign.hpp.
References shark::size().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
packed< row_major, Triangular > | , | ||
packed< row_major, Triangular > | , | ||
packed_random_access_iterator_tag | , | ||
packed_random_access_iterator_tag | |||
) |
Definition at line 341 of file matrix_assign.hpp.
References SIZE_CHECK.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
packed< row_major, Triangular > | , | ||
packed< column_major, Triangular > | , | ||
packed_random_access_iterator_tag | , | ||
packed_random_access_iterator_tag | |||
) |
Definition at line 364 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_container< E > const & | e, | ||
F | f, | ||
sparse_bidirectional_iterator_tag | tag, | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 368 of file vector_assign.hpp.
References assign_sparse().
void shark::blas::kernels::assign | ( | vector_container< V > & | v, |
vector_expression< E > const & | e, | ||
F | f, | ||
sparse_bidirectional_iterator_tag | tag, | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 377 of file vector_assign.hpp.
References assign_sparse().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
unknown_orientation | , | ||
TagE | tagE, | ||
TagM | tagM | ||
) |
Definition at line 384 of file matrix_assign.hpp.
References shark::blas::assign().
void shark::blas::kernels::assign | ( | vector_container< V > & | v, |
vector_container< E > const & | e, | ||
F | f, | ||
sparse_bidirectional_iterator_tag | tag, | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 386 of file vector_assign.hpp.
References assign_sparse().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
column_major | , | ||
EOrientation | , | ||
TagE | tagE, | ||
TagM | tagM | ||
) |
Definition at line 395 of file matrix_assign.hpp.
References shark::blas::assign().
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
F | f, | ||
sparse_bidirectional_iterator_tag | tag, | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 400 of file vector_assign.hpp.
References assign(), and assign_sparse().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
packed< column_major, Triangular > | , | ||
packed< EOrientation, Triangular > | , | ||
TagM | tagM, | ||
TagE | tagE | ||
) |
Definition at line 408 of file matrix_assign.hpp.
References shark::blas::assign().
void shark::blas::kernels::assign | ( | vector_expression< V > & | v, |
const vector_expression< E > & | e | ||
) |
Definition at line 414 of file vector_assign.hpp.
References assign(), shark::size(), and SIZE_CHECK.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
const matrix_expression< E > & | e | ||
) |
Definition at line 423 of file matrix_assign.hpp.
References shark::blas::assign(), and SIZE_CHECK.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
row_major | , | ||
TagM | , | ||
TagE | |||
) |
Definition at line 443 of file matrix_assign.hpp.
References shark::blas::row().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
column_major | , | ||
dense_random_access_iterator_tag | , | ||
dense_random_access_iterator_tag | |||
) |
Definition at line 458 of file matrix_assign.hpp.
References shark::blas::min().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
column_major | , | ||
dense_random_access_iterator_tag | , | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 495 of file matrix_assign.hpp.
References shark::blas::column().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
column_major | , | ||
sparse_bidirectional_iterator_tag | , | ||
dense_random_access_iterator_tag | |||
) |
Definition at line 508 of file matrix_assign.hpp.
References shark::blas::row().
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
column_major | , | ||
sparse_bidirectional_iterator_tag | t, | ||
sparse_bidirectional_iterator_tag | |||
) |
Definition at line 521 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
packed< row_major, Triangular > | , | ||
packed< row_major, Triangular > | |||
) |
Definition at line 594 of file matrix_assign.hpp.
References SIZE_CHECK.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
packed< row_major, Triangular > | , | ||
packed< column_major, Triangular > | |||
) |
Definition at line 620 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
row_major | |||
) |
Definition at line 651 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
column_major | |||
) |
Definition at line 662 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
row_major | , | ||
unknown_orientation | |||
) |
Definition at line 674 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
column_major | , | ||
EOrientation | |||
) |
Definition at line 685 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
matrix_expression< E > const & | e, | ||
packed< column_major, Triangular > | , | ||
packed< EOrientation, Triangular > | |||
) |
Definition at line 701 of file matrix_assign.hpp.
void shark::blas::kernels::assign | ( | matrix_expression< M > & | m, |
const matrix_expression< E > & | e | ||
) |
Definition at line 716 of file matrix_assign.hpp.
References SIZE_CHECK.
void shark::blas::kernels::assign_sparse | ( | vector_expression< V > & | v, |
vector_expression< E > const & | e, | ||
F | f | ||
) |
void shark::blas::kernels::dot | ( | vector_expression< E1 > const & | e1, |
vector_expression< E2 > const & | e2, | ||
result_type & | result | ||
) |
Well known dot-product r=<e1,e2>=sum_i e1_i*e2_i.
If bindings are included and the vector combination allows for a specific binding to be applied, the binding is called automatically from {binding}/dot.h otherwise default/dot.h is used which is fully implemented for all dense/sparse combinations. if a combination is optimized, bindings::has_optimized_dot<E1,E2,R>::type evaluates to boost::mpl::true_ The kernels themselves are implemented in blas::bindings::dot.
Definition at line 57 of file dot.hpp.
References shark::size(), and SIZE_CHECK.
Referenced by shark::blas::inner_prod().
void shark::blas::kernels::gemm | ( | matrix_expression< E1 > const & | e1, |
matrix_expression< E2 > const & | e2, | ||
matrix_expression< M > & | m, | ||
typename M::value_type | alpha | ||
) |
Well known GEneral Matrix-Matrix product kernel M+=alpha*E1*E2.
If bindings are included and the matrix combination allow for a specific binding to be applied, the binding is called automatically from {binding}/gemm.h otherwise default/gemm.h is used which is fully implemented for all dense/sparse combinations. if a combination is optimized, bindings::has_optimized_gemm<M,E1,E2>::type evaluates to boost::mpl::true_ The kernels themselves are implemented in blas::bindings::gemm.
Definition at line 57 of file gemm.hpp.
References SIZE_CHECK.
Referenced by shark::blas::axpy_prod(), shark::blas::matrix_matrix_prod< MatA, MatB >::minus_assign_to(), and shark::blas::matrix_matrix_prod< MatA, MatB >::plus_assign_to().
void shark::blas::kernels::gemv | ( | matrix_expression< E1 > const & | e1, |
vector_expression< E2 > const & | e2, | ||
vector_expression< M > & | m, | ||
typename M::value_type | alpha | ||
) |
Well known GEneral Matrix-Vector product kernel M+=alpha*E1*e2.
If bindings are included and the matrix/vector combination allows for a specific binding to be applied, the binding is called automatically from {binding}/gemv.h otherwise default/gemv.h is used which is fully implemented for all dense/sparse combinations. if a combination is optimized, bindings::has_optimized_gemv<M,E1,E2>::type evaluates to boost::mpl::true_ The kernels themselves are implemented in blas::bindings::gemv.
Definition at line 57 of file gemv.hpp.
References shark::size(), and SIZE_CHECK.
Referenced by shark::blas::matrix_vector_prod< MatA, VecV >::minus_assign_to(), and shark::blas::matrix_vector_prod< MatA, VecV >::plus_assign_to().
std::size_t shark::blas::kernels::potrf | ( | matrix_container< MatA > & | A | ) |
Implements the POsitive TRiangular matrix Factorisation POTRF.
It is better known as the cholesky decomposition for dense matrices. The algorithm works in place and does not require additional memory.
Definition at line 61 of file potrf.hpp.
References SIZE_CHECK.
void shark::blas::kernels::syev | ( | matrix_expression< MatrA > & | matA, |
vector_expression< VectorB > & | eigenValues | ||
) |
Well known SYmmetric EigenValue function (SYEV).
A given matrix A is decomposed as A=QDQ^T where Q is an orthogonal (or unitary) matrix with QQ^T=Q^TQ=I and D are the eigenvalue of A. As A is symmetric, only the lower part of it is accessed for reading. The wholee matrix will in the end contain the eigenvectors of A and thus A is replaced by Q. Additionally the eigenvalues are stored in the second argument.
Definition at line 52 of file syev.hpp.
Referenced by shark::blas::eigensymm().
void shark::blas::kernels::tpmv | ( | matrix_expression< TriangularA > const & | A, |
vector_expression< VecB > & | b | ||
) |
Implements the Tringular Packed Matrix-Vector multiplication(TPMV)
It computes b=A*b where A is a lower or upper packed triangular matrix.
Definition at line 54 of file tpmv.hpp.
References shark::size(), and SIZE_CHECK.
void shark::blas::kernels::trmm | ( | matrix_expression< TriangularA > const & | A, |
matrix_expression< MatB > & | B | ||
) |
Implements the TRiangular Matrix Matrix multiply.
It computes B=A*B in place, where A is a triangular matrix and B a dense matrix
Definition at line 54 of file trmm.hpp.
References SIZE_CHECK.
void shark::blas::kernels::trmv | ( | matrix_expression< TriangularA > const & | A, |
vector_expression< VecB > & | b | ||
) |
Implements the TRiangular Solver for Vectors.
It solves Systems of the form Ax = b where A is a square lower or upper triangular matrix. It can optionally assume that the diagonal is 1 and won't access the diagonal elements.
Definition at line 55 of file trmv.hpp.
References shark::size(), and SIZE_CHECK.
void shark::blas::kernels::trsm | ( | matrix_expression< TriangularA > const & | A, |
matrix_expression< MatB > & | B | ||
) |
Implements the TRiangular Solver for Vectors.
It solves Systems of the form Ax = b where A is a square lower or upper triangular matrix. It can optionally assume that the diagonal is 1 and won't access the diagonal elements.
Definition at line 55 of file trsm.hpp.
References SIZE_CHECK.
void shark::blas::kernels::trsv | ( | matrix_expression< TriangularA > const & | A, |
vector_expression< V > & | b | ||
) |
Implements the TRiangular Solver for Vectors.
It solves Systems of the form Ax = b where A is a square lower or upper triangular matrix. It can optionally assume that the diagonal is 1 and won't access the diagonal elements.
Definition at line 55 of file trsv.hpp.
References shark::size(), and SIZE_CHECK.