| 5 | 1/1 | 返回列表 |
| 查看: 2849 | 回復: 17 | ||
| 當前只顯示滿足指定條件的回帖,點擊這里查看本話題的所有回帖 | ||
wangjunyahit銀蟲 (初入文壇)
|
[求助]
求Matlab高手解決線性方程組的迭代求解問題
|
|
|
遇到一個線性方程組Ax=b的求解問題,使用Matlab直接求解但不確定結(jié)果是否正確, 想使用迭代解法求解驗證結(jié)果,但苦于找不到合適的迭代解法和程序,希望各位大神 給予幫助,感激涕零。! 方程組是這樣的: 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可逆的條件數(shù)估值接近0,矩陣A條件不好,得到的解有誤差 希望各位大神 給予幫助,感激涕零。! ~EZ9ND[(A@F3IUUY9EJVQ4C.jpg [ Last edited by wangjunyahit on 2012-11-24 at 16:10 ] |

|
矩陣的rcond顯然可以改好啊。例如將第一列乘以4e27。 >> Anew = A; Anew(:,1) = A(:,1) *4e27;rcond(Anew) 0.0103 >>x_1= Anew\b; x_1_real = x_1; x_1_real(1) = 4e27 * x_1(1) 不過結(jié)果解還是一樣的。 |
新蟲 (初入文壇)
|
你學過數(shù)值分析沒有,這個可以用高斯迭代法和雅可比迭代法求解,不過雖然用迭代法,跑程序時還是有警告,可能求解還是不是非常可靠,我求解了一個,下面我把高斯迭代法那個我求解用的程序和運行結(jié)果貼在下面: function gsdd(A,b,x0,fs,wucha,ddcs) D=diag(diag(A)); U=-triu(A,1); L=-tril(A,-1); ljzx=inv(A)*b'; if det(D)==0 disp('對角矩陣D奇異,迭代不能實現(xiàn)'); return end B=(D-L)\U;f=(D-L)\b'; for k=1:ddcs x1=B*x0'+f; epsilon=norm(x1-x0',fs); wcx=norm(x1-x0',fs)/(norm(x1,fs)+eps); x0=x1'; if (epsilon end end if (epsilon>wucha)||(wcx>wucha)||k==ddcs disp(' 超過給定最大迭代次數(shù),可能不收斂 ') return end disp('迭代次數(shù):'); k disp('迭代結(jié)果:'); x=x0' disp('逆矩陣求解結(jié)果:'); x=ljzx end >> 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]'; >> x0=[1 1 1 1 1]; >> gsdd(A,b,x0,1,10^(-15),1000) Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 1.694259e-029. > In gsdd at 5 Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 2.352941e-028. > In gsdd at 10 Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 2.352941e-028. > In gsdd at 10 迭代次數(shù): k = 527 迭代結(jié)果: x = 1.029393177754839e+020 6.565808888911417e-008 2.259822851544943e-008 3.842185487752933e-009 4.113382036189012e-009 逆矩陣求解結(jié)果: x = 1.029393177754837e+020 6.565808888911401e-008 2.259822851544940e-008 3.842185487752931e-009 4.113382036189006e-009 |

銀蟲 (初入文壇)

| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 材料求調(diào)劑一志愿哈工大324 +6 | 閆旭東 2026-03-28 | 7/350 |
|
|---|---|---|---|---|
|
[考研] 322求調(diào)劑 +5 | 宋明欣 2026-03-27 | 5/250 |
|
|
[考研] 275求調(diào)劑 +10 | jjjjjjjjjjl 2026-03-27 | 10/500 |
|
|
[考研] 286求調(diào)劑 +3 | 丟掉懶惰 2026-03-27 | 6/300 |
|
|
[考研] 085701環(huán)境工程,267求調(diào)劑 +12 | minht 2026-03-26 | 12/600 |
|
|
[考研] 265求調(diào)劑11408 +3 | 劉小鹿lu 2026-03-27 | 3/150 |
|
|
[考研] 070300求調(diào)劑306分 +3 | 26要上岸 2026-03-27 | 3/150 |
|
|
[考研] 求調(diào)劑 +3 | 劉柯@ 2026-03-24 | 4/200 |
|
|
[考研] 調(diào)劑 +3 | 李嘉圖·S·路 2026-03-27 | 3/150 |
|
|
[考研] 081200-11408-276學碩求調(diào)劑 +3 | 崔wj 2026-03-26 | 3/150 |
|
|
[考研] 329求調(diào)劑 +7 | 鈕恩雪 2026-03-25 | 7/350 |
|
|
[考研] 294分080500材料科學與工程求調(diào)劑 +4 | 柳溪邊 2026-03-26 | 4/200 |
|
|
[考研] 325求調(diào)劑 +3 | Aoyijiang 2026-03-23 | 3/150 |
|
|
[考研] 321求調(diào)劑 +5 | 材料cailiao 2026-03-21 | 5/250 |
|
|
[考研] 329求調(diào)劑 +5 | 1() 2026-03-22 | 5/250 |
|
|
[考研]
|
WWW西西弗斯 2026-03-24 | 8/400 |
|
|
[考研] 一志愿上海交大生物與醫(yī)藥專碩324分,求調(diào)劑 +6 | jiajunX 2026-03-22 | 6/300 |
|
|
[考研] 【2026考研調(diào)劑】制藥工程 284分 求相關(guān)專業(yè)調(diào)劑名額 +4 | 袁奐奐 2026-03-25 | 8/400 |
|
|
[考研] 306求0703調(diào)劑一志愿華中師范 +10 | 紙魚ly 2026-03-21 | 11/550 |
|
|
[考研]
|
13659058978 2026-03-24 | 4/200 |
|