歡迎來到方程數值解法 (Numerical Solution of Equations)!
在你之前的數學學習中,你已經學過如何用代數方法解 \(2x + 4 = 10\) 或 \(x^2 - 5x + 6 = 0\) 這一類的方程。但當你遇到 \(x^3 + 5x - 3 = 0\) 這種方程時,該怎麼辦呢?對於大多數高次方程,並沒有一個簡單的「公式」可以直接求解。
在本章中,我們將探索數值方法 (numerical methods)。當我們難以求出精確解時,這些巧妙的技巧能幫助我們找到「足夠精確」的答案(近似值)。你可以把它想像成一個「尋寶遊戲」,我們就像在玩「冷熱」遊戲一樣,不斷靠近藏在隱蔽處的寶藏(即根)!
1. 基礎:定位根的位置
在我們鎖定解的精確位置之前,需要先知道它大約在哪裡。我們可以透過尋找符號變化 (sign change) 來做到這一點。
規則:如果函數 \(f(x)\) 是連續的 (continuous)(即函數圖形沒有間斷或跳躍),且你找到兩個數 \(a\) 和 \(b\),使得 \(f(a)\) 和 \(f(b)\) 的符號相反(一個為正,一個為負),那麼在這兩個數之間必定至少存在一個根 (root)。
類比:想像你正從河的一岸走到另一岸。如果你從南岸(負數)出發,最後到達北岸(正數),你必然在某個時刻踩在河床上(零點)!
快速回顧:
- \(f(x) > 0\) 表示圖形位於 x 軸上方。
- \(f(x) < 0\) 表示圖形位於 x 軸下方。
- \(f(x) = 0\) 就是根所在的位置!
避免常見錯誤:務必檢查題目是否說明函數是連續的。如果函數存在漸近線 (asymptote)(即圖形無法跨越的「牆」,例如 \(y = \frac{1}{x}\)),那麼即使出現符號變化,圖形也可能根本沒有碰到零點!
重點總結:\(f(a)\) 和 \(f(b)\) 之間的符號變化,通常代表在區間 \([a, b]\) 內存在一個根。
2. 方法一:二分法 (Interval Bisection)
這是最直觀的方法。我們找到一個包含根的區間,然後不斷地將其對半切分,直到找到足夠接近的答案為止。
步驟流程:
1. 找出一個發生符號變化的區間 \([a, b]\)。
2. 計算中點 (midpoint):\(m = \frac{a + b}{2}\)。
3. 計算 \(f(m)\)。
4. 觀察 \(f(m)\) 的符號:
- 如果 \(f(m)\) 的符號與 \(f(a)\) 不同,則根現在位於新的區間 \([a, m]\)。
- 如果 \(f(m)\) 的符號與 \(f(b)\) 不同,則根現在位於新的區間 \([m, b]\)。
你知道嗎?電腦非常喜歡這個方法,因為它編程簡單,儘管對人類手算來說可能會慢一些!
重點總結:二分法透過重複將搜尋範圍減半,從而「困住」根的位置。
3. 方法二:線性插值法 (Linear Interpolation)
二分法雖然穩健,但有點「盲目」——它不考慮根到底是偏向哪一端。線性插值法則更聰明;它假設兩點之間的曲線是一條直線,從而更準確地估計根的位置。
我們使用估計根 \(x\) 的公式:
\( \frac{x - a}{b - x} = \left| \frac{f(a)}{f(b)} \right| \)
別擔心,這看起來可能有點複雜!其實你只是在運用相似三角形 (similar triangles) 的原理,也可以把它視為一種加權平均。
操作步驟:
1. 確定發生符號變化的區間 \([a, b]\)。
2. 畫出兩個三角形,或直接代入上面的比例公式。
3. 解出 \(x\)。這個 \(x\) 就是你得到的更精確的近似值。
4. 檢查 \(f(x)\) 的符號,如有必要,使用更小的區間重複此過程。
小貼士:簡單畫出兩個點 \((a, f(a))\) 和 \((b, f(b))\) 並將它們連成一條直線,能幫助你直觀地看出估計出的根 \(x\) 是從哪裡來的。
重點總結:線性插值法利用函數值(它們離零有多「遠」)來做出比單純取中點更好的估計。
4. 方法三:牛頓-拉弗森法 (Newton-Raphson Process)
這通常是最快的方法。我們不使用兩個點來困住根,而是取一個初始猜測值 (initial guess) (\(x_0\)),並利用曲線在該點的斜率 (gradient) 向下滑動,直接奔向根。
公式:
\( x_{n+1} = x_n - \frac{f(x_n)}{f'(x_n)} \)
步驟流程:
1. 對函數進行微分以求出 \(f'(x)\)。
2. 將你的初始猜測值 (\(x_0\)) 代入公式以得到 \(x_1\)。
3. 將 \(x_1\) 再代入公式得到 \(x_2\),以此類推。
4. 當數值不再有顯著變化(收斂)時即可停止。
記憶口訣:記住「減去函數除以函數微分」來回憶分數部分:\( - \frac{f}{f'} \)。
何時會失敗?
牛頓-拉弗森法非常出色,但它有一個弱點:
- 如果你的猜測值位於駐點 (stationary point)(即斜率 \(f'(x) = 0\) 的地方),公式就會失效,因為你不能除以零!
- 在現實中,這就像試圖在一個完全平坦的屋頂上向下滑——你哪裡也去不了。
鼓勵一下:微分有時是這部分最難的地方。在 FP1 中,你只需要使用 P1 和 P2 學過的微分法則(如冪法則)。如果你會對 \(x^n\) 微分,那你就能掌握牛頓-拉弗森法!
重點總結:牛頓-拉弗森法使用切線向根「衝刺」,但必須確保斜率不為零才能運作。
總結檢查清單
1. 符號變化:檢查 \(f(a)\) 和 \(f(b)\)。符號相反 = 存在根(前提是函數連續)。
2. 二分法:不斷找中點。慢但穩健。
3. 線性插值:使用相似三角形/比例。比二分法更聰明。
4. 牛頓-拉弗森:使用 \(x - \frac{f(x)}{f'(x)}\)。速度最快,但要注意避開斜率為零的點!
5. 精度:如果題目要求保留 2 位小數,為了確保萬無一失,請計算到你的 \(x\) 值在小數點後第 3 位都保持一致為止。