本文整理汇总了C++中viennacl::matrix_expression::size1方法的典型用法代码示例。如果您正苦于以下问题:C++ matrix_expression::size1方法的具体用法?C++ matrix_expression::size1怎么用?C++ matrix_expression::size1使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类viennacl::matrix_expression
的用法示例。
在下文中一共展示了matrix_expression::size1方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: memory_exception
typename viennacl::enable_if< viennacl::is_any_sparse_matrix<SparseMatrixType>::value>::type
prod_impl(const SparseMatrixType & sp_mat,
const viennacl::matrix_expression<const viennacl::matrix_base<ScalarType>,
const viennacl::matrix_base<ScalarType>,
viennacl::op_trans>& d_mat,
viennacl::matrix_base<ScalarType> & result)
{
assert( (sp_mat.size1() == result.size1()) && bool("Size check failed for compressed matrix - dense matrix product: size1(sp_mat) != size1(result)"));
assert( (sp_mat.size2() == d_mat.size1()) && bool("Size check failed for compressed matrix - dense matrix product: size2(sp_mat) != size1(d_mat)"));
switch (viennacl::traits::handle(sp_mat).get_active_handle_id())
{
case viennacl::MAIN_MEMORY:
viennacl::linalg::host_based::prod_impl(sp_mat, d_mat, result);
break;
#ifdef VIENNACL_WITH_OPENCL
case viennacl::OPENCL_MEMORY:
viennacl::linalg::opencl::prod_impl(sp_mat, d_mat, result);
break;
#endif
#ifdef VIENNACL_WITH_CUDA
case viennacl::CUDA_MEMORY:
viennacl::linalg::cuda::prod_impl(sp_mat, d_mat, result);
break;
#endif
case viennacl::MEMORY_NOT_INITIALIZED:
throw memory_exception("not initialised!");
default:
throw memory_exception("not implemented");
}
}