【发布时间】:2014-06-24 23:41:43
【问题描述】:
根据this page应该有ublas中提供的sum函数,但是我无法编译如下:
boost::numeric::ublas::matrix<double> mymatrix;
std::cout << boost::numeric::ublas::sum(mymatrix);
错误是:
testcpp:146:144:错误:没有匹配的函数调用 'sum(boost::numeric::ublas::matrix&)'
我是#includeing:
#include <boost/numeric/ublas/matrix.hpp>
#include <boost/numeric/ublas/matrix_proxy.hpp>
我错过了包含,还是我误解了文档?我将如何实现这一点(我正在尝试总结矩阵的所有元素并生成单个 double)?
【问题讨论】:
-
那个一元和是一个向量,而不是一个矩阵表达式。平凡的同构 M_m,n ≅ R**{m*n} 似乎被排除在 ansatz 之外。不再确定可见性,但我认为您可以使用底层(平面)容器。然后你可以使用例如std::partial_sum 关于那个。