線性差分方程
線性差分方程介紹
線性微分方程是連續的,即變量t是連續的,需要求的是未知函數$y(t)$;線性差分方程是離散的,變量t的取值只能為整數,需要求的是未知序列$y_t$。
差分(difference),即相鄰兩個數據之間的差,也就是變化量,用$\Delta $來表示
$\Delta y_t = y_{t+1} – y_t$
$\Delta y_t$被定義為一階差分,二階差分定義如下
$\Delta^2 y_t = \Delta(\Delta y_t) = \Delta y_{t+1} – \Delta y_t = (y_{t+2} – y_{t+1}) – (y_{t+1} – y_t) = y_{t+2}-2y_{t+1} + y_t$
如此類推,n階差分中包含的項為$y_t,y_{t+1},…,y_{t+n}$,最高與最低項的下標相差$n$。
線性差分方程類比到線性微分方程的式子,
$L[y_t] = \Delta^n y_t + A_1\Delta^{n-1}y_t +\cdot \cdot \cdot+ A_{n-1}\Delta y_t + A_ny_t$
式子當中的$\Delta t = 1$,因此省略了。把差分拆開後組合,得到
$L[y_t] = y_{t+n} + B_1y_{t+n-1}+ \cdot \cdot \cdot + B_{n-1} y_{t+1} + B_n y_t $
同樣的,最高與最低項下標相差$n$。
二階線性差分方程求解例子[1]
下面的例子可以當作二階線性差分方程求解的範例,從這些例子可以一步步深入了解線性差分方程。
二階齊次線性差分方程(2nd-order Homogeneous Linear Difference Equation)
設有線性方程如下
$u_n = u_{n-1}+u_{n-2}$
其中$u_0 = 1,u_1 = 1$,求$u_n$。
解:
把u_n相關項移到等號左邊:
$u_n – u_{n-1} –u_{n-2} = 0$
此時,等式右邊為0,表明該方程為齊次(Homogeneous)。
假設:
$u_n = A\omega ^n$
那麽:
$A\omega ^n – A\omega ^{n-1} – A\omega^{n-2} = 0$
等式兩邊同時除去$A\omega^{n-2}$:
$\omega^2 - \omega - 1 = 0$
上面是一個一元二次方程,其兩個根分別為:
$\omega_1 = \frac{1+\sqrt{5}}{2} \ ,\ \omega_2 = \frac{1-\sqrt{5}}{2}$
任意$A_1$代入$u_n = A_1\omega_1^n$,都滿足$u_n-u_{n-1}-u_{n-2} = 0$。
任意$A_2$代入$u_n = A-2\omega_2^n$,都滿足$u_n-u_{n-1}-u_{n-2} = 0$。
因此我們這裏得到一個通解:
$\color{red}{u_n = A_1\omega_1^n + A_2 \omega_2^n}$
把這個通解代入到$u_n-u_{n-1}-u_{n-2}$看是否得到0:
$(A_1\omega_1^n + A_2 \omega_2^n) – (A_1\omega_1^{n-1} + A_2 \omega_2^{n-1}) – (A_1\omega_1^{n-2} + A_2 \omega_2^{n-2}$
整理後,得到:
$A_1\omega_1^{n-2}(\omega_1^2-\omega_1-1) + A_2\omega_2^{n-2}(\omega_2^2 – \omega - 1)$
因為括號內的部分等於0,所以式子等於0。
把$\omega_1,\omega_2$的值代入通解,得到:
$u_2 = A_1\left( \frac{1+\sqrt{5}}{2} \right)^n + A_2\left( \frac{1-\sqrt{5}}{2} \right)^n$
在忽略初始條件的時候我們得到上述通解,下面我們結合初始條件來求$A_1,A_2$的值…
$\left\{\begin{matrix}
u_0 = & A_1 + A_2 & = 1 \\
u_1 = & \frac{A_1(1+\sqrt{5}) + A_2(1-\sqrt{5})}{2} & = 1
\end{matrix}\right.$
解得:
$\left\{\begin{matrix}
A_1 &=& \frac{1+\sqrt{5}}{2\sqrt{5}} \\
A_2 &=& -\frac{1-\sqrt{5}}{2\sqrt{5}}
\end{matrix}\right.$
把$A_1,A_2$代入通解,得:
$u_n = \frac{1+\sqrt{5}}{2\sqrt{5}}\left( \frac{1+\sqrt{5}}{2} \right)^n - \frac{1-\sqrt{5}}{2\sqrt{5}}\left( \frac{1-\sqrt{5}}{2} \right)^n$
整理得到最終結果:
$u_n = \frac{1}{\sqrt{5}}\left[ \left( \frac{1+\sqrt{5}}{2} \right)^{n+1} - \left( \frac{1-\sqrt{5}}{2} \right)^{n+1}\right]$
二階齊次線性差分方程II
設有線性方程如下
$u_n = pu_{n+1} + qu_{n-1}$
初始值為$u_0 = 0, u_l = 1$,並且$p+q = 1$,求$u_n$
解:
把所有$u_n$相關項轉移到等號左邊:
$pu_{n+1} – u_n + qu_{n-1} = 0$
假設:
$u_n = A\omega^n$
得到:
$pA\omega^{n+1} – A\omega^n + qA\omega^{n-1} = 0$
$p\omega^2 – \omega + q = 0$
$p\omega^2 – (p+q)\omega + q = 0$
$(\omega-1)(p\omega -q) = 0$
解得兩個根為:
$\omega_1 = 1 \ , \ \omega_2 = \frac{q}{p}$
得到通解:
$\color{red}{u_n = A_1(1)^n + A_2 \left( \frac{q}{p} \right)^n}$
代入$pu_{n+1}-u_n+qu_{n-1}$檢查該通解是否等於0:
$\left[pA_1(1)^{n+1}+pA_2\left(\frac{q}{p} \right )^{n+1} \right ]-\left[pA_1(1)^{n}+pA_2\left(\frac{q}{p} \right )^{n} \right ]+\left[pA_1(1)^{n-1}+pA_2\left(\frac{q}{p} \right )^{n-1} \right ]$
整理得到:
$A_1[p-1+q]+A_2\left(\frac{q}{p} \right )^{n-1}\left[p\left(\frac{q}{p} \right )^2-\frac{q}{p}+q \right ]$
由於$p +q = 1$,因此上面的式子等於:
$0 + A_2\left(\frac{q}{p} \right )^{n-1}\left[ \frac{q^2}{p} - \frac{q}{p} + q \right]
=A_2\left(\frac{q}{p} \right )^{n-1}\left[ \frac{q}{p}(q-1)+q \right ]
=A_2\left(\frac{q}{p} \right )^{n-1}\left[\frac{q}{p}(-p)+q \right ] =0$
上面已經得到了通解,下面通過初始條件求$A_1,A_2$的值…
當$q\neq p$時:
$\left\{\begin{matrix}
u_0 &= &A_1+A_2 &=0 \\
u_l &= &A_1+A_2\left(\frac{q}{p} \right )^l &=1
\end{matrix}\right.$
解方程組得到
$A_1 = –A_2 = \frac{-1}{\left( \frac{q}{p}\right)^l - 1}$
那麽所求的解為
$u_n = \frac{-1}{\left( \frac{q}{p}\right)^l - 1} + \frac{ \left( \frac{q}{p} \right)^n }{\left( \frac{q}{p}\right)^l - 1}$
整理後得到
$u_n = \frac{\left( \frac{q}{p} \right)^n -1 }{\left( \frac{q}{p} \right)^l -1}$
當$p = q$時:
$\omega_2 = \frac{q}{p} = 1 = \omega_1$
即得到重根。此時,把根代入初始條件式子,得到
$\left\{\begin{matrix}
u_0 &= &A_1+A_2 &=0 \\
u_l &= &A_1+A_2 &=1
\end{matrix}\right.$
毫無疑問,上面的式子是不成立的,因此在出現重根的時候,表明我們的初始假設$u_n = A\omega^n$是錯的,所以需要嘗試其它的假設:
$u_n = (A_1+A_2n)\omega^n$
把該假設的式子代入差分方程得到:
$\begin{align*}
0
&=pu_{n+1}-u_n+qu_{n-1} \\
&=p(A_1+A_2(n+1))\omega^{n+1} + (A_1+A_2n)\omega^n + q(A_1+A_2(n-1))\omega^{n-1}\\
&=p(A_1+A_2(n+1))\omega^2 + (A_1+A_2n)\omega + q(A_1+A_2(n-1))\\
&=p(A_1+A_2n+A_2)\omega^2 + (A_1+A_2n)\omega + q(A_1+A_2n-A_2)\\
&=A_1(p\omega^2-\omega+q) + A_2n(p\omega^2-\omega+q) + A_2(p\omega^2-q)
\end{align*}$
可以發現原來的重根$\omega = 1$可以使得上面等式成立,因此$\omega=1$就是新假設的根。因此通解為
$u_n = (A_1+A_2n)(1)^n$
現通過初始條件求$A_1$、$A_2$
$\left\{\begin{matrix}
u_0 &= &A_1+A_2\times 0 &=0 \\
u_l &= &A_1+A_2\times l &=1
\end{matrix}\right.$
解得:
$\left\{\begin{matrix}
A_1 =0 \\
A_2 = \frac{1}{l}
\end{matrix}\right.$
代入通解得到
$u_n = \frac{n}{l}$
二階非齊次線性差分方程(2nd-order Inhomogeneous Linear Difference Equation)
設有線性方程如下:
$v_n = 1+pv_{n+1}+qv_{n-1}$
其中$v_0 = v_l = 0$,$p+q = 1$
解:
把所有$v$相關項移到等號左邊,其余項移到等號右邊:
$pv_{n+1} – v_n + qv_{n-1} = -1$
如果等號右邊為0,那麽該方程就是齊次的(Homogeneous),如我們前面兩小節求解的方程,否則該方程就是非齊次的(Inhomogeneous),如我們這一小節求解的方程。
在求解非齊次方程的時候,首先我們假設該方程是齊次的,那麽就能得到:
$v_n = A_1(1)^n + A_2\left(\frac{q}{p}\right)^n \qquad provided \quad p\neq q$
不過由於該方程實際上是非齊次的,所以我們應該加上一個附加項:
$v_n = A_1(1)^n + A_2\left(\frac{q}{p}\right)^n + f(n)$
上述的$v_n$理應使得$pv_{n+1} – v_{n} + qv_{n-1} = -1$成立。
那麽把上述$v_n$代入原方程,得到:
$\begin{align*}
pv_{n+1}-v_n+qv_{n-1}
&=p\left\{A_1(1)^{n+1}+A_2\left(\frac{q}{p}\right )^{n+1}+f(n+1) \right \} \\
&-\ \ \left\{A_1(1)^{n}+A_2\left(\frac{q}{p}\right )^n+f(n) \right \}\\
&+q\left\{A_1(1)^{n-1}+A_2\left(\frac{q}{p}\right )^{n-1}+f(n-1) \right \} \\
&=pu_{n+1} - u_n + qu_{n-1} + pf(n+1) - f(n) + qf(n-1)\\
&= pf(n+1) - f(n) + qf(n-1)\\
&=-1
\end{align*}$
剩下的只有等式左邊的$f(n)$相關項以及等式右邊的多項式。$f(n)$展開的一般形式為
$\displaystyle{ \sum_{k=0}^{m}B_kn^k = B_{0} + B_1n+B_2n^2+\cdot\cdot\cdot+B_mn^m}$
實際上$f(n)$需要根據等式右邊的多項式進行選擇,如:等式右邊的多項式最高次項為$n^2$,那麽則可以假設$f(n) = a+bn+cn^2$。而本例子中,等式右邊為常數-1,那麽我們可以假設:
$f(n) = a$
即有
$pf(n+1) – f(n) + qf(n-1) = pa -a+qa = -1$
因此
$a = \frac{-1}{p-1+q}$
由於有初始條件$p+q = 1$,因此$a = \frac{-1}{p-1+q}$不存在,這就表明$f(n) = a$假設不成立。接下來可以假設:
$f(n ) = a + bn$
即
$\begin{align*}
&\ \quad pf(n+1)-f(n)+qf(n-1) \\
&=p(a+b(n+1))-(a+bn)+q(a+b(n-1)) \\
&=a(p-1+q)+bn(p-1+q)+b(p-q)\\
&=b(p-q)\\
&=-1
\end{align*}$
表明$a$可以取任意值,我們取$a = 0$;$b = \frac{-1}{p-q}$,這需要$p\neq q$。
如果$p = q$,則上面的假設不成立,那麽需要進一步假設:
$f(n) = a + bn + cn^2$
即
$\begin{align*}
&\ \quad pf(n+1)-f(n)+qf(n-1)\\
&=p(a+b(n+1)+c(n+1)^2)-(a+bn+cn^2)+q(a+b(n-1)+c(n-1)^2) \\
&=a(p-1+q)+bn(p-1+q)+b(p-q) + cn^2(p-1+q)+cn(2-2)+c(p+q)\\
&=0+0+0+0+0+c(p+q)\\
&=c \\
&=-1
\end{align*}$
表明$a,b$可以取任意值,我們取$a = 0,b=0$;$c = -1$,這是當$p=q$的情況。
綜合上述結果:
$\left\{\begin{matrix}
v_n &= &A_1+A_2\left(\frac{q}{p} \right )^n - \frac{n}{p-q} &,&p\neq q \\
v_n &= &A_1+A_2-n^2 &,&p=q
\end{matrix}\right.$
最後就是根據初始條件求出$A_1,A_2$了(略)。
二階線性差分方程的表達及其求解方法
本節的目的在於通過上述例子總結出二階線性差分方程求解的步驟,看完上面的例子就能理解各個步驟的意義了。
一般的二階線性差分方程的表達式
二階線性差分方程的一般表達式如下:
$ay_{t+2} + by_{t+1} + cy_t = x(t) \qquad t\in N^+$
一般來說,等式右邊多為常數。
$ay_{t+2} + by_{t+1} + cy_t = d$
當$d=0$時,當前方程為齊次(homogeneous),否則為非齊次(inhomogeneous)。
線性差分方程的解的結構
線性差分方程的解分為兩個部分:
$y(t) = y_h(t) + y_p(t)$
其中 $y_n(t)$為通解(general solution),又稱為齊次解(homogeneous solution);$y_p(t)$稱為特解(particular solution)。
二階線性差分方程的求解過程
二階齊次線性差分方程
求解齊次線性差分方程得到的解被稱為通解,又稱為齊次解
-
假設
$y_t = A\omega^t$
-
把該假設代入原差分方程,整理後得到一元二次方程:
$a\omega^2+b\omega+c = 0$
-
解一元二次方程得到兩個根:
$\omega_{1,2} = \frac{-b\pm\sqrt{b^2-4ac}}{2a}$
-
如果兩個根不相等,則
$y_t = A_1\omega_1^t + A_2\omega_2^t$
-
如果兩個根相等(重根),則
$y_t = (A_1+A_2n)\omega^t$
-
通過初始條件求出$A_1,A_2$。
二階非齊次線性差分方程
非齊次線性差分方程的解分為通解以及特解兩部分。
-
令等式右邊等於0,得到二階齊次線性差分方程:
$ay_{t+2} + by_{t+1} + cy_t = 0$
求解該齊次方程,得到通解$y_h(t)$。
-
觀察方程等式右邊的式子,進行相應特解假設,我們這裏的等式右邊為常數$b$,因此假設特解為:
$y_p(t) = D$
如果等式右邊為$t^k$,我們按理應該假設
$y_p(t) = D_0t^k + D_1t^{k-1}+\cdot\cdot\cdot+D_k$
-
如果上述假設不成立,則需要在重新對特解進行假設,假設時增加一個階:
$y_p(t) = D \Rightarrow y_p(t) = D_0t+D_1$
-
重復上一步驟直到得到正確的特解。
-
通解與特解相加得到$y_t$:
$y(t) = y_h(t) + y_p(t)$
-
通過初始條件求出$A_1,A_2$。
上面討論的是非重根以及重根的情況,實際上$\omega = \frac{-b\pm\sqrt{b^2-4ac}}{2a}$可能會由於$b^2-4ac<0$而得到共軛復數的情況,二階線性差分方程中的根的討論中有較為詳細的描述。
N階線性差分方程的表達與解[2]
表達式
N階線性差分方程表示呈如下形式:
$A_0y_t+A_1y_{t-1}+\cdot\cdot\cdot+A_{N-1}y_{t-N+1}+A_Ny_{t-N} = B_0x_t+B_1x_{t-1}+\cdot\cdot\cdot+B_{M-1}x_{t-M+1}+B_{M}x_{t-M}$
或寫成:
$\displaystyle{ \sum_{k=0}^{N}A_ky_{t-k} = \sum_{r=0}^{M}B_rx_{t-r} }$
齊次解
等式左邊用於求齊次解(通解),在求齊次解的時候我們會假設y_t = C\omega^t,然後代入原方程求根$\omega$。
如果求得有N個不同的$\omega$,即$\omega$非重根時
$y_t = C_1\omega_1^t + C_2\omega_2+\cdot\cdot\cdot+C_N\omega_N^t = \displaystyle{\sum_{k=1}^NC_k\omega_k^t}$
如果求得的根中有K個相同的根$\omega_1$,即K次重根時
$y_t = \displaystyle{ (D_1t^{K-1}+D_2t^{K-2}+\cdot\cdot\cdot+D_{K-1}t+D_K)\omega_1^t+C_2\omega_2^t+C_3\omega_3^t+\cdot\cdot\cdot+C_{N-K+1}\omega_{N-K+1}^t = \sum_{m=1}^{K}D_mt^{K-m}\omega_1^t+\sum_{n=2}^{N-K+1}C_n\omega_n^t }$
如果求得的根中存在共軛根$\omega_{1,2}=h\pm iv = Re^{\pm j\Theta}$,那麽$y_t$的會存在虛數部分,虛數部分為:
$C_1(h+iv)^t+C_2(h-iv)^t = C_1R^tcos(t\Theta)+iC_2R^tsin(t\Theta)$
如果有K個重復的共軛根,那麽虛數部分如下:
$(P_1t^{K-1}+P_2t^{K-2}+\cdot\cdot\cdot+P_{K-1}t+P_{K})R^tcos(t\Theta)+i(Q_1t^{K-1}+Q_2t^{K-2}+\cdot\cdot\cdot+Q_{K-1}t+Q_{K})R^nsin(t\Theta)$
特解
等式右邊的項用於求特解。$x(t)$在離散時間信號系統中被稱為激勵(excitation),一般為已知式子,把激勵代入等式右邊即得到自由項,不過似乎我們常見的右邊的項都是比較簡單的。自由項存在多種形式,不同的形式對應不同特解。
-
自由項為$t^k$的多項式
如果$\omega \neq 1$,特解為:
$y_p(t) = D_0t^k+D_1n^{k-1}+\cdot\cdot\cdot+D_k$
如果有K個$\omega = 1$的重根
$y_p(t) = t^K(D_0t^k+D_1n^{k-1}+\cdot\cdot\cdot+D_k)$
-
自由項為$a^n$
如果$a \neq \omega$,
$y_p(t) = Da^t$
如果有K個重根$\omega_1$,且$a = \omega_1$
$y_p(t) = (D_0t^K+D_1n^{K-1}+\cdot\cdot\cdot+D_K)a^t$
-
自由項為$sint\Theta$或者$cost\Theta$
$y_p(t) = D_1sint\Theta+D_2cost\Theta$
-
自由項為$\alpha^t(A_1sinn\Theta+A_2cosn\Theta)$
如果$\omega \neq \alpha e^{\pm i\Theta}$
$y_p(t) = \alpha^n(D_1sinn\Theta+D_2cosn\Theta)$
如果$\omega = \alpha e^{\pm i\Theta}$
$y_p(t) = n^K\alpha^n(D_1sinn\Theta+D_2cosn\Theta)$
※這一小節關於特解部分可能會有些錯誤,不過由於這並不是我們要討論的重點,所以不去求證了…
參考文獻:
[1] CAM.AC.UK : Difference Equations
[2] CCNU:常系數線性差分方程的求解
線性差分方程