24小时热门版块排行榜    

查看: 2711  |  回复: 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的回帖

change0618

铁杆木虫 (著名写手)

方丈大师

【答案】应助回帖


xiegangmai: 金币+1, 谢谢参与! 2013-04-27 23:43:15
对于刚性的矩阵,采用x=pinv(A)*b 就可以了
15楼2013-04-27 15:35:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

change0618

铁杆木虫 (著名写手)

方丈大师

【答案】应助回帖

★ ★
xiegangmai: 金币+2, 谢谢参与! 2013-04-27 23:43:24
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=pinv(A)*b

x =

   1.0e-08 *

   0.000000000000000
  -0.223269102876553
   0.689363755668183
   0.312251529518066
   0.091881357445947

>> vpa(x,30)

ans =

       3.70460811145685954277266468961e-37
  -0.0000000022326910287655349973263795146
   0.0000000068936375566818299856437653433
  0.00000000312251529518065781430357617809
0.000000000918813574459469995008142319883

16楼2013-04-27 15:45:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

change0618

铁杆木虫 (著名写手)

方丈大师

【答案】应助回帖

★ ★ ★ ★
xiegangmai: 金币+2, 谢谢参与! 2013-04-27 23:43:35
wangjunyahit: 金币+2, ★★★很有帮助 2013-04-30 16:19:30
CODE:
>> A=[-1.070906744447462E-017   244564571.598802        303866255.019473      303856255.019473        303756255.019473  ;  
    9.735515836938967E-017   -437040200.438244        546168396.621813        415770404.263350      0.000000000000000E+000 ;
    1.947103215071310E-017   157778358.747585     -986775896.684545        473345946.492110       0.000000000000000E+000;
    4.867758037678274E-018   34697270.0918581        136741245.043259       -1333413850.81819        473345946.492110   ;   
     5.841309406796348E-018  0.000000000000000E+000  0.000000000000000E+000   136741245.043259      -778102201.511583 ];
b=[ 104348331231.704       -2072871.66710357      -154296552.906917       -178403143.022063       -48501206.8009638 ]';
>> x=pinv(A)*b

x =

   1.0e+02 *

  -0.000000000000000
   1.682414884915961
   0.668383858892869
   0.388902999746503
   0.336174005405975

>> vpa(x,30)

ans =

-0.0000000000000000000000285841068286876334276912171331
                         168.241488491596101084724068642
                         66.8383858892869398005132097751
                         38.8902999746503041933465283364
                         33.6174005405974725135820335709

17楼2013-04-27 15:48:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wangjunyahit 的主题更新
信息提示
请填处理意见