MATLAB偏微分方程求解课件.ppt

上传人(卖家):三亚风情 文档编号:2670632 上传时间:2022-05-17 格式:PPT 页数:44 大小:1.18MB
下载 相关 举报
MATLAB偏微分方程求解课件.ppt_第1页
第1页 / 共44页
MATLAB偏微分方程求解课件.ppt_第2页
第2页 / 共44页
MATLAB偏微分方程求解课件.ppt_第3页
第3页 / 共44页
MATLAB偏微分方程求解课件.ppt_第4页
第4页 / 共44页
MATLAB偏微分方程求解课件.ppt_第5页
第5页 / 共44页
点击查看更多>>
资源描述

1、题目:用MATLAB求解偏微分方程 主讲人: 班级: 时间:基础知识预习 微分方程的求解包含 :常微分方程的求解(上节课已经讲过)这里不再赘述。 :偏微分方程的求解(本次教学内容)偏微分方程概念 偏微分方程(Partial Differential Equation,简称PDE)指含有未知函数及其偏导数的方程。描述自变量、未知函数及其偏导数之间的关系。 偏微分方程分为线性偏微分方程式与非线性偏微分方程式,常常有几个解而且涉及额外的边界条件。常微分方程:在微分方程中,若自变量的个数只有一个的微分方程。偏微分方程:自变量的个数有两个或两个以上的微分方程。求解偏微分方程的方法 求解偏微分方程的数值方

