技術導讀
Gibbs 現象
延續數值分析系列,介紹用有限 Fourier 係數近似不連續函數時,在跳躍附近持續出現的過衝與振盪。
2024年7月24日 · 約 1 分鐘閱讀
延續數值分析系列,本文討論 Gibbs 現象。上一篇介紹了以高次多項式插值時可能出現的 Runge 現象;Gibbs 現象則是近似具有不連續點的函數時出現的相關問題。
Gibbs 現象
Gibbs 現象出現在 Fourier 級數近似中。當有限數目的 Fourier 係數用來近似函數時,不連續點附近會出現振盪。
若函數含有跳躍不連續,Fourier 級數近似會在跳躍附近產生過衝與下衝。增加 Fourier 係數數目並不會令這些振盪完全消失;振盪區域會收窄,但峰值偏差仍然存在。這種行為稱為 Gibbs 現象。
我的專案
這個專案使用 Python 呈現 Gibbs 現象。我以 Chebyshev 多項式近似符號函數,並觀察不連續點附近的振盪。符號函數定義為:
sign(x)={−11 if x<0 if x≥0
作為複習,Chebyshev 多項式是一組定義於 [−1,1] 的正交多項式,常用於數值分析中的插值與函數近似。Chebyshev 節點定義為
xk=cos(2n2k−1π),k=1,2,…,n,
而 Chebyshev 多項式可遞迴定義為
T0(x)=1,T1(x)=x,Tn+1(x)=2xTn(x)−Tn−1(x).
專案結果亦製作成 HTML 互動視覺化: