使用uBLAS从C ++中的向量创建矩阵

时间:2011-06-22 15:01:09

标签: c++ matrix linear-algebra ublas

如果我有n个长度为m的向量并希望将它们连接起来创建一个mxn矩阵,那么使用Boost uBLAS在C ++中执行此操作的最有效方法是什么?

显然,我可以循环使用它们并为每个矩阵元素分配相应的向量值,但我觉得有一种更好的方法可以做到这一点,我不知道。

1 个答案:

答案 0 :(得分:2)

我会尝试将每个向量直接分配到相应的matrix column中,而不是按元素方式迭代整个向量列表。

template<class AE >  
BOOST_UBLAS_INLINE matrix_column &  operator= (const vector_expression< AE > &ae) 

你必须在某个时刻复制每个元素,但这应该比嵌套循环(或Boost.uBlas中的perf错误,如果没有)更快。