MATLAB求解PDE问题..doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MATLAB求解PDE问题.

MATLAB求解PDE问题(1)——概述、例子(转) (2011-07-20 16:48:45) MATLAB PDE Toolbox 提供利用有限元方法求解偏微分方程的GUI以及相应的命令行函数。利用该工具箱可以求解椭圆型方程、抛物型方程、双曲型方程、特征值方程以及非线性方程。PDE Toolbox的功能非常强大,网上有许多利用PDE Toolbox解决各种物理问题的论文,还有专门介绍工具箱的参考书。 网上的例子虽然很多,但是大部分是介绍PDE工具箱自带的一些例子,这些例子中解的区域,边界条件是PDE工具箱已经编写好的,直接调用就可以。对于该如何自己设定求解区域及边界条件,却很少有人涉及。网上搜索发现只有刘平在博客中详细介绍过求解区域的设定。下面以一个椭圆型方程的例子来详细说明求解的各个步骤,希望对大家能有所帮助。 设要求如下形式的椭圆方程的解: 按照PDE的要求,将方程化为标准形式 求解后的图像如下,第一幅图是解的图像,第二幅是计算误差。从第二幅图可以看到,计算的最大误差是10-3方量级。 通过这个例子我们可以基本掌握PDE求解偏微分方程的步骤和方法,后面我将详细介绍如何设置区域及边界条件。掌握了区域和边界条件的设定,就可以轻松求解遇到的偏微分方程了。图后是附带的matlab命令以及注释,并提供m文件附件下载,下载后解压即可。希望能对大家有所帮助。 下面是编写的求解上述方程的matlab语句及说明: g=mygeom; b=mybound; 定义区域,边界条件。mygeom是定义区域的子函数名,函数名可根据自己的需要取定,区域的确定规则由pdegeom函数说明,注意pdegeom函数只是说明如何定义区域,它并不直接确定区域;mybound是定义边界条件的子函数名,与区域类似,边界的确定规则由函数pdebound确定。后面我会详细介绍区域和边界的取法。 [p,e,t] = initmesh(g); 网格初始化,此处也可以写成[p,e,t] = initmesh(mygeom);这样可以省略上面的语句 [p,e,t] = refinemesh(g,p,e,t); [p,e,t] = refinemesh(g,p,e,t); 加密网格两次,需要加密几次重复几次即可,根据具体问题确定加密次数 U= assempde(b,p,e,t,1,0,2*(x+y)-4); 调用assempde函数计算方程的数值解,assempde函数的详细用法可以参考MATH网站或者PDE的使用指南。常用的用法是[u,res]=assempde(b,p,e,t,c,a,f),其中b为边界条件,此处也可以写为mybound,p,e,t,为网格参数,c,a,f,为方程的参数,后面也可以加猜测值以及各种属性。 pdesurf(p,t,U) grid on; xlabel(x);ylabel(y);zlabel(u) colorbar view([60 30]) 画出解的图形。注意,为了让结果更直观一些,使用view函数调整了视点位置。大家可以自行调整视角,满意即可。 exact=p(1,:).^2+p(2,:).^2-p(1,:).*p(2,:).*(p(1,:)+p(2,:)); exact=exact; figure pdesurf(p,t,U-exact) grid on xlabel(x);ylabel(y);zlabel(error) colorbar view([60 30]) 由于方程有解析解,我们可以比较数值计算的误差。如果能求得解析解,我们也不会设计各种方法求数值解了,因此,这一步在大多数情况下是用不上的,这里只是为了比较计算结果,验证计算的精度。 MATLAB求解PDE问题(2)——确定几何区域 (2012-06-14 16:20:38) 前一篇介绍了如何利用Matlab求解椭圆型方程,下面介绍如何确定求解的几何区域。PDE Toolbox中规定几何区域的m文件是pdegeom.m。但是pdegeom并不是一个可以调用的函数,它只是规定了应该何如定义区域,具体的区域则要根据研究的问题来决定。 函数pdegeom释义如下: 参数为0个时,即没有参数时,返回边界的段数; 参数为1个时,即只有bs,返回输出区域边界的参变量范围矩阵d; 参数为2个时,返回每段边界长度为s时的坐标。 函数参数意义bs表示指定的边缘线段,如矩形边界为四段,三角开边界肯定为三段…。s为第bs段线段弧长的近似(估计)值,bs与s可以为向量,但是要一一对应,即bs为几个值,s也得为几个值。输出变量[x,y]是每条线段起点和终点所对应的坐标。这个函数编制的关键是,函数内边界上的坐标((x(t),y(t))是用参变量t表示的,返回值是求得边界任意长度时的坐标(

文档评论(0)

kaiss + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档