首页 > 其他 > 详细

牛顿迭代法

时间:2019-08-30 09:18:50      阅读:78      评论:0      收藏:0      [点我收藏+]

牛顿迭代法

技术分享图片

技术分享图片

1.假设求x^2=5的解,求解根号5


2.令f(x)=x^2-5,f(x)=0,蓝色点是根的解,红色是我们假设的根的解


3.画出这个二次函数的图像,我们观察函数解的位置


4.我们假设不知道解的位置猜测这个值是x=2,然后在点(2,f(2))处做切线,切线与x轴点交点与我们要求的根的解比较接近了,我们只要重复这个过程就可以得到一个近似解


5.切线的方程是什么呢,求解切线方程,切线方程的通式y-y0=m(x-x0),m是斜率


6.x1是切线在x轴上的截距,那么如何找到x1截距呢,让y=0
0-y0=m(x1-x0),化简-y0/m=x1-x0 -> x1 = x0-y0/m ->y0用f(x)替代,m是斜率用导数替代 x1 = x0 - f(x0)/f'(x0)


7.根据算出来的截距,在点(x1,f(x1))做切线,切线的截距会不断的靠近我们要求的点,也就是利用切线的根来不断逼近要求解曲线的根,重复上面的过程直到收敛

利用牛顿迭代法求解平方根


y = x^2 - 5 = 0

x1 = x0 - y0/f'(x0)
x1 = x0 - x0^2-5/2x0
化简
x1 = (x0 + 5/ x0)/2


function mysqrt(x){
    r = x;
    while(r * r > x){
        r = (r + x / r)/2
    }
    return r
}

console.log(mysqrt(64))

牛顿迭代法

原文:https://www.cnblogs.com/pluslius/p/11432834.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!