24小时热门版块排行榜    

查看: 7798  |  回复: 42
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

hk_kong36

金虫 (著名写手)

[求助] 大型矩阵求逆该怎么做

如题,
是576*576的矩阵,直接用matlab的函数inv求解好像结果不太对,有下面的显示:
Matrix is close to singular or badly scaled.
         Results may be inaccurate. RCOND = 2.372912e-021.

matlab矩阵求逆还有没有别的尝试方法。。。。。。,还是我需要对矩阵做一些处理呢?

thanks
回复此楼
thanks,聆听花开的声音,需要的是沉淀
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tgvictor99

木虫 (知名作家)

迷糊领域荣誉领主

【答案】应助回帖

感谢参与,应助指数 +1
引用回帖:
10楼: Originally posted by hk_kong36 at 2013-07-11 09:33:57
是576*576的矩阵,可逆,确实是在解方程组,矩阵元素都特别小,也不对称

求逆的过程会不会很复杂。。。。。...

针对楼主給的情况。我想了一个方法,没测试过,楼主可以试一试。
推论过程:
因为楼主说这个矩阵里的元素都在1e-4的量级,这就导致矩阵的行列式会非常小。所以做处理,假说这个矩阵为A,逆为Ani,令A=1e-4*Abar
因为    A*Ani=I ,那么 1e-4*Abar*Ani=I. 那么Abar*(1e-4*Ani) = I;
所以 inv(Abar) =1e-4*Ani
所以 Ani= 1e4*inv(Abar)
所以Ani =1e4*inv(1e4*A)
这样转换矩阵1e4*A的行列式值就不会接近于0了,matlabb应该就能给出结果了。

» 本帖已获得的红花(最新10朵)

每个人的人生都是时代的产物。每个人的血统、命运和梦想组成了现在这个时代。
12楼2013-07-11 10:51:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 43 个回答

pippi6

铁杆木虫 (著名写手)

工程和科学数值计算咨询

【答案】应助回帖

感谢参与,应助指数 +1
是稀疏矩阵吗?阶数太高,用直接法有点问题,试着用迭代法。还有就是,非要matlab做吗?

» 本帖已获得的红花(最新10朵)

2楼2013-07-10 11:50:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pippi6

铁杆木虫 (著名写手)

工程和科学数值计算咨询

【答案】应助回帖

刚才没太看清楚,你是要求逆矩阵还是解方程啊?求逆矩阵就很难了。No offense,你要逆矩阵干什么呢?解是不能直接由逆矩阵直接导出的,那样很不准确。
3楼2013-07-10 12:13:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yyqiao

金虫 (小有名气)

这是很麻烦的事情。

宋端磊;鹿涛;乔园园;
大型矩阵求逆的实现与应用[A];
中国化学会第26届学术年会化学信息学与化学计量学分会场论文集[C];
2008年
博客:blog.sina.com.cn/nkuqiao;应用化学:blog.sina.com.cn/nkapc;化学工程:blog.sina.com.cn/nkceg
4楼2013-07-10 12:50:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见