由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Computation版 - 求矩阵逆的算法
相关主题
求助:DGBTRS 有没有用Lapack的?
有没有这种SVD的程序mklman is by far the most grandious reference manual i've seen
哪位有multiple righthand sides conjugate gradient[合集] 这里有lapack用的比较熟悉的人吗?
problem about Fortran 77 in unixdo you use blas/lapack?
something strange in fortran90请教一个计算速度的问题
numerical recipe c++lapack如何求解XA=B
直接用NR的源程序需要注意什么吗?Gfortran library
Fast solver of linear equation systemC++里用Blas/Lapack的问题
相关话题的讨论汇总
话题: 矩阵话题: work话题: lwork话题: 算法话题: integer
进入Computation版参与讨论
1 (共1页)
t*********g
发帖数: 6
1
我现在用cholesky分解去求逆矩阵,发现太慢,那位大侠知道
有没有优于O(n^3)的算法?多谢了。
g***i
发帖数: 90
2
这要看你的matrix的条件了
看来好象是symmetrix positive definite?

【在 t*********g 的大作中提到】
: 我现在用cholesky分解去求逆矩阵,发现太慢,那位大侠知道
: 有没有优于O(n^3)的算法?多谢了。

t*********g
发帖数: 6
3
是呀,没错。大侠给指点指点吧?
q***h
发帖数: 1
4
用Numerical Recipe吧。(ft,不知我拼对了没有)
那里的算法基于一种原理很复杂的SVD算法,很快。
给我的感觉:他的算法肯定比n^3快。

【在 t*********g 的大作中提到】
: 是呀,没错。大侠给指点指点吧?
g***i
发帖数: 90
5
用lapack里面的求逆算法

【在 q***h 的大作中提到】
: 用Numerical Recipe吧。(ft,不知我拼对了没有)
: 那里的算法基于一种原理很复杂的SVD算法,很快。
: 给我的感觉:他的算法肯定比n^3快。

r****y
发帖数: 26819
6
n^3是求逆算法得复杂度上限了吧

【在 q***h 的大作中提到】
: 用Numerical Recipe吧。(ft,不知我拼对了没有)
: 那里的算法基于一种原理很复杂的SVD算法,很快。
: 给我的感觉:他的算法肯定比n^3快。

t*********g
发帖数: 6
7
Thanks a lot. 我找找看!

【在 g***i 的大作中提到】
: 用lapack里面的求逆算法
t*********g
发帖数: 6
8
ok,让我看看。

【在 q***h 的大作中提到】
: 用Numerical Recipe吧。(ft,不知我拼对了没有)
: 那里的算法基于一种原理很复杂的SVD算法,很快。
: 给我的感觉:他的算法肯定比n^3快。

n******t
发帖数: 4406
9
no.

【在 r****y 的大作中提到】
: n^3是求逆算法得复杂度上限了吧
S***y
发帖数: 186
10
你如果用Fortran, 试试这个:
SUBROUTINE ZGEINV (N,A)
IMPLICIT NONE
INTEGER :: N
COMPLEX*16 :: A(N,N)
INTEGER :: IPIV(N)
INTEGER :: INFO, LWORK
COMPLEX*16, ALLOCATABLE :: WORK(:)
LWORK=N*ILAENV(1,'ZGETRI',' ',N,-1,-1,-1)
ALLOCATE(WORK(LWORK))
CALL ZGETRF(N,N,A,N,IPIV,INFO)
CALL ZGETRI(N,A,N,IPIV,WORK,LWORK,INFO)
DEALLOCATE(WORK)
END SUBROUTINE ZGEINV
这个是算复数矩阵的,如果你是实数矩阵,
把complex*16都换成real*8, ZGE都换成DGE.
当然这个是算普通矩阵的,对于对称正定矩阵,
可能还有更好的方法。
最后,要用LAPACK, 一定要用optimised BLAS,
否则对大矩阵,慢上个3,4倍都很正常。

【在 t*********g 的大作中提到】
: Thanks a lot. 我找找看!
1 (共1页)
进入Computation版参与讨论
相关主题
C++里用Blas/Lapack的问题something strange in fortran90
我们碰到的大麻烦——急寻计算机工作和博后机会 (转载)numerical recipe c++
Fortran里面哪个函数显示系统时间?直接用NR的源程序需要注意什么吗?
复数矩阵对角化有多快?Fast solver of linear equation system
求助:DGBTRS 有没有用Lapack的?
有没有这种SVD的程序mklman is by far the most grandious reference manual i've seen
哪位有multiple righthand sides conjugate gradient[合集] 这里有lapack用的比较熟悉的人吗?
problem about Fortran 77 in unixdo you use blas/lapack?
相关话题的讨论汇总
话题: 矩阵话题: work话题: lwork话题: 算法话题: integer