Tải bản đầy đủ

Chương 8: Phương trình vi phân đạo hàm riêng

CHNG8:PHNGTRÌNHVIPHÂN
ĐOHÀMRIÊNG

§1.MĐU
1. Khái nim chung: Partial Differential Equation (PDE) Toolbox cung cp
mtmôitrngmnhvàmmmiđnghiênvàgiicácphngtrìnhviphân
đohàmriêngtrongmtphng.Dngphngtrìnhcb
ncaPDEToolbox
là:
∇.(c∇u)+au=ftrongminΩ
Cácphngtrìnhđcrirchoábngphngphápphnthuhn(FEM).
CácđitngtrongPDEcungcpcôngcđ
:
•xácđnhbàitoánPDE,nghĩalàxácđnhvùng2D,cácđiukinbiênvà
cáchsPDE.
•giibngphngphápscácbàitoán,nghĩalàtoralikhôngcó
cutrúc,rirchoáphngtrìnhvàtìmnghimxpx.
•hinthktqu

2.SdngGUI:
 a.GUI:PDEToolboxcómtbgiaodinđhongidùng(graphical

userinterfaceGUI)baogmcáckhiácnhcaquátrìnhtìmnghimcaPDE.
Đkích
hotnótanhplnhpdetoolticaslnhcaMATLAB.
 Trênca sGUI cócác menu vàcácicon.Ta dùngcácmenuhay icon
nàyđthchincácnhimvnhtđnh.
 b.
Cácmenu:CómtsmenusauđâytrêncasGUI:
 •File:TmenunàytacóthOpenvàSavemôhìnhdidngMfile.Ta
cóthinđthvàthoátkhiGUI.

•Edit:Tmenunàytacóthct,dán,xoá,copycácđitngvàchntt
ccácđitng.

•Options:Menunàychacáctuchncũngnhcácthayđitrêntrcx.
 •Draw:Tmenunàytacóthchncácđitngcbnđv.
 •Boundary:Menunàydùngđnhpcácđiukinbiênchocácvùng.
 •PDE:MenunàycungcpcáchpthoiđmôtPDEvàxutcáchs
canóvàovùnglàmvic.

•Mesh:Tadùngmenunàyđtoralivàthayđicáctamgiác.
 •Solve:TachnmenunàyđgiicácphngtrìnhPDE.
 •Plot:Tmenunàytavnghim.

154
 •Window:Chncaslàmvic
 •Help:Hinthcastrgiúp.
 c.Thanhcôngc:
Thanhcôngccódngnhhìnhv:



d.CácGUImode:QuátrìnhgiiPDEgmcácbcsau:

•xácđnhvùng2D
 •xácđnhđiukinbiên
 •xácđnhPDE
 •tolitamgiác
 •giiPDE
 •vnghimvàcácthuctínhvtlí
pdetoolGUIđcthitktheocáchtngt.Talàmvictrong6kiukhác


nhau,mikiutngngvimtbctrongquátrìnhgi
iPDE.
 •TrongDrawmodetatovùng2D.
 •TrongBoundarymodetacóthmôtđiukinbiên
 •TrongPDEmodetanhpcáchscaphngtrìnhviphân.
 •TrongMeshmodetakhitoli.
 •TrongSolvemodetagiiphngtrình.
 •TrongPlotmodetavenghimvàcácthuctínhvtlíkhác
 e.MôhìnhCGSvàSetFormular:PDEToolboxdùngmumôhìnhCSG
đmôhìnhhoá.Tacóthvcácđitngchngnhau.Có4loiđi
tng:
 •Circle
 •Polygon
 •Rectangle

•Ellipse
Miđitng cómttênduynhttrong GUI.Tên mcđnhcađitng
circlelàC,đitngđagiáclàP,đitnghìnhchnhtlàR,đitnghình
vuông SQ vàđ
i tng ellip là E. Tênđc hin th trênđi tng. Trong
Drawmodetacóththayđitênvàhìnhdngđitngbngcáchnhpđúp
lênnó.Khiđómthpthoiđcmravà
tathayđithôngs.Cáctoánt+
,=,*đcdùngđkthpcácvùng.Toánt+đcdùngđtothp,toán
tdùngtovùngcóphnrngvàtoánt*dùngđtora
vùngcógiaonhau

155
 f.Tocácgóctròn:Mtvídvcáchdùngcáccôngthclàtoramt
