稀疏矩阵线性和非线性方程求解器

时间:2012-02-29 20:37:18

标签: c numeric lapack

我正在寻找一个C库来解决Ax = b形式的线性和可能的​​非线性矩阵方程。对我来说重要的是,包裹不是太大而且是免费的。速度与简单性和矩阵存储的稀疏特征无关。此外,它应该能够并行计算。由于我在数值线性代数的blas / lapack / ...领域相当新,如果它包含一个很好的文档,可能还有一些例子,那就太棒了。你能推荐什么套餐吗?我有点不知所措的谷歌结果,也不知道我必须寻找的例程的名称。

我刚刚发现SuperLu似乎有一个非常好的文档,即使是代码片段。它是用C语言编写的,需要CBLAS。

4 个答案:

答案 0 :(得分:5)

你有很多不同的选择。在开始之前,您应该考虑some guidelines for choosing a sparse linear solver。我个人推荐PETSc,但在scicomp上看到这个curated list以获得更全面的选项列表。

答案 1 :(得分:1)

如果您有NVIDIA显卡,我建议您查看CUDA。它有很好的线性代数库,使用类似C语法的BLAS和稀疏矩阵。

答案 2 :(得分:0)

您可能想尝试PETSc。有一点学习曲线,但这是一个高性能,高性能的库。查看文档部分,尤其是示例(每个文档页面顶部的大链接)。

答案 3 :(得分:0)

我在这里找到了this小程序,只包含一个源文件和一个标题,它不仅可以迭代地求解稀疏矩阵线性方程,而且还带有一个使一切都非常有效的预处理器。有两个例子,稀疏结构已有详细记录。它不依赖于外部库,并且很容易集成到现有代码中。它不处理分布式内存,并行化等。