简体   繁体   English

如何在Eigen中以MarketIO格式保存Eigen :: DiagonalMatrix?

[英]How to save Eigen::DiagonalMatrix in MarketIO format in Eigen?

Using Eigen 3.2.1 , I am trying to save an Eigen::DiagonalMatrix in MarketIO format as below: 使用Eigen 3.2.1 ,我试图将Eigen::DiagonalMatrix保存为MarketIO格式,如下所示:

#include <Eigen/Sparse>
#include <Unsupported/Eigen/SparseExtra>
using namespace Eigen;
...

size_t n = XX;
DiagonalMatrix<num_t, Dynamic> W(n);
...
saveMarket(W, "W.txt"); // error propagates from here

However, I am getting the following error: 但是,我收到以下错误:

MarketIO.h|236|error: 'const class Eigen::DiagonalMatrix<double, -1>' has no
member named 'nonZeros'

What is the problem here? 这里有什么问题? Is this implemented at all for Diagonal Matrices ? Diagonal Matrices完全实现了吗?

Thanks in advance for any help. 在此先感谢您的帮助。

Okay! 好的! The only solution for now with minimal effort is to use the following: 目前唯一的解决方案是使用最少的精力:

saveMarketVector(W.diagonal(), "W.txt");

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM