胡凱麗,李 巖
(陜西師范大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,陜西 西安 710119)
隨著計(jì)算機(jī)科學(xué)的迅猛發(fā)展,計(jì)算機(jī)技術(shù)越來(lái)越多地服務(wù)于各行各業(yè),如教育、醫(yī)療、交通等。在數(shù)學(xué)領(lǐng)域,也逐漸興起了與計(jì)算機(jī)相結(jié)合的學(xué)科,即計(jì)算機(jī)代數(shù)。20世紀(jì)60年代早期,誕生了最早的計(jì)算機(jī)代數(shù)系統(tǒng),科學(xué)家用LISP語(yǔ)言編寫了第一個(gè)符號(hào)積分程序,隨后一些專業(yè)化計(jì)算機(jī)代數(shù)程序也開始問(wèn)世。計(jì)算機(jī)代數(shù)也被稱為符號(hào)代數(shù)計(jì)算(簡(jiǎn)稱符號(hào)計(jì)算),是數(shù)學(xué)、計(jì)算機(jī)科學(xué)和人工智能等領(lǐng)域新興的交叉學(xué)科。
在不斷探索和解決各種復(fù)雜問(wèn)題的過(guò)程中,人們發(fā)現(xiàn)非線性這一現(xiàn)象普遍存在于自然界、人類社會(huì)等眾多領(lǐng)域。20世紀(jì)60年代以來(lái),研究非線性現(xiàn)象獲得了巨大的進(jìn)展,其應(yīng)用也變得較為廣泛,由此發(fā)展形成了研究非線性現(xiàn)象的普遍規(guī)律學(xué)科,即非線性動(dòng)力學(xué)。隨著科學(xué)技術(shù)的不斷發(fā)展,非線性動(dòng)力學(xué)已經(jīng)廣泛地滲透到了各個(gè)領(lǐng)域,例如通信技術(shù)、計(jì)算機(jī)技術(shù)、材料科學(xué)、生命科學(xué)、動(dòng)力系統(tǒng)等。因此,非線性偏微分方程的求解問(wèn)題成為了研究的重點(diǎn)。近年來(lái),人們提出了多種求解非線性偏微分方程的方法,例如齊次平衡法[1]、Tanh函數(shù)展開法[2-4]、Hirota雙線性展開法[5]、Jacobi橢圓函數(shù)展開法[6]、(G'/G)-展開法[7]等。文獻(xiàn)[8]提出了推廣的(G'/G)-展開法—(G'/G2)-展開法,實(shí)踐表明,(G'/G2)-展開法在求解非線性微分方程時(shí)具有簡(jiǎn)單、快捷等優(yōu)勢(shì),已求解了部分方程[9-16]。因此,文中利用該方法研究Benjamin-Bona-Mahony[17-19]方程。
文中應(yīng)用符號(hào)計(jì)算系統(tǒng)Maple并借助PDEtools工具包,結(jié)合(G'/G2)-展開法求解BBM方程,當(dāng)精確解中的常數(shù)取特殊值時(shí)得到方程的孤波解,利用plots工具包繪制出孤波解的三維圖。
考慮如下形式的非線性偏微分方程:
P(u,ux,ut,uxx,uxt,utt,…)=0
(1)
其中,u=u(x,t)是未知函數(shù),P是關(guān)于u及u的各階偏導(dǎo)數(shù)的多項(xiàng)式。利用(G'/G2)-展開法求解方程1的具體步驟如下:
第1步:對(duì)方程1作行波變換u=u(ξ),ξ=x-Vt,得到如下常微分方程。
Q(u,u',u'',u''',…)=0
(2)
第2步:假設(shè)方程2有如下形式的解。
(3)
其中,G=G(ξ)且滿足二階線性常微分方程。
(4)
其中,αi,a,b是待定常數(shù);m可以通過(guò)齊次平衡法得到。
利用Maple求解方程4的具體過(guò)程如下所述:
(1)調(diào)用Maple的PDEtools工具包,輸入方程4;
(2)利用dsolve()方法直接求解方程4,得到G(ξ)的值;
具體代碼如下:
>restart:with(PDEtools):
>eq1:=diff(diff(G(xi),xi)/G(xi)^2,xi)=a+b*(diff(G(xi),xi)/G(xi)^2)^2;
>eq2:=psi(xi)=diff(G(xi),xi)/G(xi)^2;
>eq3:=dsolve(eq1,G(xi));
>eq4:=dsubs(eq3,eq2);
由上述過(guò)程,方程4有以下三組解:
(1)當(dāng)ab>0時(shí)
(5)
(2)當(dāng)ab<0時(shí)
(6)
(3)當(dāng)a=0,b≠0時(shí)
(7)
其中,C1,C2為任意常數(shù)。
第3步:將式3代入方程2,借助方程4,可以得到關(guān)于(G'/G2)的多項(xiàng)式,令其各次冪的系數(shù)為零,可得到一組關(guān)于αi,a,b的代數(shù)方程組,通過(guò)求解方程組得到αi,a,b的值。
第4步:將第3步得到的結(jié)果代入方程3和方程4,即可得方程1的解。
根據(jù)第1節(jié)中的算法步驟,借助Maple,現(xiàn)考慮如下形式的BBM方程。
ut+ux+uux-uxxt=0
(8)
將行波變換u(x,t)=u(ξ),ξ=x-Vt代入式8,然后對(duì)其兩邊積分,取積分常數(shù)為零,得到:
-Vu+u+(1/2)u2+Vu''=0
(9)
由齊次平衡法得N=2。因此,設(shè)方程8的解為:
(10)
利用式4和式10,分別求出u'',u2的值,將u'',u2的值代入式9,得到:
(11)
令(G'/G2)的各次冪系數(shù)分別為零,可以得到以下兩組參數(shù):
(12)
(13)
Maple符號(hào)計(jì)算代碼如下:
>PDEeq:=diff(u(x,t),t)+diff(u(x,t),x)+u(x,t)*diff(u(x,t),x)-diff(u(x,t),x,x,t);
>ode1:=dsubs(u(x,t)=u(x-V*t),PDEeq);
>ode2:=subs(x-V*t=xi,ode1);
>ode2:=convet(ode2,diff);
>ode3:=int(ode2,xi);
>ode4:=dsubs(u(xi)=alpha[0]+alpha[1]*psi(xi)+alpha[2]*psi(xi)^2,ode3);
>ode5:=dsubs(diff(psi(xi),xi),ode4);
>ode6:=collect(ode5,psi);
>ltt:=[ ]:
for i from 1 to nops(ode6)
do p(i):=coeffs(coeffs(op(i,ode6)),psi(xi));
ltt:=[p(i),op(ltt)];
end do:
ltt;
>solve(ltt,{alpha[0],alpha[1],alpha[2],V});
則方程8的解為:
(14)
(15)
把方程4的解即(G'/G2)的值分別代入式14和式15,可得BBM方程的精確解。
第一種情況,將方程4的解代入式14:
(1)當(dāng)ab>0時(shí),得到的三角函數(shù)通解為
(16)
(2)當(dāng)ab<0時(shí),得到的雙曲函數(shù)通解為:
(17)
對(duì)于式17,考慮以下兩種特殊情況,可獲得如下形式的孤立波解:
(a)當(dāng)C1≠0,C2=0時(shí),其孤立波解為:
(18)
若將式18中的常數(shù)分別取值為:a=0.5,b=0.9,V=1,利用Maple中的plots工具包可繪制出孤波解的三維圖,如圖1所示。
圖1 孤波解的三維圖(x=0…10,
(b)當(dāng)C1=0,C2≠0時(shí),其孤立波解為:
(19)
(3)當(dāng)a=0,b≠0時(shí),得到有理函數(shù)解為:
第二種情況,將方程4的解代入式15:
(1)當(dāng)ab>0時(shí),得到三角函數(shù)通解為:
(21)
(2)當(dāng)ab<0時(shí),得到的雙曲函數(shù)通解為:
(22)
對(duì)于式22,考慮以下兩種特殊情況,可獲得其如下形式的孤立波解。
(a)當(dāng)C1≠0,C2=0時(shí),其孤立波解為:
(23)
若將式23的常數(shù)分別取值為:a=2,b=3.7,V=0.21,利用Maple中的plots工具包可繪制出孤波解的三維圖,如圖2所示。
圖2 孤波解的三維圖(x=-10…10,
(b)當(dāng)C1=0,C2≠0時(shí),其孤立波解為:
(24)
(3)當(dāng)a=0,b≠0時(shí),得到的有理函數(shù)解為:
(25)
采用(G'/G2)-展開法研究了BBM方程,在符號(hào)計(jì)算系統(tǒng)Maple的幫助下,得到了方程的三角函數(shù)、雙曲函數(shù)以及有理函數(shù)形式的精確解,且當(dāng)雙曲函數(shù)解中部分參數(shù)取特殊值時(shí),得到了方程的孤立波解,從而豐富了BBM方程的精確解系。從求解過(guò)程及求得的精確解來(lái)看,該方法簡(jiǎn)單、高效,是求解非線性方程的較好選擇。