2024年3月18日發(作者:萬難)

文檔來源為:從網絡收集整理.word版本可編輯.歡迎下載支持.
舉例,給定方程組為:
先用matlab自帶函數solve解此方程組,確定牛頓迭代時的初值范
圍,得到根為:
?
x?108.848937
?
作圖驗證:
y?0.8493476
?
此組值確為方程的根。
通過觀察我們可以發現y的取值必須大于0。這在程序中必須說明,
如果迭代過程中y小于0,則此迭代法發散。
誤差分析:因為范數等價的原因,我們選擇2范數。將兩次相鄰迭代
差
x
n?1
,x
n
與x
n
的2范數的比值,即相對誤差
的2范數作為誤差,
存儲與一個向量或矩陣中,并作出曲線圖,觀察迭代過程中誤差的變
化情況。
如選初值為(12,0.3),得到誤差圖形為:
選初值為(12,1.2),誤差圖為:
我們可以發現誤差在前3-5次迭代的時候迅速下降,但是中間會有上
升的過程,直至最后誤差達到我們設定的誤差值。由此猜想迭代過程
可能漏掉了一些根,利用作圖,得到曲線如下:
可以發現還有兩組根,用牛頓迭代法只能得到一組值,可能是因為所
給方程比較特殊,它的定義域中x,y均不能為0,導致函數不連續。
另外,也可能因為函數不連續,導致初值只能在根的附件變化時才能
得到收斂的結果。
文檔來源為:從網絡收集整理.word版本可編輯.歡迎下載支持.
因此我們不妨將初值選的稍微小一些,如:[1,2],得到根為
選初值為[-1,4],得到根為
綜上所述,此方程組有三組根,不同的初值,會得到不同的解的情況,
也會有不同的誤差情況。初值選得越接近真值,誤差變化程度越小,
迭代次數也越少。
程序在另三個附件中。
同理,對于n元函數方程組,我們有:
文檔來源為:從網絡收集整理.word版本可編輯.歡迎下載支持.
(0)(0)(0)(0)(0)(1)0)
?
(x
1
(1)
?x
(
)x,...,x,x(f??f)x?x(?...?f)x?x(?f)
n2111xnnn1x2221x11
?
...
?
.
?
...
?
.
(0)(0)
?
(x
(1)
?x
(0)
)f?(x
(1)
?x
(0)
)f?...?(x?x
(0)
)f??f(x
(0)
)x,...,x,
n21nnxnnnnx222nx11
?
1
x
2
求導,式中,如f
nx2
表示,第n個方程對第二個未知數
的初始值,第一個未x
1
,x
1
分別表示第一個未知數
,以此類推。知數第一次迭代后的值
若系數矩陣[f
1x1
,f
1x2
,...,f
1xn
;......;f
nx1
,...,f
nxn
]的行列式不為0,
同樣可解出x
1
,x
2
,...,x
n
的值。
.X
(n?1)
牛頓迭代序列依二元方程組,可得到
(n)
)X(F
?X
(n)
?
F'(X
(n)
)
(0)(1)
的值,X
(n)
是第n次X
(n?1)
是第n?1次迭代得到的各自變量
值.迭代得到的各自變量的
F(X
(n)
)為[f
1
(x
1
,x
2
,...,x
n
),...,fn(x
1
,...,x
n
)]是一行向量.
類似二元方程組,F'(X
(n)
)為系數矩陣.那么利用牛頓迭代法,
n有限時的解.matlab編程,依然可以得到
(n)(n)(n)(n)(n)
誤差分析類似二元函數方程組。
本文發布于:2024-03-18 09:05:36,感謝您對本站的認可!
本文鏈接:http://m.newhan.cn/zhishi/a/1710723936164702.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:牛頓迭代法解元方程組以及誤差分析matlab實現.doc
本文 PDF 下載地址:牛頓迭代法解元方程組以及誤差分析matlab實現.pdf
| 留言與評論(共有 0 條評論) |