hìnhch nht cógóctròn.TakhiđngGUIvàchn GridvàSnaptogrid.
Sauđó thayđi Grid Spacing
trên trc x là [1.5:0.1:1.5] và trên trc y là [
1:0.1:1]. Chn Rectangle/square t menu Drawđv hình ch nht btđu
ti(1,0.5)rng2vàcao1.Đtogóctròntathêmcáchìnhtròncácgóc.Mi

hình tròn có bán kính 0.2 và tâm cách gócđon 0.2. Tipđn ta v 4 hình
vuôngmihìnhcócnh0.24góc.Bâygitasoncôngthcchovùng:
 R1(SQ1+SQ2+SQ3+SQ4)+C1+C2+C3+C4 
vàghivàophntrênca
GUI.

3. S dng pdrtool:Đbtđu ta s dng graphic user interface (GUI)
pdetoolđgiitngbcPDE.TasgiiphngtrìnhPoisson∆u=f.Min
2Dmàtagiibàitoánsrt
phctp.ĐiukinbiêndùngkiuNeumannvà
Dirichlet.
 Trchtta giMATLAB.Đgi GUItanhplnh pdetool tcas
MATLAB.ĐdvhìnhtachnGridvàSnaptmenuOption.
 Bcđutiênđgiibàitoánlàvvùng2Dcngii.GUIcungcp4
loiđi tng c bn:đa giác, hình ch nht, và hình ellip. Cácđi tng
đc dùngđto ra mô hình
 Constructive Solid Geometry(CSG). Miđi
tngđcgánchomtnhãnvàdùngcácnhãnnàytatorađcmthình
phctplàthpcacáchìnhđngintrên.
Đchn mtđi tng,
ta nhp chutlênicon canóhay chn nót
menuDraw.Iconhìnhcódu+dùngđvhìnhttâm.Nukhôngcódu+
hìnhđcvtgóc.Khimunvhìnhtabmvàoicon
vàđtcontrchut
lên hình ri kéo và th. Mun to hình vuông hay tròn ta dùng chut phi.
Đu tiên ta v mthình chnht vàđttên làR1. Mundi chuynhình ta

bmchutvàohìnhvàkéođnvtrímongmunrith.Munthayđikích
thchìnhbmđúpchutvàonóđkíchhothpthoirinhpkíchthc
mongmun.
Thpthoitacóththayđitêncanhãn.Nutamunxoá
hình,chnnórinhnDelhaychnCleartmenuEdit.Khiđcchnbiên
đi tng có màuđen. Mun ch
n nhiuđi tng cùng lúc ta nhn thêm
phím Shifft. Khi mun chn tt c ta dùng Select All trong menu Edit(hay
dùngCtrl+A).
 Tiptheotavmthìnhtrònbngnhpchutvào
iconhìnhellipcódu
+ ri kéo và th(dùng chut phi).CSG ta to là hìnhch nht R1và E1 có
đcbngcáchdùngcôngthcR1+C1ôSetformulatrêncas.

156
 CuicùngtathêmhaiđitnglàhìnhchnhtR2vàhìnhtrònE2.Đ
tomôhìnhtanhpcôngthc(R1+E1+R2)E2.TacóthluCSGnhlàM
filebngcáchdùngSave
astmenuFile.
 Saukhivxonghìnhtanhpđiukinbiênchocácbiênngoàicùng.Đ
nhpđiu kin biênta bm chutvào icon∂Ω hay chn Boundary Mode t
menu Boundary. Ta có th b
các biên ca vùng con và xácđnhđiu kin
biên.Cácđoncócnhxámlàbiêncavùngconlàcácvùngchngnhauca
cácđi tng banđu. T menu Boundary chn Remove All Subdomain
Bordersđb
ttccácbiêncon.Cácbiêncómàuvàmũitên.Màuphnánh
kiuđiu kin biên và mũi tên hng v cui cađon biên. Thông tin v
hngđc dùng khi khiđiu
kin biênđc thông s hoá dc theo biên.
Điukinbiêncóthlàhàmcax,yhaylàhng.Mcđnhtrênbiêncóđiu
kinbiênDirichletu=0.ĐiukinbiênDirichletđc
thhinbngmàuđ.
Điu kin biên có th là Neumann tng quát(màu xanh) hay hn hp(màu
green).Ta chnđiu kin biên mong mun bng cách nhp chut vàođon
biên hay Shift
click nu mun chn nhiuđon biên hay vào menu Edit và
chnSelectAllvàcácđonbiênđcchn cómàuđen.Khinàyhpthoi
điukinbiênhinravàtanhp
điukinbiênmongmun.Trongvídnày
ta chnđiu kin biên Neumann
5
n
u
−=


