24小时热门版块排行榜    

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

wangjunyahit

银虫 (初入文坛)

[求助] 求Matlab高手解决线性方程组的迭代求解问题

遇到一个线性方程组Ax=b的求解问题,使用Matlab直接求解但不确定结果是否正确,
想使用迭代解法求解验证结果,但苦于找不到合适的迭代解法和程序,希望各位大神
给予帮助,感激涕零!!!
方程组是这样的:
A=[-1.2e-21,1.4e6,1.4e6,-1.4e6,1.3e6;
    8.9e-22,-1.4e6,4.9e3,3.8e3,0;
    1.8e-22,1.4e3,-1.4e6,4.3e3,0;
    4.4e-23,3.2e2,1.2e3,-5.1e6,4.3e3;
    5.3e-23,0,0,1.3e3,-2.3e6]
b=[0;-1.8e-4;-1.3e-2;-1.5e-2;-4.0e-3]
直接求解如下:
x=A\b;
x=[  1.029393177754837e+20
     6.565808888911404e-08
     2.259822851544940e-08
     3.842185487752932e-09
     4.113382036189007e-09]

rcond(A)=1.694258513618419e-29;矩阵A可逆的条件数估值接近0,矩阵A条件不好,得到的解有误差
希望各位大神
给予帮助,感激涕零!!!

~EZ9ND[(A@F3IUUY9EJVQ4C.jpg

[ Last edited by wangjunyahit on 2012-11-24 at 16:10 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

自强不息,厚德载物
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zsy312

银虫 (小有名气)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+2, 谢谢参与! 2013-04-27 23:43:07
这种线性方程组直接有符号解, 还可以比较和数值解之间的误差
CODE:
A=[-1.2e-21,1.4e6,1.4e6,-1.4e6,1.3e6;
    8.9e-22,-1.4e6,4.9e3,3.8e3,0;
    1.8e-22,1.4e3,-1.4e6,4.3e3,0;
    4.4e-23,3.2e2,1.2e3,-5.1e6,4.3e3;
    5.3e-23,0,0,1.3e3,-2.3e6];
b=[0;-1.8e-4;-1.3e-2;-1.5e-2;-4.0e-3];

x=A\b;
A1=sym(A);
b1=sym(b);
x1=A1\b;
disp(['数值解: '])
disp(num2str(x))
disp(['符号解: '])
disp(x1)
disp(['符号解近似值: '])
disp(num2str(double(x1)))
disp(' ')
disp(['二者的误差为: '])
disp(num2str(x-double(x1)))

12楼2012-11-25 22:08:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zsy312

银虫 (小有名气)

输出:
CODE:
数值解:
1.029393177754837e+020
6.565808888911405e-008
2.25982285154494e-008
3.842185487752932e-009
4.113382036189007e-009
符号解:
388474900292779720441528931100854424320492441698304/3773824314049418181639511136225
              1776102037346606295811692690717/27050772683106229525992015824460800000
             3820622141326942446909828077309/169067329269413934537450098902880000000
                  7423863302538155608170509459/1932198048793302108999429701747200000
                  6409571567956304127562009059/1558224232897824281451152985280000000

符号解近似值:
1.029393177754837e+020
6.565808888911403e-008
2.25982285154494e-008
3.842185487752931e-009
4.113382036189006e-009

二者的误差为:
          32768
2.64697796e-023
3.30872245e-024
8.27180613e-025
1.65436123e-024

13楼2012-11-25 22:11:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wangjunyahit 的主题更新
信息提示
请填处理意见