Math.NET Numerics
Appearance
Developer(s) | C. Rüegg, M. Cuda, et al. |
---|---|
Stable release | 4.15.0
/ 7 January 2021 |
Repository | |
Written in | C#, F#, .NET CLR |
Operating system | Cross-platform |
Type | Numerical library |
License | MIT/X11 |
Website | numerics |
Math.NET Numerics is an open-source numerical library for .NET and Mono, written in C# and F#. It features functionality similar to BLAS and LAPACK.
History
[edit]Math.NET Numerics started 2009 by merging code and teams of dnAnalytics with Math.NET Iridium. It is influenced by ALGLIB, JAMA and Boost, among others, and has accepted numerous code contributions.[1][2] It is part of the Math.NET initiative to build and maintain open mathematical toolkits for the .NET platform since 2002.[citation needed]
Math.NET is used by several open source libraries and research projects, like MyMediaLite,[3] FermiSim[4] and LightField Retrieval,[5] and various theses[6][7][8][9] and papers.[10][11]
Features
[edit]The software library provides facilities for:
- Probability distributions: discrete, continuous and multivariate.
- Pseudo-random number generation, including Mersenne Twister MT19937.
- Real and complex linear algebra types and solvers with support for sparse matrices and vectors.
- LU, QR, SVD, EVD, and Cholesky decompositions.
- Matrix IO classes that read and write matrices from/to Matlab and delimited files.
- Complex number arithmetic and trigonometry.
- “Special” routines including the Gamma, Beta, Erf, modified Bessel and Struve functions.
- Interpolation routines, including Barycentric, Floater-Hormann.
- Linear Regression/Curve Fitting routines.
- Numerical Quadrature/Integration.
- Root finding methods, including Brent, Robust Newton-Raphson and Broyden.
- Descriptive Statistics, Order Statistics, Histogram, and Pearson Correlation Coefficient.
- Markov chain Monte Carlo sampling.
- Basic financial statistics.
- Fourier and Hartley transforms (FFT).
- Overloaded mathematical operators to simplify complex expressions.
- Runs under Microsoft Windows and platforms that support Mono.
- Optional support for Intel Math Kernel Library (Microsoft Windows and Linux)
- Optional F# extensions for more idiomatic usage.
See also
[edit]References
[edit]- ^ "Math.NET Numerics ReadMe". GitHub.com. Retrieved 2013-05-08.
- ^ "Math.NET Numerics Contributors". GitHub.com. Retrieved 2013-05-08.
- ^ "MyMediaLite Recommender System Library". Archived from the original on 2013-06-01. Retrieved 2013-05-08.
- ^ "FermiSim, studying potential solutions to the Fermi paradox via computational simulation of models for space colonisation".
- ^ "Three-Dimensional Model Shape Description and Retrieval Based on LightField Descriptors".
- ^ Schräder, Niklas (2011). Detecting falls and poses in image silhouettes (M.Sc). Chalmers University of Technology, Gothenburg, Sweden. ISSN 1652-8557.
- ^ Schindlberger, Michael (2011). Elastic Properties of Growing 2D Foam (M.Sc). University of Zurich.
- ^ Ferreira, André Filipe Mateus. SoundLog: Make More Noise (M.Sc). Universidade Técnica de Lisboa.
- ^ Miller, Justin (2010). Design of a Wireless Acquisition System for a Digital Stethoscope (B.Sc). University of Southern Queensland.
- ^ LÍŠKA, Ondrej; ŽIDEK, Kamil (2010). "Accelerometers usability for danger tilt off-highway vehicles and signal filtration with kalman filter". Journal of Applied Science in the Thermodynamics and Fluid Mechanics. 4 (2): 1–6. ISSN 1802-9388.
- ^ Krejcar, Ondrej; Jirka, Jakub; Janckulik, Dalibor (2011). "Use of Mobile Phones as Intelligent Sensors for Sound Input Analysis and Sleep State Detection". Sensors. 11 (6): 6037–6055. Bibcode:2011Senso..11.6037K. doi:10.3390/s110606037. ISSN 1424-8220. PMC 3231421. PMID 22163941.