用于求解稀疏线性方程组的 C API 库?

发布于 2024-12-16 12:07:56 字数 283 浏览 4 评论 0原文

我需要通过用 D 编写的程序求解大型、稀疏的线性方程组。理想情况下,我想要一个具有 D 风格界面的库,但我怀疑是否存在这样的库。但是,D 可以直接访问 C API。因此,请建议一些可以求解大型稀疏线性方程组的库,这些库具有以下特征:

  1. 公开 C API。

  2. 免费/开源。最好也是非 Copyleft,但这不是硬性要求。

  3. 经过充分测试和调试。易于设置和使用。不是由学者编写的,只是为了获得一篇关于他们的方法的论文,然后完全没有维护。

I need to solve a large, sparse system of linear equations from a program written in D. Ideally I'd like a library with a D-style interface, but I doubt one exists. However, D can directly access C APIs. Therefore, please suggest some libraries that solve large, sparse systems of linear equations with the following characteristics:

  1. Exposes a C API.

  2. Free/open source. Preferably non-copyleft, too, but this is not a hard requirement.

  3. Well-tested and debugged. Easy to set up and use. Not written by academics just to get a paper on their method and then completely unmaintained.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

物价感观 2024-12-23 12:07:56

稀疏问题的经典库是 suite-sparse。您在许多系统上都有软件包。 Matlab 在内部使用它。

The classical library for sparse problem is suite-sparse. You have packages on many systems. Matlab uses it internally.

清眉祭 2024-12-23 12:07:56

我的错,我把以前用过的LAPACK和以前用过的ARPACK搞混了。

这是 arpack http://www.caam.rice.edu/~kristyn/ 的链接parpack_home.html
该包旨在计算一般 n × n 矩阵 A 的一些特征值和相应的特征向量。它最适合大型稀疏或结构化矩阵。

这里链接了线性代数库的比较:

http://www. netlib.org/utk/people/JackDongarra/la-sw.html

你可以在那里找到 SparseLib++,这里提到的 arpack 以及更多矩阵形式的库。

My bad, I tangle LAPACK that I used old time ago and ARPACK that I used more time ago.

Here is link to arpack http://www.caam.rice.edu/~kristyn/parpack_home.html:
The package is designed to compute a few eigenvalues and corresponding eigenvectors of a general n by n matrix A. It is most appropriate for large sparse or structured matrices.

And here link with comparison of libaries for Linear Algebra:

http://www.netlib.org/utk/people/JackDongarra/la-sw.html

you can find there SparseLib++, mentioned here arpack and much more libaries in matrix form.

坦然微笑 2024-12-23 12:07:56

有一个名为CSPARSE的专用包,它是用C编写的。似乎其实现是基于[david2006direct]。

There is a dedicated package called CSPARSE, and it's written in C. It seems that the implemention is based on [david2006direct].

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文