Math.NET Numerics

Math.NET Numerics aims to provide methods and algorithms for numerical computations in science, engineering and every day use. Covered topics include special functions, linear algebra, probability models, random numbers, interpolation, integration, regression, optimization problems and more.

Math.NET Numerics is part of the Math.NET initiative and is the result of merging dnAnalytics with Math.NET Iridium, replacing both. It targets Microsoft .Net 4, .Net 3.5 and Mono (Windows, Linux and Mac), Silverlight 5, WindowsPhone 8, Windows 8/Store (PCL 47, 136) and Android/iOS (Xamarin). In addition to a purely managed implementation it also supports native hardware optimization. Available for free under the MIT/X11 License.


To reference Math.NET Numerics in your project, run the following command in the Package Manager Console

PM> Install-Package MathNet.Numerics

If you're lucky enough to work with F# you may want to install MathNet.Numerics.FSharp instead.


If you have Github for Windows installed you can click here to fetch the sources, otherwise clone it in the shell with:

$ git clone git://

We use the Fork & Pull model, as common for Github projects. Instead of asking for permission, simply fork the project on Github, commit your changes in a separate branch and send a pull request to one of the maintainers. A maintainer will then merge your changes back to mainline, or work together with you on the changes if they are not acceptable yet. Only maintainers can write to mainline, but anyone can contribute - don't ask, do!

Of course other contributions are very welcome as well, being it some publicity, more interesting code samples, code reviews, extending the documentation or even just some ideas. We're also looking for maintainers.