回 帖 发 新 帖 刷新版面

主题:求解线性方程组的开源代码

请问求解对称正定矩阵线性方程组,而且速度比较快开源代码。

回复列表 (共10个回复)

沙发

找找 Lapack,我想应该有你想要的。

板凳


我刚写了求解方程组(m行<=n列,秩为r)极小最小二乘解的程序,思路是:先将方程组化为前r列线性无关,然后对新的的系数矩阵进行满秩分解A=QU,最后按公式求解方程组的极小最小二乘解,当然,若m=n,极小最小二乘解就是他的准确解。如果你可以用的话,留下QQ,我发给你。

3 楼


Lapack不能解稀疏矩阵?我想求解稀疏矩阵

4 楼

[quote]
我刚写了求解方程组(m行<=n列,秩为r)极小最小二乘解的程序,思路是:先将方程组化为前r列线性无关,然后对新的的系数矩阵进行满秩分解A=QU,最后按公式求解方程组的极小最小二乘解,当然,若m=n,极小最小二乘解就是他的准确解。如果你可以用的话,留下QQ,我发给你。[/quote]
谢谢你。你的程序能解稀疏矩阵的线性方程组吗?

5 楼

在 google 中输入 Sparse Lib,不就可以找到你需要的吗?
比如: http://math.nist.gov/spblas/

6 楼

[quote]在 google 中输入 Sparse Lib,不就可以找到你需要的吗?
比如: http://math.nist.gov/spblas/[/quote]
这是个好办法

7 楼

找徐世良的《常用FORTRAN算法集》,里面有源代码

8 楼

[quote]找徐世良的《常用FORTRAN算法集》,里面有源代码[/quote]
这里好像没有稀疏矩阵的算法

9 楼


安装intel的MKL,里面自带DSS和PARDISO
或者上HSL去下MA47或者MA57、搜索一下国产的GSS,据说比PARDISO还要快一些

10 楼

楼上 intel的MKL,里面自带DSS和PARDISO是直接解大型稀疏线性方程组,还有些优秀的开源的库——MUMPS superLU
[quote]在 google 中输入 Sparse Lib,不就可以找到你需要的吗?
比如: http://math.nist.gov/spblas/[/quote]
Sparse lib 只有C和C++的源代码,有FORTRAN95的接口,是迭代法求解稀疏线性方程组,包括预处理等,但方法不够完善,而且不是并行算法。
PETSC相当全面,完善,而且发展较好。支持预处理,并行,迭代和某些直接解法。难点:安装及实现接口。当然还有其他迭代库(很多)

我来回复

您尚未登录,请登录后再回复。点此登录或注册