How to convert sparse matrix to dense matrix in Eigen

user2165656 picture user2165656 · Mar 18, 2013 · Viewed 12.5k times · Source

Is there some easy and fast way to convert a sparse matrix to a dense matrix of doubles?

Because my SparseMatrix is not sparse any more, but became dense after some matrix products.

Another question I have: The Eigen library has excellent performance, how is this possible? I don't understand why, because there are only header files, no compiled source.

Answer

ggael picture ggael · Mar 23, 2013

Let's declare two matrices:

SparseMatrix<double> spMat;
MatrixXd dMat;

Sparse to dense:

dMat = MatrixXd(spMat);

Dense to sparse:

spMat = dMat.sparseView();