C语言 用于数学矩阵运算的 C 库
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/4501322/
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 libraries for mathematical matrix operations
提问by Joris Meys
I know there are some optimized algorithms around for all kind of matrix decompositions (QR decomposition, SVD,...), multiplications and the likes. Yet, I couldn't find a good overview. For C++, there is quite some useful information in this question, but I'm looking for those things in C.
我知道有一些针对各种矩阵分解(QR 分解、SVD 等)、乘法等的优化算法。然而,我找不到一个好的概述。对于 C++,这个问题中有很多有用的信息,但我正在寻找 C 中的那些东西。
采纳答案by gnuf
You did not mention whether you wanted an open-source or a commercial software, so here is a list containing both:
你没有提到你想要开源软件还是商业软件,所以这里有一个包含两者的列表:
- GNU Scientific Library(GSL)
- Basic Linear Algebra Subprograms(BLAS)
- Meschach
- Numerical Algorithms Group(NAG)
There was also this previous questionon the subject.
之前也有关于这个主题的问题。
回答by NPE
You might want to take a look at BLASand LAPACK. These are written in Fortran, but are callable from C, and are pretty much thestandard libraries of this type.
您可能想看看BLAS和LAPACK。它们是用 Fortran 编写的,但可以从 C 调用,并且几乎是这种类型的标准库。
Most serious linear algebra packages that I know of (MATLAB, Octave, NumPy) are built using these.
我所知道的大多数严肃的线性代数包(MATLAB、Octave、NumPy)都是使用这些构建的。
回答by Victor Zamanian
Perhaps GNU Scientific Library (GSL) would be of interest.
也许 GNU 科学图书馆 (GSL) 会感兴趣。
http://www.gnu.org/software/gsl/
http://www.gnu.org/software/gsl/
Documentation topics: http://www.gnu.org/software/gsl/manual/html_node/

