技術導讀

Chebyshev 插值

介紹 Chebyshev 多項式與節點,並說明它們如何減輕高次多項式插值的 Runge 現象。

2024年7月21日 · 約 1 分鐘閱讀

為甚麼需要插值函數?插值是數值分析的基礎技術,讓我們利用一組離散資料點近似未知函數。建立一條穿過這些點的插值多項式後,便可估計區間內其他位置的函數值。工程、物理及電腦科學的建模與模擬,都經常需要這種函數近似。

Chebyshev 插值使用 Chebyshev 多項式近似函數,尤其適合處理振盪行為或需要較高準確度的情況。

其核心思想,是選擇 Chebyshev 多項式的根作插值點。這些 Chebyshev 節點並非等距分佈,而是以能夠減少插值誤差的方式集中在區間兩端。相對其他節點選擇,Chebyshev 插值往往能以較少點數取得良好近似,因此是數值分析與科學計算中高效而有力的工具。

本專案由理論走到實作:選擇插值點、計算插值多項式,再評估近似準確度。實例與練習則展示如何把 Chebyshev 插值用於具體問題。

Chebyshev 多項式

Chebyshev 多項式是一族出現在近似理論、數值分析與訊號處理的正交多項式,以俄羅斯數學家 Pafnuty Chebyshev 命名,並定義於 [1,1][-1,1]。第一類 Chebyshev 多項式記為 Tn(x)T_n(x),遞迴定義如下:

T0(x)=1,T1(x)=x,Tn+1(x)=2xTn(x)Tn1(x),n1.T_0(x)=1,\quad T_1(x)=x,\quad T_{n+1}(x)=2xT_n(x)-T_{n-1}(x),\quad n\geq1.

Chebyshev 節點

與使用等距節點的常見 Lagrange 插值設定不同,Chebyshev 插值採用第一類 Chebyshev 多項式的根:

xk=cos(2k12nπ),k=1,2,,n.x_k=\cos\left(\frac{2k-1}{2n}\pi\right), \quad k=1,2,\ldots,n.

Runge 現象

多項式插值的一項困難是 Runge 現象:使用高次多項式近似函數時,區間邊緣可能出現明顯振盪,令插值誤差大幅增加。

Chebyshev 節點在兩端較密集,能減輕這種誤差放大。適當選擇插值位置,可在提高多項式次數時保持較穩定近似;這正是 Chebyshev 插值相對等距節點的重要優勢。

我的專案

專案以 Python 實作 Chebyshev 插值,並示範它近似振盪函數的效果。透過與其他插值方法比較,可以具體觀察 Chebyshev 多項式在準確函數近似上的優點。

以下 HTML 互動視覺化呈現專案結果: