C# 线性代数库
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/392857/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
C# linear algebra library
提问by ima
Is there stable linear algebra (more specifically, vectors, matrices, multidimensional arrays and basic operations on them) library for C#?
C# 是否有稳定的线性代数(更具体地说,向量、矩阵、多维数组和对它们的基本运算)库?
Search yielded a few open source libraries which are either not updated for couple of years or are in an early beta stage - and Centerspace NMath. Which alternatives are worth checking?
搜索产生了一些开源库,它们要么几年没有更新,要么处于早期测试阶段 - 和 Centerspace NMath。哪些替代方案值得检查?
回答by cletus
Have you looked into dnAnalytics?
你看过dnAnalytics吗?
回答by JB King
.Net Matrixis a similar question that you may want to look at the answers for other ideas.
.Net Matrix是一个类似的问题,您可能想查看其他想法的答案。
回答by Sebastian Good
We have evaluated nMath and were quite pleased with its programmability and speed. Their support staff even worked over a weekend to figure out a bug we found. We liked that they used Intel's Kernel Math library instead of rolling their own numerics. [Edited to add: have been using in production for years]
我们对 nMath 进行了评估,对其可编程性和速度非常满意。他们的支持人员甚至花了一个周末来找出我们发现的错误。我们喜欢他们使用英特尔的内核数学库而不是滚动他们自己的数字。[编辑补充:已在生产中使用多年]
回答by nietras
See: http://en.wikipedia.org/wiki/List_of_numerical_libraries
请参阅:http: //en.wikipedia.org/wiki/List_of_numerical_libraries
http://www.alglib.net/- Open source. Multi-language library.
http://www.alglib.net/- 开源。多语言库。
http://www.mathdotnet.com/- Open source. As mentioned by others. dnAnalytics is replaced by http://numerics.mathdotnet.com/in this.
http://www.mathdotnet.com/- 开源。正如其他人所提到的。dnAnalytics在此被http://numerics.mathdotnet.com/取代。
http://www.lutzroeder.com/dotnet/- Lutz Roeder has a open source port Mapack.Net of LAPACK.
http://www.lutzroeder.com/dotnet/- Lutz Roeder 拥有 LAPACK 的开源端口 Mappack.Net。
http://www.extremeoptimization.com/- Commercial.
回答by Marc
I am using ILNumerics.NET
我正在使用 ILNumerics.NET
Very good support and stable. I don't have any comparison though.
很好的支持和稳定。虽然我没有任何可比性。
回答by Wisdom's Wind
Few weeks ago I found a new c# library FinMathcontains implementations of many various methods and techniques including basic linear algebra, such as:
几周前,我发现一个新的 c# 库FinMath包含许多各种方法和技术的实现,包括基本的线性代数,例如:
- Vector and Matrix implementations (easy to use high-level interfaces covering most of all BLASfunctionality)
- Algorithms of matrix factorizations (LU, QR, SVD, Cholesky).
- 矢量和矩阵实现(易于使用的高级接口,涵盖了大部分BLAS功能)
- 矩阵分解算法(LU、QR、SVD、Cholesky)。
And many other useful things like statistics, factor and cluster analysis, linear and quadratic programming solver and etc.
还有许多其他有用的东西,如统计、因子和聚类分析、线性和二次规划求解器等。
Unfortunately, it's not free, but it's extremely fast, because it uses MKLfor most complex computations and at the same time it distributed as single library supports both 32bit and 64bit modes and requires no special maintenance to use, like taking care about native libraries.
不幸的是,它不是免费的,但速度非常快,因为它使用MKL进行大多数复杂的计算,同时它作为单个库分发,支持 32 位和 64 位模式,并且不需要特殊的维护来使用,比如关心本地库。
回答by Ziriax
Although it is not updated, not open source, and not for commercial usage, one might want to check out D* from Microsoft Research. It's a very cool symbolicmath library, especially for doing derivatives, but really it's a little matlab in the hands of a .NET programmer.
虽然它没有更新,没有开源,也没有用于商业用途,但人们可能想要查看来自 Microsoft Research 的 D*。这是一个非常酷的符号数学库,特别是用于做导数,但实际上它是.NET 程序员手中的一个小matlab。
http://research.microsoft.com/en-us/downloads/4714703d-782c-4e37-830d-0e3b7662f743
http://research.microsoft.com/en-us/downloads/4714703d-782c-4e37-830d-0e3b7662f743