Legendre 多項式

本文的閱讀等級:中級

廣義化或稱一般化,是指將概念的定義予以修改或擴充使其適用於更大的範圍。廣義化是擴展數學理論與應用最常使用的方法之一,線性代數也有許多廣義化的斧鑿痕跡,函數空間(function space)即是一個明顯的例子。函數空間既是向量空間也是內積空間,因此內積空間的性質與運算同樣適用於函數空間(見“從幾何向量空間到函數空間”)。本文運用 Gram-Schmidt 正交化程序推導實多項式空間的一組正交基底──Legendre 多項式,給出一個遞迴生成公式,並討論 Legendre 多項式在函數近似的應用。

 
\mathcal{P} 為定義於區間 [a,b] 的連續實函數所構成的內積空間,設 fg 屬於 \mathcal{P},我們定義 fg 的內積如下(見“內積的定義”):

\displaystyle\left\langle f,g\right\rangle\overset{\underset{\mathrm{def}}{}}{=}\int_a^b f(x)g(x)w(x)dx

其中 w(x) 為一正函數,稱為權重函數(weighting function)。在某些情況下,若無法取得區間 [a,b] 中完整的連續函數值,可使用離散運算逼近:

\displaystyle\left\langle f,g\right\rangle=\sum_{i}f(x_i)g(x_i)w(x_i)

\left\langle f,g\right\rangle=0,我們稱 fg 正交。例如,當 w(x)=1,定義於區間 [-1,1] 的函數 f(x)=1g(x)=x 正交:

\displaystyle\left\langle f,g\right\rangle=\int_{-1}^{1}1\cdot xdx=\int_{-1}^1xdx=\left.\frac{x^2}{2}\right|_{-1}^1=0

又如內積定義於 [0,2\pi]w(x)=1,不難驗證若 m\neq n,正弦函數 f(x)=\sin mx 和餘弦函數 g(x)=\cos nx 正交。

 
\mathcal{P}_n 表示定義於區間 [-1,1]n 次實多項式形成的函數空間,對於 f, g\in\mathcal{P}_n,定義其內積為

\displaystyle\left\langle f,g\right\rangle=\int_{-1}^1f(x)g(x)dx

如同幾何向量空間 \mathbb{R}^n\mathbb{C}^n,我們關心 \mathcal{P}_n 的正交基底的動機也是為了計算正交投影,以求得最小平方近似函數。運用 Gram-Schmidt 正交化可獲得 \mathcal{P}_n 的一組正交基底(見“Gram-Schmidt 正交化與 QR 分解”),表示為 \{p_0(x),p_1(x),\ldots,p_n(x)\},其中 p_k(x)k 次多項式,且當 i\neq j\left\langle p_i,p_j\right\rangle=0。下面我們解說詳細的推導過程。針對 \mathcal{P}_n=\mathrm{span}\{1,x,x^2,\ldots,x^n\},先令 p_0(x)=1。如前述,在區間 [-1,1]1 正交於 x,立得 p_1(x)=x。再將 x^2 投影至 p_0(x)p_1(x) 的分量扣除:

\displaystyle  x^2-\frac{\left\langle x^2,1\right\rangle}{\left\langle 1,1\right\rangle}1-\frac{\left\langle x^2,x\right\rangle}{\left\langle x,x\right\rangle}x=x^2-\frac{2/3}{2}1-\frac{0}{2/3}x=x^2-\frac{1}{3}

因為投影殘量同時正交 p_0(x)p_1(x),故令 p_2(x)=x^2-\frac{1}{3}。同樣地,繼續將 x^3 投影至 p_0(x), p_1(x), p_2(x) 的分量扣除:

\displaystyle  x^3-\frac{\left\langle x^3,1\right\rangle}{\left\langle 1,1\right\rangle}1-\frac{\left\langle x^3,x\right\rangle}{\left\langle x,x\right\rangle}x-\frac{\left\langle x^3,x^2-\frac{1}{3}\right\rangle}{\left\langle x^2-\frac{1}{3},x^2-\frac{1}{3}\right\rangle}\left(x^2-\frac{1}{3}\right) =x^3-\frac{3}{5}x

也就得到 p_3(x)=x^3-\frac{3}{5}x。重複上述步驟即可導出 \mathcal{P}_n 的一組完整正交基底,以下是前幾個多項式:

\displaystyle\begin{aligned}  p_0(x)&=1\\  p_1(x)&=x\\  p_2(x)&=x^2-\frac{1}{3}\\  p_3(x)&=x^3-\frac{3}{5}x\\  p_4(x)&=x^4-\frac{6}{7}x^2+\frac{3}{35}\\  p_5(x)&=x^5-\frac{10}{9}x^3+\frac{5}{21}x\\  &\vdots\end{aligned}

 
n 增大時,Gram-Schmidt 正交化程序變得十分冗長,下面介紹一個較為簡潔的正交基底生成法。我們引用一個數值分析性質,即任何 \mathcal{P}_n 的正交基底序列都遵守下面的三項遞迴公式:

