李艷芳,孟智娟,李興國(guó),任紅萍
(太原科技大學(xué) 應(yīng)用科學(xué)學(xué)院,太原 030024)
無(wú)網(wǎng)格方法[1]解決問(wèn)題時(shí),只需要節(jié)點(diǎn)信息,不需要?jiǎng)澐志W(wǎng)格,是有限元法后一種重要的方法。上個(gè)世紀(jì)70年代,Lucy等人第一次提出了光滑粒子法[2],并用這種方法研究了液體流動(dòng)等問(wèn)題,由于該方法不夠穩(wěn)定,故Lancaster等提出了移動(dòng)最小二乘法(MLS法)[3-4],該方法求出的逼近函數(shù)具有較高的計(jì)算精度、光滑度也比較好,并在求解微分方程邊值問(wèn)題中得到應(yīng)用。1992年,Nayroles等人根據(jù)MLS法,提出了擴(kuò)散單元法[5-6]。在此之后,Belytschko等人在擴(kuò)散單元法的基礎(chǔ)上提出了無(wú)單元Galerkin方法(EFG)[7-8],接著解決了裂紋擴(kuò)展和大變形等三維問(wèn)題。張飛[9]對(duì)勢(shì)問(wèn)題用EFG方法和IEFG方法進(jìn)行了對(duì)比研究。
后來(lái),李東明等人建立了復(fù)變量無(wú)單元Galerkin方法(CVEFG)[10],并分析了彈性大變形問(wèn)題。為了方便施加邊界條件,任紅萍等人提出了插值型EFG方法[11-12],并解決了波動(dòng)方程等問(wèn)題。但在用該方法解決三維問(wèn)題時(shí),計(jì)算效率比較低,會(huì)花費(fèi)較長(zhǎng)的計(jì)算時(shí)間,孟智娟提出了維數(shù)分裂無(wú)單元Galerkin方法[13],并將該方法應(yīng)用于解決三維勢(shì)問(wèn)題、三維波動(dòng)方程以及三維彈性力學(xué)等問(wèn)題。
在DSEFG方法中,由于節(jié)點(diǎn)分布、dmax的取值會(huì)對(duì)計(jì)算精度和效率產(chǎn)生影響,因此本文對(duì)這些影響因子進(jìn)行了研究,從而得出這些影響因子的最優(yōu)取值。
三維勢(shì)問(wèn)題的控制方程為:
(x=(x1,x2,x3)∈Ω)
(1)
本質(zhì)邊界條件為:
(2)
自熱邊界條件為:
(3)
利用DSEFG方法求解問(wèn)題(1)-(3)時(shí),假設(shè)選取x3為分裂方向,將問(wèn)題域Ω沿x3方向分裂為L(zhǎng)層,間距為Δx3,即得到L+1個(gè)二維子域Ω(k),(k=0,1,…,L),則有:
(4)
這里
x3∈[a,c]
(5)
(6)
((x1,x2)∈Ω(k),x3=x3(k))
(7)
相應(yīng)的邊界條件為:
(8)
(9)
對(duì)問(wèn)題(1)-(3),用DSEFG方法求解,即問(wèn)題(7)-(9)用IEFG方法,x3上用有限差分法。
用罰函數(shù)法施加本質(zhì)邊界條件,得:
(10)
其中
(11)
(12)
Φ*(x(k))=
PT(x(k))A*(x(k))B(x(k)),
(13)
(14)
由方程(12)可得
(15)
(16)
這里
(17)
B(x(k))=(B1(x(k)),B2(x(k)),…,Bn(x(k))),
(18)
(19)
把式(12)、(15)、(16)代入(10)得:
(20)
討論式(20)的各項(xiàng)積分為:
δuT·C·u″,
(21)
δuT·K·u,
(22)
(23)
(24)
δuT·Kα·u,
(25)
(26)
其中
(27)
(28)
(29)
(30)
(31)
(32)
將式(21)-式(26)代入式(20)得:
δuT·(Cu″-Ku+Kαu-F1-F2-Fα)=0.
(33)
由于δuT的任意性,可得:
(34)
其中:
(35)
F=F1+F2+Fα.
(36)
(37)
?
(38)
且有:
(39)
(40)
在x3上用有限差分法,得:
(k=1,2,…,L-1).
(41)
所以,方程組(34)表示為:
(42)
(43)
?
(44)
其矩陣形式為:
(45)
這里
(46)
令:
(47)
(48)
(49)
那么,方程組(45)可簡(jiǎn)化為:
EU=R.
(50)
(51)
采用DSEFG方法求解三維勢(shì)問(wèn)題,分析了影響因子:節(jié)點(diǎn)分布、dmax對(duì)DSEFG方法精確度的影響。數(shù)值算例中,在每個(gè)積分單元上,用4×4點(diǎn)的Gauss積分。權(quán)函數(shù)采用三次樣條函數(shù),影響域?yàn)榫匦斡颉?/p>
定義相對(duì)誤差為:
(52)
三維長(zhǎng)方體內(nèi)具有Dirichlet邊界條件的Poisson方程
?2u(x)=f(x),(x∈Ω)
(53)
(54)
邊界條件為:
u(x)=0,(x∈Γ),
(55)
其中求解域Ω=[0,1]×[0,2]×[0,3].
對(duì)應(yīng)的解析解為:
(56)
將求解域Ω沿x3方向均勻地分裂為L(zhǎng)個(gè)子域,在平面Ox1x2上節(jié)點(diǎn)分布為9×21,即求解域Ω的節(jié)點(diǎn)分布為9×21×(L+1).
從圖1可以看出,當(dāng)L分別取21、17、12,且dmax=1.14,DSEFG方法的數(shù)值解都能較好的逼近解析解。圖2中,求解域Ω的節(jié)點(diǎn)分布為9×21×17,當(dāng)dmax不同時(shí),數(shù)值解也能很好的與解析解切合。
圖1 不同L時(shí)DSEFG方法的計(jì)算結(jié)果Fig.1 Calculation results of DSEFG method with different L
圖2 不同dmax時(shí)DSEFG方法的計(jì)算結(jié)果Fig.2 Calculation results of DSEFG methods withdifferent dmax
表1和表2分別為L(zhǎng)、dmax不同時(shí)DSEFG方法的相對(duì)誤差與CPU時(shí)間,從表中可以看出,節(jié)點(diǎn)分布為9×21×17,dmax=1.14時(shí)相對(duì)誤差最小,并且運(yùn)行時(shí)間也較短。
表1 不同L時(shí)DSEFG方法的相對(duì)誤差和CPU時(shí)間Tab.1 Relative error and CPU time of DSEFG method with disparate L
表2 不同dmax時(shí)DSEFG方法的相對(duì)誤差和CPU時(shí)間Tab.2 Relative error and CPU time of DSEFG method with different dmax
圖3顯示了dmax=1.14時(shí),L不同時(shí)DSEFG方法的相對(duì)誤差,隨著L的增大,數(shù)值結(jié)果的誤差越來(lái)越小。圖4是節(jié)點(diǎn)分布為9×21×17,DSEFG方法在dmax不同時(shí)的相對(duì)誤差,可以得出dmax=1.14時(shí)得到的相對(duì)誤差是最小的。
圖3 相對(duì)誤差隨L的變化Fig.3 Varietion of relative error with L
圖4 相對(duì)誤差隨dmax的變化Fig.4 Varietion of relative error with dmax
具有Neumann邊界條件的三維立方體內(nèi)的Laplace方程
?2u(x)=0, (x∈Ω),
(57)
邊界條件為:
(58)
(59)
(60)
(61)
其中求解域?yàn)棣?[0,1]×[0,1]×[0,1].
對(duì)應(yīng)的解析解是:
cos(πx3)cos(πx2).
(62)
將問(wèn)題域沿x3作為分裂方向,均勻地分裂為10個(gè)子域,在平面Ox1x2上節(jié)點(diǎn)分布為M×M,即求解域Ω的節(jié)點(diǎn)分布為M×M×11.
表3和表4分別為M、dmax不同時(shí),維數(shù)分裂無(wú)單元Galerkin方法的相對(duì)誤差與CPU時(shí)間,綜合兩表,得出節(jié)點(diǎn)分布為11×11×11,dmax=1.15時(shí)相對(duì)誤差最小,并且運(yùn)行時(shí)間也較短。
表3 DSEFG方法的相對(duì)誤差和CPU時(shí)間隨M的變化Tab.3 The varietion of relative error and CPU time of DSEFG method with M
表4 DSEFG方法的相對(duì)誤差和CPU時(shí)間隨dmax的變化Tab.4 The varietion of relative error and CPU time of DSEFG method with dmax
圖5、圖6分別顯示了不同節(jié)點(diǎn)分布和不同dmax時(shí)維數(shù)分裂無(wú)單元Galerkin方法的相對(duì)誤差,其中將x3方向分裂為10個(gè)子域,從圖中可以看出,節(jié)點(diǎn)分布為11×11×11,dmax=1.15時(shí)得出的相對(duì)誤差是最小的。
圖5 相對(duì)誤差隨M的變化Fig.5 Variety of relative error with M
圖6 相對(duì)誤差隨dmax的變化Fig.6 Varietion of relative error with dmax
本文采用維數(shù)分裂無(wú)單元Galerkin方法求解三維問(wèn)題,研究了在節(jié)點(diǎn)分布、dmax不同時(shí),計(jì)算結(jié)果的精度和效率。在三維長(zhǎng)方體內(nèi)具有Dirichlet邊界條件的Poisson問(wèn)題中,選取節(jié)點(diǎn)分布為9×21×17,dmax=1.14時(shí),計(jì)算精度最優(yōu);在具有Neumann邊界條件的三維立方體內(nèi)的Laplace問(wèn)題中,取節(jié)點(diǎn)分布為11×11×11,dmax=1.15時(shí),相對(duì)誤差最小。
由算例可知,在給定了dmax下,隨著節(jié)點(diǎn)個(gè)數(shù)的增加計(jì)算結(jié)果逐漸收斂;給定節(jié)點(diǎn)分布的情況下,隨著dmax不斷增大,相對(duì)誤差并不是一直變大,而是在解析解附近波動(dòng)。對(duì)于一般的偏微分方程,節(jié)點(diǎn)分布的多少與問(wèn)題自身的定義域有關(guān),定義域范圍越大,劃分的節(jié)點(diǎn)數(shù)相對(duì)越多。且dmax一般取大于1的值時(shí),會(huì)得出更精確的結(jié)果。