当迭代次数够多的时候,xi就接近正确的值x了。那么, 红线斜率
k = f'(xn)
一点数学运算,可以算出 Xn+1 = Xn - f(Xn)/f'(Xn) (点斜式写出红线方程,令Y=0 即可得出 Xn+1了。
初始值可以随便挑选,只要迭代次数够多,总能得到接近的结果。
一个例子——用python实现,求参数n的平方根:
平方根的话,相当于 给定y,函数 f(x) = x^2-y ,求零点x ,代入上面的模型,得 迭代公示 Xn+1 = 1/2 * ( Xn + Y/Xn ) 。
附代码:
import math
def Newton_iter