您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 会议纪要 > 偏微分方程的matlab解法
偏微分方程的matlab解法1、设置PDE的定解问题.即设置二维定解区域、边界条件以及方程的形式;和系数2、用有限元法(FEM)求解PDE.即网格的生成、方程的离散以及求出数值解;3、解的可视化.主要讲述如何用MATLAB实现对偏微分方程的仿真求解.MATLAB的偏微分方程工具箱(PDEToolbox)的出现,为偏微分方程的求解以及定性研究提供了捷径.主要步骤为:PDEToolbox注意事项只能解决二维模型,一维的扩成二维,三维的缩成二维,时间维不计算在内公式类型,只能解决部分偏微分方程,由公式类型决定边界条件两种,Dirichlet和Neumann初始条件先确定方程大类DrawMode画图模式,先将处理的区域画出来,二维,方形,圆形,支持多边形,可以手动更改坐标,旋转rotate例如,对于细杆导热,虽然是一维问题,可以将宽度y虚拟出来,对应于y的边界条件和初始条件按照题意制定BoundaryModePDEModePDESpecification,确定偏微分方程类型共有四种:椭圆形Elliptic抛物型Parabolic双曲型HyperbolicMeshMode网格划分,细化Solve,Plot如果有初始条件(与t有关),则在Solve的Parameters里有其设定,如果没有初始条件(与t无关),则不必设定Plot只是确定画图的参数,包括是否动画,是否3D,是否画出等温线,是否有箭头。。。SaveAs保存成M-file,自动生成例:解热传导方程边界条件是齐次类型,定解区域自定。【解】第一步:启动MATLAB,键入命令pdetool并回车,就进入GUI.在Options菜单下选择Gid命令,打开栅格,栅格使用户容易确定所绘图形的大小.第二步:选定定解区域本题为自定区域:自拟定解区域如图221所示:E1-E2+R1-E3.具体用快捷工具分别画椭圆E1、圆E2、矩形R1、圆E3.然后在Setformula栏中进行编辑并用算术运算符将图形对象名称连接起来(或删去默认的表达式,直接键入E1-E2+R1-E3)tuuf第三步:选取边界首先选择Boundary菜单中BoundaryMode命令,进入边界模式.然后单击Boundary菜单中RemoveAllSubdomainBorders选项。从而去掉子域边界,如图222.单击Boundary菜单中SpecifyBoundaryConditions选项,打开BoundaryConditions对话框,输入边界件.本例取默认条件,即将全部边界设为齐次Dirichlet条件,边界显示为红色.如果想将几何与边界信息存储,可选Boundary菜单中的ExportDecomposedGeometrv.BoundaryCond's命令,将它们分别存储在g、b变量中,并通过MATLAB形成M文件.图22.2定解问题的边界第四步:设置方程类型选择PDE菜单中PDEMode命令,进入PDE模式,再单击PDE菜单中PDESecification选项,打开PDESecification对话框,设置方程类型.本例取抛物型方程故参数c,a,f,d,分别是l,0,10,1.第五步:选择Mesh菜单中InitializeMesh命令,进行网格剖分,选择Mesh菜单中RefineMesh命令,使网格密集化,如图22.3.(),udcuauft图22.3网格密集化第六步:解偏微分方程并显示图形解选择Solve菜单中SolvePDE命令,解偏微分方程并显示图形解,如图2.4所示第七步:单击Plot菜单中Parameter选项,打开PlotSelection对话框,选中Color,Height(3Dplot)和Showmesh三项.再单击Polt按钮,显示三维图形解,如图22.5所示.第八步:若要画等值线图和矢量场图,单击plot菜单中parameter选项,在plotselection对话框中选中contour和arrow两选项。然后单击plot按钮,可显示解的等值线图和矢量场图,如图2.6所示。图2.6解的等值线图和矢量场图求解椭圆型方程的例子2222poisson(,)1,0(1).4uxyxyuxy单位圆上的方程边值问题:-=1,=问题的精确解为u(x,y)=求解抛物型方程的例子考虑一个带有矩形孔的金属板上的热传导问题。板的左边保持在100°C,板的右边热量从板向环境空气定常流动,其他边及内孔边界保持绝缘。初始是板的温度为0°C,于是概括为如下定解问题;区域的边界顶点坐标为(-0.5,-0.8),(0.5,-0.8),(-0.5,0.8),(0.5,0.8)。内边界顶点坐标(-0.05,-0.4),(-0.05,0.4),(0.05,-0.4),(0.05,0.4)。0,100,1=00udutuununutto在左边界上,在右边界上,其他边界上0tt例24.2.1用MATLAB求解下面波动方程定解问题并动态显示解的分布2222221111()0||0,0π(,,0)atan[sin()],(,,0)2cos(π2xxyytuuutxyuuuuyyuxyxuxyπ)exp[cos()]2xy已知求解域是方形区域,空间坐标的个数由具体问题确定.求解双曲型方程的例子
本文标题:偏微分方程的matlab解法
链接地址:https://www.777doc.com/doc-4051557 .html