gpt4 book ai didi

c++ - 如何将稀疏矩阵乘以具有特征的密集矩阵?

转载 作者:行者123 更新时间:2023-11-28 02:25:08 24 4
gpt4 key购买 nike

我正在尝试在 C++ 的 Eigen 中将稀疏矩阵乘以稠密矩阵(维度当然匹配)。以下似乎不起作用。

这是一个 MWE:

  #include <Eigen/Dense>
#include <Eigen/Sparse>

using namespace Eigen;

int main()
{
SparseMatrix<double> s;
s.resize(3,3);
MatrixXf d(3,3);

MatrixXf d2(3,3);

// gives an error
s*d

// doesn't give an error
d*d2
}

编辑:此处的页面表明它应该可以顺利运行,但它并没有... http://eigen.tuxfamily.org/dox/group__TutorialSparse.html

最佳答案

你的问题不是稀疏密集,而是混合类型,Xhich 是不允许的。您的稀疏矩阵是 double 类型,而密集矩阵是 float (MatrixXF) 类型。将 MatrixXf 更改为 MatrixXd(或转换为 double),它工作正常。

关于c++ - 如何将稀疏矩阵乘以具有特征的密集矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31006745/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com