Math.NET Numerics

Math.NET Numerics是一個用於.NET和Mono的開源數值庫,用C#和F#編寫。它的功能類似於BLAS和LAPACK。

Math.NET Numerics
開發者C. Rüegg, M. Cuda, et al.
當前版本
  • 5.0.0 (2022年4月3日)[1]
編輯維基數據鏈接
原始碼庫 編輯維基數據鏈接
程式語言C#, F#, .NET CLR
作業系統Cross-platform
類型Numerical library
許可協議MIT/X11
網站numerics.mathdotnet.com

歷史

Math.NET Numerics開始於2009年,是由dnAnalytics的代碼和團隊與Math.NET Iridium合併而成。它受到ALGLIB、JAMA和Boost等的影響,並接受了大量的代碼貢獻[2],它是Math.NET倡議的一部分,從2002年開始,為.NET平台構建和維護開放的數學工具箱。

Math.NET被多個開源庫和研究項目所使用,如MyMediaLite[3],FermiSim[4]和LightField Retrieval[5],以及各種學位論文和期刊論文等。

特性

  • 概率分佈:離散、連續和多變量。
  • 偽隨機數生成,包括Mersenne Twister MT19937。
  • 實數和複雜線性代數類型和求解器,支持稀疏矩陣和向量。
  • LU, QR, SVD, EVD, 和 Cholesky分解。
  • 矩陣IO類,可從Matlab和分界文件中讀取和寫入矩陣。
  • 複數算術和三角函數。
  • 特殊方程,包括Gamma, Beta, Erf, 修正Bessel和Struve函數。
  • 插值方程,包括Barycentric, Floater-Hormann。
  • 線性回歸/曲線擬合例程。
  • 數值正交/積分。
  • 找根方法,包括Brent、Robust Newton-Raphson和Broyden。
  • 描述性統計、階次統計、直方圖和皮爾遜相關係數。
  • 馬爾科夫鏈蒙特卡洛抽樣法。
  • 基礎金融統計學。
  • 傅立葉和哈特利變換(FFT)。
  • 過載的數學運算符,簡化複雜的表達式。
  • 在Microsoft Windows和支持Mono的平台上運行。
  • 可選支持Intel Math Kernel庫(Microsoft Windows和Linux)。
  • 可選的F#擴展名,更多的成語用法。

參考資料

  1. ^ Release 5.0.0. 2022年4月3日 [2022年10月28日]. 
  2. ^ Math.NET Numerics ReadMe. GitHub.com. [2013-05-08]. (原始內容存檔於2018-03-08). 
  3. ^ MyMediaLite Recommender System Library. [2013-05-08]. (原始內容存檔於2013-06-01).  |url-status=|dead-url=只需其一 (幫助)
  4. ^ FermiSim, studying potential solutions to the Fermi paradox via computational simulation of models for space colonisation. [2020-04-08]. (原始內容存檔於2019-12-11). 
  5. ^ Three-Dimensional Model Shape Description and Retrieval Based on LightField Descriptors. [2020-04-08]. (原始內容存檔於2016-01-18).