什麼是牛頓法?
牛頓法(又稱牛頓-拉弗森法)是數值求根中最快速、應用最廣的方法之一,目標是找出使 \(f(x) = 0\) 的 \(x\) 值。它從一個初始猜測值出發,反覆畫出曲線的切線,並以該切線與 x 軸的交點作為下一個更精準的估計值。當條件理想時,它具有二次收斂的特性:每迭代一次,正確位數大約會翻倍成長。
如何使用本計算機
請以 \(x\) 作為變數輸入您的函數 \(f(x)\)。由於本工具不會自動求導,因此您必須自行提供解析導數 \(f'(x)\)。接著設定初始猜測值 \(x_0\) 與最大迭代次數。計算機會回傳近似根、該根處的 \(f\) 值(理想情況下應接近零,以確認收斂)、實際使用的迭代次數,以及逐步的計算歷程表。支援語法:次方使用 + - * / ^、括號,以及函數 sin、cos、tan、asin、acos、atan、exp、ln、log、sqrt、abs,常數 pi 與 e。三角函數以弧度(radian)為單位。
公式解析
迭代公式為 $$x_{n+1} = x_{n} - \frac{f(x_{n})}{f^{\prime}(x_{n})}$$ 每次迭代都會在目前的點計算函數值與斜率,並朝切線與 x 軸交點的方向前進。若在任一步驟中導數為零,代表切線為水平線,此時方法會因除以零而失敗並回報錯誤。
實際範例
以 \(f(x) = x - \cos(x)\) 為例,其導數為 \(f'(x) = 1 + \sin(x)\),並取 \(x_0 = 1\)。第一步得 $$x_1 = 1 - \frac{1 - \cos 1}{1 + \sin 1} = 0.75034$$ 第二步得 \(0.73912\);第三步得 \(0.73909\);只需幾次迭代便會收斂至 \(x = 0.7390851332151607\),也就是著名的「Dottie 數」,滿足 \(x = \cos x\)。此時 \(f(x)\) 基本上等於零。
常見問題
為什麼我需要自行提供導數?本工具只會計算數學式的值,並不會執行符號微分,因此需要您手動輸入 \(f'(x)\)。導數若輸入錯誤,將導致求得錯誤的根或無法收斂。
為什麼算不出來(無法收斂)?當初始猜測值不佳、接近反曲點,或根本不存在實數根時,牛頓法可能會發散或來回振盪。請嘗試換一個 \(x_0\),或提高最大迭代次數。
當函數有多個根時,我會得到哪一個?求得的根取決於初始猜測值 \(x_0\);請選擇一個接近您想要的根的猜測值。