陳龍
積分變換技術(shù)可以將某些難以分析的問題通過映射的方式映射到其他域內(nèi)的表達式后在進行分析。例如,Laplace變換可以將時域函數(shù)映射成復(fù)域函數(shù),從而可以將某時域函數(shù)的微分方程映射成復(fù)域的多項式代數(shù)方程,使得原微分方程在諸多方面,如穩(wěn)定性、解析解等方面更便于分析,這樣的變換方法構(gòu)成了經(jīng)典自控制理論的基礎(chǔ)。文章首先引入Laplace變換與反變換的定義及基本性質(zhì),然后借助于MATLAB語言中的符號運算工具函數(shù),利用Laplace變換實現(xiàn)常系數(shù)線性微分方程的求解。
一、常系數(shù)線性微分解析解的數(shù)學(xué)描述
(一)常系數(shù)線性微分方程
已知常系數(shù)線性微分方程的一般描述方法為:
其中,ai(i=1,2,L,n),bj(j=1,2,L,n)均為常數(shù)。
(二)Laplace變換及反變換的定義與性質(zhì)
下面我們引入Laplace變換及反變換的定義與性質(zhì)。
一個時域函數(shù)了(t)的Laplace變換可定義為:
A[f(t)l=∫0∞f(t)-stdt=F(s)(2)
其中,A[f(t)]為Laplace變換記號。
下面將不證明地列出一些Laplace變換的性質(zhì)。
(1)線性性質(zhì)
若a與b均為標量,則
A[af(t)]±bg(t)=aA[f(t)]±bA[g(t)](3)
(2)時域平移性質(zhì)
A[f(t-a)]=e-asF(s)(4)
(3)s-域平移性質(zhì)
A[e-atf(t)]=F(s+a)(5)
(4)微分性質(zhì)
A[df(t)/dt]=sF(s)-f(0+)
一般地,n階微分可以由下式求出
若假設(shè)函數(shù)f(t)及其各階導(dǎo)數(shù)的初值均為0,則式(7)可以簡化成
此性質(zhì)事實上是微分方程映射成代數(shù)方程的關(guān)鍵式子。
下面利用MATLAB語言及符號運算工具箱求解線性常系數(shù)微分方程解析解的方法。
二、Laplace變換在常系數(shù)線性微分方程求解中的應(yīng)用
考慮式(1)中給出的常系數(shù)線性微分方程模型。假設(shè)輸入信號u(t)和輸出信號f(t)及其各階導(dǎo)數(shù)在t=0處的均值為0,那么對方程兩端進行Laplace變換,記F(s)=A[f(t)],U(s)=A[u(t)],則F(s)/U(s)可以表示成一個有理函數(shù)(在自動控制領(lǐng)域稱為系統(tǒng)的傳遞函數(shù)),亦即
如果可以將U(s)也表示成一個有理函數(shù)(事實上大部分常用輸入信號均可以表示成有理函數(shù)形式),則可以將輸出信號的Laplace變換F(s)寫成
這樣,原微分方程的解析解可以由Laplace反變換求出,即f(t)=A-1[F(s)]。
應(yīng)用1假設(shè)輸入信號為u(t)=a-2tsin(3t+5)+cos2t,試求出下面微分方程在輸出信號y(t)及其各階導(dǎo)數(shù)在t=0時刻均為0的解析解:
【求解】對方程(18)兩端求取Laplace變換,得
s4Y(s)+10s3Y(s)+35s2Y(s)+50sY(s)+24Y(s)=4s2U(s)+3sU(s)+2U(s)
由于函數(shù)u(t)已經(jīng)給出,在求Laplace變換前可對u(t)求解各階導(dǎo)數(shù),可以用下面的命令語句求解出在給定的u(t)下微分方程等號右側(cè)的式子為
>>syms t;u=exp(-2*t)*sin(3*t+5)+cos(2*t);
>>uu=laplace(4*diff(u,2)+3*diff(n)+2*u);
>>uu=collect(simple(uu));latex(uu)
得到等號右邊的式子,采用微分方程求解函數(shù)dsolve()得出最終的結(jié)果:
>>syms t;u=exp(-2*t)*sin(3*t+5)+cos(2*t);
>>uu=laplace(4*diff(u,2)+3*diff(u)+2*u)
>>syms t;u=exp(-2*t)*sin(3*t+5)+cos(2*t);
>>uu=4*diff(u,t,2)+3*diff(u,t)+2*u
>>y=dsolve([‘D4y+10*D3y+35*D2y+50*Dy+24*y=,...
‘-14*cos(2*t)-6*sin(2*t)-39*exp(-2*t)*cos(3*t+5)-24*exp(-2*t)*sin(3*t+5)],y(0)=3,‘Dy(O)=2,D2y(0)=0,D3y(0)=0)
>>syms t;u=exp(-2*t)*sin(3*t+5)+cos(2*t);
>>uu=laplace(4*diff(u,2)+3*diff(u)+2*u)
>>y1=dsolve([‘D4y+10*D3y+35*D2y+50*Dy+24*y=,…
‘(117*sin(5))/((s+2)2+9)-12%(s2+4)-(72*cos(5))/((s+2)2+9)-(14*s)/(s2+4)-(39*cos(5)*(s+2))/((s+2)2+9)-(24*sin(5)*(s+2))/((s+2)2+9)],...
‘y(0)=0,‘Dy(0)=0,‘D2y(0)=0,‘D3y(0)=0);
>>simple(y-y1)
ans=0
有了微分方程的解析解,則可以用ezplot()函數(shù)直接繪制出該解析解的曲線,如圖1所示。
>>ezplot(y,[0,10]);axis([0,10,0,0.6])
參考文獻
[1]陳傳璋,金福臨,朱學(xué)炎等[M].北京:人民教育出版社,1979.
[2]武漢大學(xué),山東大學(xué).計算方法[M].北京:人民教育出版社,1979.
[3]薛定宇,陳陽泉.高等應(yīng)用數(shù)學(xué)問題的MATLAB求解[M].北京:清華大學(xué)出版社,2004.
[4]同濟大學(xué)數(shù)學(xué)系.高等數(shù)學(xué)[M].北京:高等教育出版社,2018.