Question

Are there any storage optimized Sparse Matrix implementations in C#?

Was it helpful?

Solution

There is Math.NET.

It has some Spare Matrix implementations. (link is to the old Math.NET site. There is no longer an online version of the documentation).

OTHER TIPS

If you are looking for high performance sparse matrix implementation check out NMath from CenterSpace software.

Here's a partial list of functionality cut from here on CenterSpace's website.

  • Full-featured structured sparse matrix classes, including triangular, symmetric, Hermitian, banded, tridiagonal, symmetric banded, and Hermitian banded.
  • Functions for converting between general matrices and structured sparse matrix types.
  • Functions for transposing structured sparse matrices, computing inner products, and calculating matrix norms.
  • Classes for factoring structured sparse matrices, including LU factorization for banded and tridiagonal matrices, Bunch-Kaufman factorization for symmetric and Hermitian matrices, and Cholesky decomposition for symmetric and Hermitian positive definite matrices. Once constructed, matrix factorizations can be used to solve linear systems and compute determinants, inverses, and condition numbers.
  • General sparse vector and matrix classes, and matrix factorizations.
  • Orthogonal decomposition classes for general matrices, including QR decomposition and singular value decomposition (SVD).
  • Advanced least squares factorization classes for general matrices, including Cholesky, QR, and SVD.
  • LU factorization for general matrices, as well as functions for solving linear systems, computing determinants, inverses, and condition numbers.

Paul

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top