牛頓迭代法

2021-09-08 22:21:48 字數 996 閱讀 9293

牛頓迭代

具體說明,請參見維基百科 

牛頓法

舉乙個栗子

找平方根

給乙個數a,

求其平方根。

設其平方根為x 

則有 x^

2- a = 0,設函式

f(x) = x^

2- a,

取x0的初值盡量靠近

a的平方根(由於初值的選擇影響迭代的次數)

依據 f(x0)  = (x0 - x).f

』(x0)

--->  x = x0 -  f(x0)/f

』(x0)   ①

--->  x0 = x                        ②

反覆①、②直到abs(x-x0)<=eps

,達到精度要求就可以。

**:a = input();

x0 = init_value;

while( fabs(x-x0

)>eps)

eg.  a  = 2 , eps = 1e-8

x0 = 1.0

迭代過程中x

的變化

1.5000000000000000

1.41

66666666666667

1.41421

56862745099

1.41421356237

46899

1.4142135623730951

總的來說

f(x)函式連續,且在零點範圍內收斂。

迭代的次數受x0

和精度影響。

迭代的次數是非常小的相對(二分法),(精度乘法)

牛頓迭代法

創新工廠的筆試題 不用庫函式sqrt 求乙個整型數n的開方,要求精度達到0.001即可。在這裡首先介紹一下牛頓迭代法 假設乙個方程為 f x 0 那麼假設其解為x0,則用泰勒級數展開之後可得 f x f x0 f x0 x x0 0 其中x為其近似解。根據上式推導出 x x0 f x0 f x0 這...

牛頓迭代法

目前接觸到的牛頓迭代法主要應用於兩個方面 1 方程求根問題 2 最優化問題。1 求解方程。並不是所有的方程都有求根公式,或者求根公式很複雜,導致求解困難。利用牛頓法,可以迭代求解。原理是利用泰勒公式,在x0處展開,且展開到一階,即f x f x0 x x0 f x0 求解方程f x 0,即f x0 ...

牛頓迭代法

欲求某方程 f x 0 的根,按照以下步驟進行求解 令x0 1 也可以選擇其他值 i 0,1,2 1 求出 f xi 和 導數f xi 2 令 x i 1 xi f xi f xi 3 將 x i 1 帶入方程 f x 計算方程值,當方程值與目標值的誤差小於預定值時,退出演算法輸出 x i 1 即為...