中心差分(central difference)
要量你所站之處山坡的斜率,你可以只往前看,或只往後看——但最公允的估計是「兩邊都看」再取平均。中心差分正是如此:它用前方一個取樣與後方一個取樣把目標點夾在中間來量斜率,而這份小小的對稱性幾乎免費換來精度的大躍進。
一階導數的公式是 (f(x + h) - f(x - h)) / (2h)。把它和偏向一邊的前向差分 (f(x + h) - f(x)) / h 比較。泰勒展開說明了置中為何勝出:在前向差分中,領頭誤差是 (h/2) f''(x),為 h 階;但在中心差分中,對稱的 f''(x) 項互相抵消,留下的領頭誤差是 (h^2/6) f'''(x),為 h^2 階。把 h 減半,前向誤差只減半,中心誤差卻減為四分之一。同樣的對稱技巧給出標準的二階導數樣板 (f(x + h) - 2 f(x) + f(x - h)) / h^2,也是 O(h^2)。
只要點的兩側都有函數值,置中就是首選的預設做法——只用兩次計算就換來二階精度。誠實的限制有:你無法在資料集的最邊緣置中(邊界外沒有點),那裡得改用單邊公式;而且和所有有限差分一樣,它仍面對步長取捨,把 h 縮得太過會把精度讓給抵消。若想在同樣成本下大幅提高階數,就把中心差分送進理查森外推。
對 f(x) = sin(x) 在 x = 1(真值 f'(1) = cos 1 = 0.5403)。中心差分取 h = 0.01 得 (sin 1.01 - sin 0.99)/0.02 = 0.54030,誤差約 9e-6。同樣 h 的前向差分得 0.5361,誤差約 4e-3——糟了一千倍,純粹因為它偏向一邊。
對稱性消去 h 階誤差,精度因此躍升到 h^2 階。
高階不等於精確:中心差分仍有 O(h^2) 的誤差,而把 h 壓得太小會讓捨入誤差(來自兩個幾乎相等的值相減)淹沒這份收益。它只含偶次方的誤差展開,正是理查森外推對它格外有效的原因。