作者EdisonX (閉上眼的魚)
看板Math
標題[其他] 牛頓法函式挑用.推導.收斂性
時間Sat Jan 12 10:42:28 2013
牛頓法最近有需求,又回來 k 過,但遇到以前沒想過的問題,
請先進不吝解惑。
問題長,願以稅前 500P 請有心人指導。
以下 x_n+1 以 x1 表示; x_n 以 x0 表示,所以牛頓法公式表示成
x1 = x0 - f(x0) / f'(x0)
---
1. 求 s 之根號倒數 < 1 / sqrt(s) >
我比較常看到的是 x1 = 0.5 * x0 * (3 - s * x0^2 )
自己推過後發現似乎兩種表示法都可以。
(1.a) 令 f(x) = x^(-2) - s , 推得 x1 = 0.5 * x0 * (3 - s * x0^2)
(1.b) 令 f(x) = x^2 - (1/s) , 推得 x1 = 0.5 * (x0 + 1 / (s*x0) )
拿求 1/ sqrt(100) 為例,分別以 x0 = 0.01 , x0 = 0.001 ,
這兩種方式都求得出來,計算機按到數值一樣視為收斂 (大概15位數吧)
(1.a) 收斂次數為 10 次 / 16 次; (1.b) 收斂次數為 7 次 / 11 次,
想請教是否必為 (1.b) 收斂較佳?又此兩函式在使用上是否有需要注意的地方?
---
2. 根號 s 推導
另外想請教,以下推導是否合理 (不用牛頓法, 單純的推導)
√s = x , √s-x=0, 同時平方, 得
2
s-2x√s+x = 0, 整理得
s
x = √s = 0.5 * ( x + --- )
x
請教是否所有 function 均可類似這樣「半亂湊」的方式推迭代公式?
( 當然 n 次根號的推導還是用牛頓法才方便,展開太累人 )
---
3. 請教倒數 (1/s) 怎麼推?
我查數值分析的書,倒數有這樣的遞推式
x1 = x0 ( 2 - s * x0)
但該書裡面只有結論,沒有過程,只有提到「牛頓法二次收斂」,
我推半天一直都推到無效方程組去,請教這種遞推關係是如何推得?
還有所謂的「二次收斂」意指為何?
---
最後先謝謝各位版友先進不吝指教,小弟感激不盡。
--
~ 這輩子與神手無緣
我只好當神獸了 ~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.177.76.161
※ 編輯: EdisonX 來自: 180.177.76.161 (01/12 10:52)
推 suhorng :第三題不是用 f(x) = 1/x - s 牛頓法嗎? 01/12 11:02
→ EdisonX :!! 真的推出來了, f(x) 一直沒設對 , 謝謝 suhorng. 01/12 11:23