title: Recommendation for C# Matrix Library
body: <p>I need a C# library to deal with matrices. It should implement singular value decomposition, matrix inversion, etc</p>
  
  <p>I've used <a href="http://www.codeproject.com/Articles/19032/C-Matrix-Library" rel="noreferrer">CSML</a> before, but this does not implement some of the features i need. </p>
  
  <p>Some of the features are:<br>
  Singular value decomposition<br>
  Matrix inversion<br>
  Trace<br>
  Determinants  </p>
  
  <p><strong>Suggested Libraries (from answers)</strong></p>
  
  <p>(most of them implement the features stated above)</p>
  
  <ul>
  <li><a href="http://numerics.mathdotnet.com/" rel="noreferrer">Math .NET Numerics for .NET, Silverlight and Mono</a> (opensource)</li>
  <li><a href="http://www.extremeoptimization.com/" rel="noreferrer">Extreme Optimization Numerical Libraries</a> (commercial, very
  complete)</li>
  <li><a href="http://ilnumerics.net/$Home.html" rel="noreferrer">IL Numerics</a> (commercial)</li>
  <li><a href="https://rtmath.net/products/finmath/" rel="noreferrer">Deltix's FinMath numerical library</a> (commercial,  uses the Intel®
  Math Kernel Library (MKL) and Intel® Integrated Performance
  Primitives (IPP))</li>
  <li><a href="http://blog.ivank.net/lightweight-matrix-class-in-c-strassen-algorithm-lu-decomposition.html" rel="noreferrer">Lightweight fast matrix class in C#</a> (Strassen algorithm, LU
  decomposition)</li>
  </ul>