資源描述:
《差分方程的解法分析及matlab實(shí)現(xiàn)(程序)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、差分方程的解法分析及MATLAB實(shí)現(xiàn)(程序)摘自:張登奇,彭仕玉.差分方程的解法分析及其MATLAB實(shí)現(xiàn)[J].湖南理工學(xué)院學(xué)報.2014(03)引言線性常系數(shù)差分方程是描述線性時不變離散時間系統(tǒng)的數(shù)學(xué)模型,求解差分方程是分析離散時間系統(tǒng)的重要內(nèi)容.在《信號與系統(tǒng)》課程中介紹的求解方法主要有迭代法、時域經(jīng)典法、雙零法和變換域法[1].1迭代法例1已知離散系統(tǒng)的差分方程為,激勵信號為,初始狀態(tài)為.求系統(tǒng)響應(yīng).根據(jù)激勵信號和初始狀態(tài),手工依次迭代可算出.利用MATLAB中的filter函數(shù)實(shí)現(xiàn)迭代過程的m程序如下:clc;clear;formatcompact;a=[1,-3
2、/4,1/8],b=[1,1/3,0],%輸入差分方程系數(shù)向量,不足補(bǔ)0對齊n=0:10;xn=(3/4).^n,%輸入激勵信號zx=[0,0],zy=[4,12],%輸入初始狀態(tài)zi=filtic(b,a,zy,zx),%計算等效初始條件[yn,zf]=filter(b,a,xn,zi),%迭代計算輸出和后段等效初始條件2時域經(jīng)典法用時域經(jīng)典法求解差分方程:先求齊次解;再將激勵信號代入方程右端化簡得自由項,根據(jù)自由項形式求特解;然后根據(jù)邊界條件求完全解[3].用時域經(jīng)典法求解例1的基本步驟如下.(1)求齊次解.特征方程為,可算出.高階特征根可用MATLAB的roots函
3、數(shù)計算.齊次解為(2)求方程的特解.將代入差分方程右端得自由項為當(dāng)時,特解可設(shè)為,代入差分方程求得.(3)利用邊界條件求完全解.當(dāng)n=0時迭代求出,當(dāng)n≥1時,完全解的形式為選擇求完全解系數(shù)的邊界條件可參考文[4]選.根據(jù)邊界條件求得.注意完全解的表達(dá)式只適于特解成立的n取值范圍,其他點(diǎn)要用及其延遲表示,如果其值符合表達(dá)式則可合并處理.差分方程的完全解為4MATLAB沒有專用的差分方程求解函數(shù),但可調(diào)用maple符號運(yùn)算工具箱中的rsolve函數(shù)實(shí)現(xiàn)[5],格式為y=maple('rsolve({equs,inis},y(n))'),其中:equs為差分方程表達(dá)式,ini
4、s為邊界條件,y(n)為差分方程中的輸出函數(shù)式.rsolve的其他格式可通過mhelprsolve命令了解.在MATLAB中用時域經(jīng)典法求解例1中的全響應(yīng)和單位樣值響應(yīng)的程序如下.clc;clear;formatcompact;yn=maple('rsolve({y(n)-3/4*y(n-1)+1/8*y(n-2)=(3/4)^n+1/3*(3/4)^(n-1),y(0)=5/2,y(-1)=4},y(n))'),hn=maple('rsolve({y(n)-3/4*y(n-1)+1/8*y(n-2)=0,y(0)=1,y(1)=13/12},y(n))'),3雙零法根據(jù)
5、雙零響應(yīng)的定義,按時域經(jīng)典法的求解步驟可分別求出零輸入響應(yīng)和零狀態(tài)響應(yīng).理解了雙零法的求解原理和步驟,實(shí)際計算可調(diào)用rsolve函數(shù)實(shí)現(xiàn).yzi=maple('rsolve({y(n)-3/4*y(n-1)+1/8*y(n-2)=0,y(-1)=4,y(-2)=12},y(n))'),yzs=maple('rsolve({y(n)-3/4*y(n-1)+1/8*y(n-2)=(3/4)^n+1/3*(3/4)^(n-1),y(0)=1,y(-1)=0},y(n))'),4變換域法設(shè)差分方程的一般形式為.對差分方程兩邊取單邊z變換,并利用z變換的位移公式得整理成形式有可以看
6、出,由差分方程可直接寫出和,系統(tǒng)函數(shù),將系統(tǒng)函數(shù)進(jìn)行逆z變換可得單位樣值響應(yīng).由差分方程的初始狀態(tài)可算出,由激勵信號的初始狀態(tài)可算出,將激勵信號進(jìn)行z變換可得,求解z域代數(shù)方程可得輸出信號的象函數(shù)對輸出象函數(shù)進(jìn)行逆z變換可得輸出信號的原函數(shù).利用z變換求解差分方程各響應(yīng)的步驟可歸納如下:(1)根據(jù)差分方程直接寫出、和,的逆變換即為單位樣值響應(yīng);(2)根據(jù)激勵信號算出,如激勵不是因果序列則還要算出前M個初始狀態(tài)值;(3)根據(jù)差分方程的初始狀態(tài)和激勵信號的初始狀態(tài)算出和;(4)在z域求解代數(shù)方程得輸出象函數(shù),的逆變換即為全響應(yīng);(5)分析響應(yīng)象函數(shù)的極點(diǎn)來源及在z平面中的位置
7、,確定自由響應(yīng)與強(qiáng)迫響應(yīng),或瞬態(tài)響應(yīng)與4穩(wěn)態(tài)響應(yīng);(6)根據(jù)零輸入響應(yīng)和零狀態(tài)響應(yīng)的定義,在z域求解雙零響應(yīng)的象函數(shù),對雙零響應(yīng)的象函數(shù)進(jìn)行逆z變換,得零輸入響應(yīng)和零狀態(tài)響應(yīng).用變換域法求解例1的基本過程如下.根據(jù)差分方程直接寫出,.系統(tǒng)函數(shù)的極點(diǎn)為.對激勵信號進(jìn)行z變換得.激勵象函數(shù)的極點(diǎn)為3/4.根據(jù)差分方程的初始狀態(tài)算出.根據(jù)激勵信號的初始狀態(tài)算出.對z域代數(shù)方程求解,得全響應(yīng)的象函數(shù).進(jìn)行逆z變換得全響應(yīng)為其中,與系統(tǒng)函數(shù)的極點(diǎn)對應(yīng)的是自由響應(yīng);與激勵象函數(shù)的極點(diǎn)對應(yīng)的是強(qiáng)迫響應(yīng).的極點(diǎn)都在z平面的單位圓內(nèi)故都是瞬態(tài)響