如何在 Eigen 中定义行优先稀疏向量
How to define a row-major sparse vector in Eigen
这应该是一个简单的问题,但文档没有帮助:我想在 Eigen 中定义一个稀疏向量,以便它以行优先格式存储。
这会产生一个列优先向量:
Eigen::SparseVector<float> vec;
我试过使用
typedef Eigen::Matrix<float, 1, Eigen::Dynamic> RowVector;
RowVector vec(size);
但稍后会遇到运行时问题。有没有一种简单的方法来定义动态大小的行优先稀疏向量?
SparseVector 的第二个模板参数是存储顺序(或者实际上是选项)。所以你会写 Eigen::SparseVector<float, Eigen::RowMajor> rowVec;
。请参阅文档 here.
这应该是一个简单的问题,但文档没有帮助:我想在 Eigen 中定义一个稀疏向量,以便它以行优先格式存储。
这会产生一个列优先向量:
Eigen::SparseVector<float> vec;
我试过使用
typedef Eigen::Matrix<float, 1, Eigen::Dynamic> RowVector;
RowVector vec(size);
但稍后会遇到运行时问题。有没有一种简单的方法来定义动态大小的行优先稀疏向量?
SparseVector 的第二个模板参数是存储顺序(或者实际上是选项)。所以你会写 Eigen::SparseVector<float, Eigen::RowMajor> rowVec;
。请参阅文档 here.