當前位置:編程學習大全網 - 編程軟體 - 牛頓叠代法求根C++

牛頓叠代法求根C++

題目描述:

首先最常見的方法是二分法進行求值,這裏主要註意精度,還有就是二分法的求值,但是這種方法有時候不滿足題目給的時間復雜度的要求,那麽需要壹種新的方法來進行求值。

所以這裏給出牛頓叠代法:

這裏應該大學都知道,壹個函數f(x) = x^3-y 的可以在坐標系上畫出它的圖。

隨便找壹個曲線上的A點(為什麽隨便找,根據切線是切點附近的曲線的近似,應該在根點附近找,但是很顯然我們現在還不知道根點在哪裏),做壹個切線,切線的根(就是和x軸的交點)與曲線的根,還有壹定的距離。牛頓、拉弗森們想,沒關系,我們從這個切線的根出發,做壹根垂線,和曲線相交於B點,繼續重復剛才的工作:

之前說過,B點比之前A點更接近曲線的根點,牛頓、拉弗森們很興奮,繼續重復剛才的工作:

經過多次叠代後會越來越接近曲線的根(下圖進行了50次叠代,哪怕經過無數次叠代也只會更接近曲線的根,用數學術語來說就是,叠代收斂了):

眾所周知,f'(x) 是f(x)的導數,也是在某點上的壹個切線方程。

牛頓它們根據上面的方法,不斷的逼近根的方法,可以總結為以下的表示方法。

從而對於求立方根的時候,我們可以假設

求y的立方根表示, f(x)=0的時候,求x的值這樣的數學模型。

根據上面的公式,我們可以得到

根絕這裏的公式,我們就可以寫出立方根的解法了。

參考:

牛頓叠代法

  • 上一篇:如何讓孩子免費學習編程
  • 下一篇:LED燈帶常見種類介紹
  • copyright 2024編程學習大全網