, nghĩa làđdc ca nghim theo
phngpháptuyncađonbiênnàylà5.Bmđúpchutvàocácđonbiên
vàtrongô
BoundaryConditionchnNeumann.Sauđónhpgiátr5vàoôg
richnOK.Giátrvnđmcđnhlà0.
 SaukhimôtđiukinbiêntacnnhpcáchscaPDE.Takíchho
t
hpthoiPDESpecificationbngcáchnhpđúpchutvàoiconPDEhaychn
PDESpecificationtrongmenuPDE.Tacũngcóthbmđúpvàotngvùng
conđnhpcáchsPDEchotngvùngconđó.Tronghpthoinàytacòn
phichnkiuphngtrình(elliptic,parabolic,hyperbolichayeigenmode)và
xácđnhki
ungdngtheokiuPDE.Bàitoántađangxétlàbàitoánelliptic
nêntađánhduvàoôtngng.Tanhpcácgiátrc=1.9,a=0.0vàf=10
chobàitoánnày.
 Tiptheo
ta toli tam giácbng cáchbm chut vàoiconhình tam
giáchaychnMesh|InitializeMesh.Numunktquchínhxáchntatinh
chnh li bng cách nhp vào icon có 4 tam giác hay chn
Mesh | Refine
Mesh
.dngMesh|JiggleMeshtacóthtăngchtlngcali.Tacóth
hucácthayđivlibngcáchchnMesh|Undo.
Đgiiphngtrìnhtabmvàoicon=haychnSolve|SolvePDE.Kt

157
quđcvra.Mcđnh,hìnhvdùngmàuvàthanhmàuđchgiátr.Nu
munnghimđcxutdidngvectchovùnglàmviccaMATLAB.
Cónhiukiuvchophéptaquan
sátnghim.MunvytavàomenuPlotvà
chnkiuhinthnghimthíchhp.

4.Dùngcáchàmdònglnh:Mcdù pdetoolGui cungcp mt môitrng
làm vic thun tin nhng vn có nhng trng hp ta phi dùng các hàm
dònglnh.Đólà:

•hìnhdnghìnhhccavùngđckhosátkhácđngthng,cung
tròn,cungellip.
 •điukinbiênkhôngtiêuchun
 •cáchscaPDEvàcađiukinbiênphctp
 •cótrênhaibinphthuc

•nghimkhôngbhnch
 •nghimkhóbiudin.
 Quátrìnhxáclpbàitoánvàgiinóđcphnánhtrongthitkca
GUI.Mtscutrúcdliuxácđnhcáckhíacnhkhácnhaucabàitoán
và
cácgiaiđonxlíkhácnhautoracáccutrúcdliumi.

a. Mô hình CSG: Mô hình CSGđc mô t bng ma trn Geometry
Description, set formular và ma trn Name Space. Các cu trúc d liu này
đcmôttronghàmdecsg.
 b. Phân nh các hình: Hìnhđc phân nh đc mô t bng ma trn
DecomposedGeometryhaybngmatrnGeometryMfile.Khinàyhìnhdng
đcmôtnhlàmtbcácvùngcnhnhaucctiubaobicácđ
onbiên.
Mt ma trn Decomposed Geometry có th đc to t mô hình CSG bng
dùng hàm decsg. Nó cũng có th xut t GUI bng cách chn Export
Decomposed Geometry trong menu Boundary. Mt Geometry Mfile tng
đngvimtmatrn
DecomposedGeometryđãchocóthđctorabng
cáchdùnghàmwgeomvàxembnghàmpdegplot.Cutrúcdliucama
trn Decomposed Geometry và Mfile Geometryđc mô t trong hàm
pdegeom
 c.Điu kin biên:Điu kin biênđc mô t bng ma trn Boundary
ConditionhayMfileBoundary.Cácđiukinbiênđcchonhlàhàmtrên
các biên. Ma trnđiu kin biên có th xut t GUI bng ch
n Export
DecomposedGeometry,BoundaryCond’s...trongmenuBoundary.MtMfile
chađiukinbiêntngđngvimatrnđiukinbiêncóthtođc

158

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×