歡迎來到數值微分的世界!
在標準的 A Level 數學課程中,你已經學過如何利用代數方法來微分像 \(x^2\) 或 \(\sin(x)\) 這類函數。但如果遇到太過複雜而無法直接微分的函數,又或者手上只有一堆數據點而沒有方程式時,該怎麼辦呢?
這時候就是數值微分 (Numerical Differentiation) 大顯身手的時候了!在這個章節,你將學會如何利用簡單的算術來估算曲線上某點的斜率。這過程就像偵探辦案一樣——透過觀察周圍的點,來推斷出你感興趣的那個點發生了什麼事。
核心概念:回歸基礎
在我們深入探討之前,先來快速複習一個必備概念。還記得兩點 \((x_1, y_1)\) 與 \((x_2, y_2)\) 之間直線斜率的公式嗎?
\( \text{斜率} = \frac{y_2 - y_1}{x_2 - x_1} \)
數值微分正是運用了這個邏輯。我們採取一個微小的步長,稱為 \(h\),並利用它來求出兩個極近點之間的「斜率」。
你知道嗎?這正是你的手機或 GPS 計算你速度的方式!它並沒有什麼神奇的「速度方程式」;它只是根據你現在的位置與一秒前的位置,來算出你的變化率。
1. 前向差分法 (Forward Difference Method)
前向差分法是估算導數最簡單的方法。顧名思義,它是從你感興趣的點往「前」看。
公式
為了估算導數 \(f'(x)\),我們使用:
\( f'(x) \approx \frac{f(x+h) - f(x)}{h} \)
運作方式(步驟解析)
1. 從你的目標點 \(x\) 開始。
2. 往前邁出一小步到達 \(x + h\)。
3. 求出 \(y\) 值的差:\(f(x+h) - f(x)\)。
4. 將該差值除以步長 \(h\)。
範例:若 \(f(x) = x^3\),且我們想求 \(x=2\) 時的斜率,步長 \(h=0.1\):
\( f(2) = 2^3 = 8 \)
\( f(2.1) = 2.1^3 = 9.261 \)
\( f'(2) \approx \frac{9.261 - 8}{0.1} = 12.61 \)
(正確答案是 12,所以這是一個還不錯的估算值!)
重點提示:前向差分法雖然簡單易用,但並不總是那麼精準,因為它只考慮了該點的一側。
2. 中心差分法 (Central Difference Method)
如果說前向差分法是「好」的估算,那麼中心差分法就是「極佳」的估算。它不僅僅向前看,而是同時向後看半步、向前看半步,將我們的目標點夾在中間。
公式
\( f'(x) \approx \frac{f(x+h) - f(x-h)}{2h} \)
常見錯誤警告!請注意分母是 \(2h\)。因為你從 \(-h\) 走到 \(+h\),總步長是兩個 \(h\)。千萬別忘了那個 2!
生活中的類比
想像你正站在山坡上,試圖找出該處的「平均」斜率。
- 前向差分:你看著你的腳下以及前方 1 公尺處。
- 中心差分:你看著身後 1 公尺處以及前方 1 公尺處。這通常能更公平地呈現你正站立位置的斜率。
重點提示:在相同的 \(h\) 值下,中心差分法通常比前向差分法精準得多。
3. 精確度與方法的「階」(Order)
在數值方法中,我們常提到精確度階數 (Order of Accuracy)。它告訴我們當步長 \(h\) 變小時,誤差消失的速度有多快。
- 前向差分法是一階方法 (First Order Method),寫作 \(O(h)\)。這意味著如果你將步長減半 (\(h \to 0.5h\)),誤差大約會減半。
- 中心差分法是二階方法 (Second Order Method),寫作 \(O(h^2)\)。這就是「魔法」所在:如果你將步長減半 (\(h \to 0.5h\)),誤差大約會變成原來的四分之一 (\(0.5^2 = 0.25\))!
快速複習箱:
- 較小的 \(h\) = 更高的精確度(通常如此)。
- 中心差分法勝出,因為它是更高階的方法。
重點提示:選擇像中心差分法這樣的二階方法,讓你無需使用極小的步長就能得到非常精確的結果。
4. 使用科技工具與精確度限制
在考試中,你可能會被要求查看試算表的輸出結果。當使用試算表計算這些差分時,你會發現隨著 \(h\) 越來越小,估算值會越來越好……直到一個臨界點。
平衡的藝術
如果這聽起來有點反直覺,別擔心,因為 \(h\) 確實可能過小。
電腦和計算機儲存小數點後位數的能力有限(這稱為精度/浮點數限制)。如果 \(h\) 太小,\(f(x+h)\) 與 \(f(x)\) 的值會變得極其相似,導致電腦可能將差值四捨五入為零。這是數值運算中常見的錯誤!
試算表策略步驟
1. 建立一個 \(h\) 欄(例如:0.1, 0.05, 0.025...)。
2. 使用上述公式為你的估算建立欄位。
3. 觀察收斂 (Convergence):當 \(h\) 變小時,如果答案的數字不再改變,就代表你已經找到了達到該位數精確度的解。
重點提示:若要證明結果的精確度,請展示當你使用更小的 \(h\) 時,答案的前幾位小數已不再改變。
總結檢查清單
1. 前向差分: \( \frac{f(x+h) - f(x)}{h} \)(一階)
2. 中心差分: \( \frac{f(x+h) - f(x-h)}{2h} \)(二階)
3. 精確度: 中心差分通常更好;將 \(h\) 減半會使中心差分的誤差降為四分之一。
4. 收斂: 不斷減小 \(h\) 直到答案穩定,但若 \(h\) 過小,請留意計算機的捨入誤差!
你一定做得到的!數值微分其實就只是找到極小割線的斜率而已。繼續練習那些公式吧!