我有这种情况:m 是一个 NxN 稀疏矩阵,而 p 是纯 C++ 向量,它包含一个 NxN 矩阵。我想制作产品 m*p 并将结果存储在一个普通的 C++ 数组中,当然,以密集的格式。
SparseMatrix m;
double*p;
Map mp(p,dim1,dim2);
SparseTimeDenseProduct< Eigen::SparseMatrix, Eigen::Map< Eigen::Matrix< double, -1, -1> > > r = m*mp;
我有这个代码,但我不知道是否正确。如果是正确的,我不知道如何“提取” SparseTimeDenseProduct 的普通数组。我该怎么做?