什麼是辛普森法則?
辛普森法則(Simpson's Rule)是一種數值積分方法,做法是每取三個點配出一條拋物線,藉此逼近曲線下方的面積。對於平滑函數而言,它遠比梯形法則精準,因為拋物線能描繪出曲線的彎曲程度,而不只是用直線段去硬湊。本計算機採用複合辛普森 1/3 法則,可在區間 \([a, b]\) 上計算任意單變數函數 \(f(x)\) 的積分值。
計算機使用說明
輸入函數時請以 x 作為變數,例如 x^2、sin(x) 或 exp(-x)*cos(x)。支援的運算子有 + − * / ^,可用函數包括 sin、cos、tan、exp、ln、log、sqrt 與 abs(角度一律以弧度計算)。接著設定下限 \(a\)、上限 \(b\),以及子區間數 \(n\)。由於本方法是把每兩個區間配成一條拋物線,所以 n 必須是偶數;若你輸入奇數,系統會自動向上進位為偶數。
公式解析
整個區間會被切成 \(n\) 等份,每份寬度為 \(\Delta x = (b - a)/n\),得到取樣點 \(x_0\)、\(x_1\)、…、\(x_n\)。兩端點 \(f_0\) 與 \(f_n\) 的權重為 1,奇數索引的內部點權重為 4,偶數索引的內部點權重為 2。將加權後的總和乘上 \(\Delta x/3\),即為積分的估計值。
$$\int_{a}^{b} f(x)\,dx \approx \frac{h}{3}\left[ f(x_0) + 4\!\!\sum_{i\,\text{odd}}\!\! f(x_i) + 2\!\!\sum_{i\,\text{even}}\!\! f(x_i) + f(x_n) \right]$$$$\text{where}\quad \left\{ \begin{aligned} f(x) &= \text{Function } f(x) \\ a &= \text{Lower limit}, \quad b = \text{Upper limit} \\ n &= \text{Subintervals (even)} \\ h &= \frac{b - a}{n}, \quad x_i = a + i\,h \end{aligned} \right.$$
實例演算
以 \(n = 4\) 計算 \(f(x) = x^2\) 從 0 到 2 的積分。此時 \(\Delta x = 0.5\),取樣點為 0、0.5、1、1.5、2,對應的函數值為 0、0.25、1、2.25、4。奇數索引總和 \(= 0.25 + 2.25 = 2.5\);偶數索引總和 \(= 1\)。結果 \(= (0.5/3)\cdot[0 + 4(2.5) + 2(1) + 4] = (0.5/3)\cdot 16 = 2.6667\),與精確值 \(8/3\) 完全吻合。
$$\int_{0}^{2} x^2\,dx \approx \frac{0.5}{3}\left[ 0 + 4(2.5) + 2(1) + 4 \right] = \frac{0.5}{3}\cdot 16 = 2.6667$$常見問題
為什麼 n 一定要是偶數?每一條拋物線都橫跨兩個子區間,因此區間總數必須能被 2 整除。
精準度如何?誤差會隨 \(\Delta x\) 的四次方縮小,因此對平滑函數而言,把 \(n\) 加倍大約能讓誤差減少到原本的 1/16。對三次多項式來說,辛普森法則甚至能算出完全精確的結果。
角度該怎麼處理?三角函數使用弧度,所以如果你手上是角度(度),請先換算成弧度再輸入。