p_{k+1}(x)=(a_kx-b_k)p_k(x)-c_kp_{k-1}(x)

其中係數 a_k, b_k, c_k 由多項式 p_k(x)p_{k-1}(x) 的領先係數以及 \left\langle p_k,p_k\right\rangle\left\langle p_{k-1},p_{k-1}\right\rangle 決定。令 m_jp_j(x) 的領先係數,代入遞迴公式,比較等號兩邊 x^{k+1} 的係數,即得

\displaystyle  a_k=\frac{m_{k+1}}{m_k}

因為我們要求正交基底,即對於 i\neq j\left\langle p_i,p_j\right\rangle=0,也就有

\displaystyle  0=\left\langle p_{k+1},p_k\right\rangle=a_k\left\langle xp_k,p_k\right\rangle-b_k\left\langle p_k,p_k\right\rangle

\displaystyle  0=\left\langle p_{k+1},p_{k-1}\right\rangle=a_k\left\langle xp_k,p_{k-1}\right\rangle-c_k\left\langle p_{k-1},p_{k-1}\right\rangle

由第一式可得

\displaystyle  b_k=a_k\frac{\left\langle xp_k,p_k\right\rangle}{\left\langle p_k,p_k\right\rangle}

考慮領先係數,將 k 次多項式 xp_{k-1}(x) 表示如下:

\displaystyle  xp_{k-1}(x)=\frac{m_{k-1}}{m_k}p_k(x)+\sum_{j=0}^{k-1}d_jp_j(x)

利用 p_k(x) 的正交性質化簡 xp_k(x)p_{k-1}(x) 的內積:

\displaystyle  \left\langle xp_k,p_{k-1}\right\rangle=\left\langle p_k,xp_{k-1}\right\rangle=\frac{m_{k-1}}{m_k}\left\langle p_k,p_k\right\rangle=\frac{1}{a_{k-1}}\left\langle p_k,p_k\right\rangle

將此結果代回第二式即得

\displaystyle  c_k=\frac{a_{k}\left\langle p_k,p_k\right\rangle}{a_{k-1}\left\langle p_{k-1},p_{k-1}\right\rangle}

如果選擇首一(monic)多項式作為基底,所有領先係數皆為 m_k=1,就有

\displaystyle  a_k=1,~b_k=\frac{\left\langle xp_k,p_k\right\rangle}{\left\langle p_k,p_k\right\rangle},~c_k=\frac{\left\langle p_k,p_k\right\rangle}{\left\langle p_{k-1},p_{k-1}\right\rangle},~~k=1,2,\ldots

前述 \mathcal{P}_n 的正交基底便可由下列遞迴方式生成:

p_0(x)=1,

p_1(x)=x,

\displaystyle  p_{k+1}(x)= \left(x-\frac{\left\langle xp_k,p_k\right\rangle}{\left\langle p_k,p_k\right\rangle}\right)p_k(x)-\frac{\left\langle p_k,p_k\right\rangle}{\left\langle p_{k-1},p_{k-1}\right\rangle}p_{k-1}(x),~~k=1,2,\ldots

 
如果我們對多項式正規化使得 p_k(1)=1,~~k=0,1,2,\ldots,則首一性質 m_k=1 不復成立,多項式的領先係數由正規化條件決定,下面列出前幾個正規化多項式:

\begin{aligned}\displaystyle  p_0(x)&=1\\  p_1(x)&=x\\  p_2(x)&=\frac{1}{2}(3x^2-1)\\  p_3(x)&=\frac{1}{2}(5x^3-3x)\\  p_4(x)&=\frac{1}{8}(35x^4-30x^2+3)\\  p_5(x)&=\frac{1}{8}(63x^5-70x^3+15x)\\  &\vdots\end{aligned}

此即為 Legendre 多項式,見下圖。Legerdre 多項式還可用 Rodrigue 公式[1]表示如下:

\displaystyle  p_k(x)=\frac{1}{2^kk!}\frac{d^k}{dx^k}(x^2-1)^k

由此並可證明[2]

\displaystyle\left\langle p_k,p_k\right\rangle=\frac{2}{2k+1}

 
最後我們討論多項式函數近似問題。給定一個定義於區間 [a,b] 的實函數 f(x),我們希望以一個(至多)n 次實多項式 p(x) 來近似它,使得下列誤差平方最小:

\displaystyle\Vert f(x)-p(x)\Vert^2=\left\langle f(x)-p(x),f(x)-p(x)\right\rangle=\int_a^b(f(x)-p(x))^2dx

滿足此條件的多項式稱作 f(x) 的最小平方近似,其實也就是 f(x) 在實多項式空間 \mathcal{P}_n 的正交投影(見“正交補餘與投影定理”)。令 \{p_0(x),p_1(x),\ldots,p_n(x)\}\mathcal{P}_n 的一組正交基底,則任一 p(x)\in\mathcal{P}_n 可唯一表示為

