求解偏微分方程的边值问题本实验学****使用MATLAB的图形用户命令pdetool来求解偏微分方程的边值问题。这个工具是用有限元方法来求解的,而且采用三角元。我们用内个例题来说明它的用法。一、MATLAB支持的偏微分方程类型考虑平面有界区域D上的二阶椭圆型PDE边值问题:其中未知函数为。它的边界条件分为三类:(1)Direchlet条件:(2)Neumann条件:(3)混合边界条件:在边界上部分为Direchlet条件,另外部分为Neumann条件。其中是定义在边界的已知函数,另外也可以是一个2*2的函数矩阵,是沿边界的外法线的单位向量。在使用pdetool时要向它提供这些已知参数。二、例题例题1 用pdetool求解解:首先在MATLAB的工作命令行中键入pdetool,按回牟键确定,于是出现PDEToolbox窗口,选GenenicScalar模式.(l)画区域圆单击椭圆工具按钮,大致在(0,0)位置单击鼠标右键,拖拉鼠标到适当位置松开。为了保证所绘制的圆是标准的单位园,在所绘园上双击,打开ObjectDialog对话框,精确地输入圆心坐标X-center为0、Y-center为0及半径Radius为l,然后单击OK按钮,这样单位画已画好.(2)设置边界条件单击工具边界模式按钮,图形边界变红,逐段双击边界,,可以按Shift键,将多个边界同时选择,,输入h为1,r为0。,…选项,打开BoundaryCondition对话框输入边界条件.(3)设置方程单击偏微分方程按钮,打开PDESpecification对话框,选择方程类型·本题选Ellintic(椭圆型),输入c为1,a为O,f为1,然后单击OK按钮.(4)网格剖分单击网格工具,或者单击Mesh菜单中InitializeMesh项,,三角形单元数为254个(图??)。如果要细化网格,单击细化工具,或者单击Mesh菜单中RefineMesh选项,节点数成为541个,三角形单元数为1016个。(5)解方程单击解方程工具,或者单击Solve菜单中Solve PDE选项,可求得方程数值解并用彩***形显示。单击作图工具,或者单击Plot菜单中Parameter…选项,(3-Dplot),然后单击Plot按钮,方程的图形解如图??所示。除了作定解问题解u的图形外,也可以作等图形·(6)输出网格节点的编号、单元编号以及节点坐标单击Mesh菜单中ShowNode Labels选项,再单击网格工具,即可显示节点编号(图??)。若要输出节点坐标,只需单击Mesh菜单中ExportMesh…选项,这时打开的Export对话框中的默认值为pet,这里p、e、t分别表示point(点)、edges(边)、triangles(三角形)数据变量,单击OK按钮,然后在MATLAB命令行键入p,即可以显示按节点编号排列的坐标;键入e再回车则显示边界数据矩阵(7维数组);键入t按回车则显示三角形单元数据矩阵(4维数组)。点、边、单元的部分输出为:p=Columns1through11- - - - - -- - 0 - - - - -= 0
偏微分方程边值问题的数值解法 来自淘豆网www.taodocs.com转载请标明出处.