牛顿迭代法

 

先说下:牛顿,你真是各种学科的大神神人物。初中,高中物理占了一半不够,你还占了数学一席之地,我膜拜你,我全家膜拜你。

 

牛顿迭代法解非线性方程f(x)=0,是把非线性方程线性化的一种近似方法。关键原理如下:

1)把f(x)在点x0的某邻域内展开成泰勒级数 f(x) = f(x0)+(x-x0)f'(x0)+(x-x0)^2*f''(x0)/2! +… ,

2)取其线性部分(即泰勒展开的前两项),并令其等于0,即f(x0)+f'(x0)(x-x0)=0 ,以此作为非线性方程f(x) = 0的近似方程,

3)若f'(x0)≠0,则其解为x1=x0-f(x0)/f'(x0), 这样,得到牛顿迭代法的一个迭代关系式:x(n+1)=x(n)-f(x(n))/f'(x(n))。

 

为什么弄这个题呢?因为笔试有个题,求N的平方根。

方法:

1)二分迭代

2)二分迭代的基础上,在某个点附近,使用牛顿迭代减少迭代次数

 

牛顿迭代法伪代码:

x 为已知,初始值为x0

for 1:迭代次数

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

 

最后:

  牛顿迭代,以后我记住你一辈子。

posted @ 2013-09-16 23:43  空城夕  阅读(516)  评论(0编辑  收藏  举报