2、法: 1. 有限元法(Finite Element Method, FEM)- hp-FEM 2. 有限体积法(Finite Volume Method, FVM) 3. 有限差分法(Finite Difference Method, FDM)。 其它:广义有限元法(Generalized Finite Element Method, FFEM)、扩展有限元法(eXtended Finite Element Method, XFEM)、无网格有限元法(Meshfree Finite Element Method)、离散迦辽金有限元法(Discontinuous Galerkin Finite

3、Element Method, DGFEM)等。MATLAB解偏微分方程 MATLAB提供了两种方法解决PDE 问题:pdepe()函数,它可以求解一般的PDEs,具有较大的通用性,但只支持命令行形式调用。 PDE 工具箱,可以求解特殊PDE 问题,PDEtool 有较大的局限性,比如只能求解二阶PDE 问题,并且不能解决偏微分方程组,但是它提供了GUI界面,从繁杂的编程中解脱出来了,同时还可以通过File-Save As直接生成M代码 使用pdeval()直接计算某个点的函数值?一般偏微分方程组(PDEs)的MATLAB求解 直接求解一般偏微分方程(组),它的调用格式为sol=pdepe(m

4、,pdefun,pdeic,pdebc,x,t)(1) ) u,t,s(x,),()u,( cxuxuutxfxxxtuxutxmm,问题描述函数初值条件边界条件输出参数自变量参数【输入参数】(1) pdefun:是PDE 的问题描述函数,它必须换成下面的标准形式 PDE 就可以编写下面的入口函数 c,f,s=pdefun(x,t,u,du) m,x,t就是对应于(式1)中相关参数和自变量,du是u的一阶导数,由给定的输入变量即可表示出出c,f,s这三个函数(1) ) u,t,s(x,),()u,( cxuxuutxfxxxtuxutxmm,【输入参数】(2) pdeic:是PDE 的初值条件

5、,必须化为下面的形式 我们使用下面的简单的函数来描述为u0=pdeic(x)00),(uutx【输入参数】(3) pdebc:是PDE的边界条件描述函数,必须先化为下面的形式 于是边值条件可以编写下面函数描述为pa,qa,pb,qb=pdebc(x,t,u,du)其中a 表示下边界,b 表示下边界0 ) xu u,t,(x, f *u).t,q(x, u) t,p(x,【输入参数】(4) m:就是对应于(式1)中相关参数 x,t:就是对应于(式1)中自变量(1) ) u,t,s(x,),()u,( cxuxuutxfxxxtuxutxmm,【输出参数】 sol:是一个三维数组,sol(:,:,

6、i)表示ui的解,换句话说uk对应x(i)和t(j)时的解为sol(i,j,k)实例讲解(题目) 例:初值条件边界条件实例讲解(解法) 【解】第一步根据(1)对照给出的偏微分方程,则原方程可以改写为输入参数(1)目标PDE函数 % 目标PDE函数 function c,f,s=pdefun (x,t,u,du) c=1;1; f=0.024*du(1);0.17*du(2); temp=u(1)-u(2); s=-1;1.*(exp(5.73*temp)-exp(-11.46*temp);输入参数(2)初值条件 初值条件改写为 % 初值条件函数 function u0=pdeic(x) u0=

7、1;0;输入参数(3)边界条件 边界条件改写为 % 边界条件函数 function pa,qa,pb,qb=pdebc(xa,ua,xb,ub,t) %a表示左边界,b表示右边界 pa=0;ua(2);qa=1;0; pb=ub(1)-1;0;qb=0;1;(4)主调函数clcx=0:0.05:1;t=0:0.05:2;m=0;sol=pdepe(m,pdefun,pdeic,pdebc,x,t);figure(numbertitle,off,name,PDE Demoby Matlabsky)%创建个窗口,窗口名字是name后边的名字NumberTitle,off是关掉默认显示名字。subp

8、lot(211)surf(x,t,sol(:,:,1)%sol(:,:,i)表示ui的解title(The Solution of u_1)xlabel(X)ylabel(T)zlabel(U)subplot(212)surf(x,t,sol(:,:,2)%sol(:,:,i)表示ui的解title(The Solution of u_2)xlabel(X)ylabel(T)zlabel(U)PDEtool求解特殊PDE问题 MATLAB的偏微分工具箱(PDE toolbox)可以比较规范的求解各种常见的二阶偏微分方程(特殊二阶的PDE)典型偏微分方程的描述 (3)双曲线型偏微分方程的一般形式

9、 (4)特征值型偏微分方程的一般形式,注 意它是(1)的变形,不能算独立的一类 MATLAB 采用有限元的方法求解各种PDE MATLAB 为我们提供一个pdetool (在command window 中键输pdetool打开)的交互界面,可以求解二元偏微分u(x1,x2)(注意只能求解二元)。方程的参数由a、c、d和f确定,求解域由图形确定,求解域确定好后,需要对求解域进行栅格化(这个是自动)。 偏微分方程边界条件的描述 Dirichlet(狄利克莱)条件 Neumann(纽曼)条件 求解实例 【解】由给定的PDE,可以得出d=1,c=1,a=2,f=10step1:点击工具栏的【PDE】

10、按钮,如下输入PDE的参数,注意选择Hyperbolic step2:绘制求解域对坐标轴的操作可以在【Options】主菜单中操作,包括设置网格、坐标系范围等 (1)【Options】-Axis Limits设置如下 (2)点击工具栏上的第三个按钮【绘制椭圆】,任意绘制一个椭圆,双击椭圆,设置如下 重复上面的操作,参数如下 得到 (3)在set formula 中如下输入,“+”表示求并集,“-”表示求差集,注意没有直接求交接的操作符step3:边界条件和初值条件 初值条件可以通过【Solve】-【Parameters】设置 边值条件设置如下 (1)点击工具栏的第6 个按钮【区域边界】,显示如

11、下 (2)【Boundary】-【Remove All Subdomain Borders】移除所有子域的边界,将得到所有子域合并成一个求解域 (3) 【Boundary】-【Secify Boundary Conditons】设置边界如下,注意我们这里只有Dirichlet条件step4:生成使用有限元方法求解方程所需的栅格 点击工具栏的第8/9 个按钮,对求解域生成栅格,多次点击可以在原来基础上继续细化栅格,直到自己觉得满意 为止,当然可以通过【Mesh】主菜单进行精确控制 step5:求解方程点解工具栏的第10 个按钮“=”【求解方程】 step6:求解结果绘图 点击第11 个按钮【绘制图形】,里面的选项很丰富,可以绘制等高线等好多,甚至播放动画,具体大家可以自己慢慢摸索动画播放设置: (1)【Solve】-【Parameters】设置合适的时间向量Time (2)【Plot】-【Parameters】选中【Animation】,点击后面的【Options】,设置播放速度和次数,比如6fps表示 每秒6 帧 (3)【Plot】-【Export Movie】输入动画保存的变量名,比如M (4)在CommandWindows 中直接输入movie(M)即可播放 (5)使用movie2ve(M,demo.avi)命令可以将动画保存为avi 文件

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(MATLAB偏微分方程求解课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|