如何在C ++中使用特征库导入矩阵市场文件

时间:2019-08-23 11:48:18

标签: c++ sparse-matrix eigen file-import

我是C ++的新手,并且习惯于MATLAB。不幸的是,我的矩阵大小对于MATLAB来说太大了,所以我想在C ++中尝试一下。 我发现本征库3.3.7做矩阵处理。为此,我需要将矩阵市场文件导入Visual Studio2019。我了解C ++的一些基本知识,并尝试使用loadMarket导入文件。尝试编译后,在MarketIO.h文件中收到30个错误。

这是我正在使用的文件。 https://eigen.tuxfamily.org/dox/unsupported/MarketIO_8h_source.html

#include <Eigen/Sparse>
#include <unsupported/Eigen/src/SparseExtra/MarketIO.h>

int main(){
    typedef Eigen::SparseMatrix<float, Eigen::RowMajor>SMatrixXf;
    SMatrixXf A;
    Eigen::loadMarket(A, "B.mtx");
}

1 个答案:

答案 0 :(得分:2)

您绝不能直接包含来自unsupported/Eigen/src/...(或来自Eigen/src/...)的文件。只需包含相应的父标头即可:

#include <unsupported/Eigen/SparseExtra>