p(x)=c_0p_0(x)+c_1p_1(x)+\cdots+c_np_n(x)

如同 Gram-Schmidt 正交化程序所示,持續計算 f(x) 至基底 p_0(x),p_1(x),\ldots,p_n(x) 的正交投影,總合其結果就得到 f(x)\mathcal{P}_n 的正交投影,故最小平方近似函數 p(x) 的組合係數為

\displaystyle  c_i=\frac{\left\langle f,p_i\right\rangle}{\left\langle p_i,p_i\right\rangle},~~i=0,1,\ldots,n

 
見下例,指數函數 e^{x} 的無窮展開級數如下:

\displaystyle  e^{x}=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\cdots

考慮區間 [-1,1],試求一個三次多項式 p(x) 使之最近似 e^x,也就是找出 d_kk=0,1,2,3,使最小化誤差平方:

\displaystyle  E=\int_{-1}^{1}\left(e^x-\sum_{k=0}^3d_kx^k\right)^2dx

為簡化數值計算,我們採用首一 Legendre 多項式作為 \mathcal{P}_3 的基底,則 p(x) 可表示為

\begin{aligned}\displaystyle  p(x)&=c_0p_0(x)+c_1p_1(x)+c_2p_2(x)+c_3p_3(x)\\  &=c_0\cdot 1+c_1\cdot x+c_2\left(x^2-\frac{1}{3}\right)+c_3\left(x^3-\frac{3}{5}x\right);\end{aligned}

接下來,尋求最小平方近似的工作純粹是計算 c_i=\left\langle e^x,p_i\right\rangle/\left\langle p_i,p_i\right\rangle,結果如下:

\begin{aligned}\displaystyle  \left\langle e^x,p_0\right\rangle&=\int_{-1}^{1}e^xdx=e-\frac{1}{e}\\  \left\langle e^x,p_1\right\rangle&=\int_{-1}^{1}e^xxdx=\frac{2}{e}\\  \left\langle e^x,p_2\right\rangle&=\int_{-1}^{1}e^x\left(x^2-\frac{1}{3}\right)dx=\frac{2}{3}e-\frac{14}{3e}\\  \left\langle e^x,p_3\right\rangle&=\int_{-1}^{1}e^x\left(x^3-\frac{3}{5}x\right)dx=-2e+\frac{74}{5e}\\  \left\langle p_0,p_0\right\rangle&=\int_{-1}^{1}1dx=2\\  \left\langle p_1,p_1\right\rangle&=\int_{-1}^{1}x^2dx=\frac{2}{3}\\  \left\langle p_2,p_2\right\rangle&=\int_{-1}^{1}\left(x^4-\frac{2}{3}x^2+\frac{1}{9}\right)dx=\frac{8}{45}\\  \left\langle p_3,p_3\right\rangle&=\int_{-1}^{1}\left(x^6-\frac{6}{5}x^4+\frac{9}{25}x^2\right)dx=\frac{8}{175}\end{aligned}

由此得到組合係數:

\begin{aligned}\displaystyle  c_0&=\frac{1}{2}\left(e-\frac{1}{e}\right)\approx 1.175\\  c_1&=\frac{3}{2}\left(\frac{2}{e}\right)\approx 1.104\\  c_2&=\frac{45}{8}\left(\frac{2}{3}e-\frac{14}{3e}\right)\approx 0.537\\  c_3&=\frac{175}{8}\left(-2e+\frac{74}{5e}\right)\approx 0.176\end{aligned}

故於區間 [-1,1] 最近似 e^x 的三次多項式為

\displaystyle\begin{aligned}  p(x)&=1.175\cdot 1+1.104\cdot x+0.537\cdot \left(x^2-\frac{1}{3}\right)+0.176\cdot \left(x^3-\frac{3}{5}x\right)\\  &=0.996+0.998x+0.537x^2+0.176x^3\end{aligned}

將此函數與 e^x 比較可發現兩者的係數相當接近,原因在於我們設定的近似區間 \vert x\vert\le 1,當 k 增大時,x^k 迅速趨於零。

 
引用來源:
[1] 維基百科 Rodrigues’ formula
[2] Properties of Legendre Polynomials

相關閱讀:
Advertisement
This entry was posted in 線性代數專欄, 內積空間 and tagged , , , . Bookmark the permalink.

4 Responses to Legendre 多項式

  1. pentiumevo says:

    老師,目前流通的Legendre的照片經考證是誤植,請參考

    Click to access rtx091101440p.pdf

    或是直接看

    圖中左邊才是Adrien-Marie Legendre,右邊則是傅立葉

    我倒覺得真正的Legendre看起來是霸氣十足! 您認為呢?

    • ccjou says:

      感謝指正,稍後再更正。本來其實我是想引用那張爆炸頭的。

      PS 原本系統設定迴響若含2個連結必須通過審核,已改為3個。

    • ccjou says:

      本來我以為這兩張圖片都是 Legendre。

  2. GEISIN IKU says:

    ak=mk+1/mk 這邊沒看懂😂

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s