偏微分方程数值解.pdf
《偏微分方程数值解.pdf》由会员分享,可在线阅读,更多相关《偏微分方程数值解.pdf(47页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第一章 概 述 11 偏微分方程工具箱的功能 偏微分方程工具箱(PDE Toolbox)提供了研究和求解空间二维偏微分方程问题的一个强大而又灵活实用的环境。PDE Toolbox 的功能包括:(1)设置 PDE(偏微分方程)定解问题,即设置二维定解区域、边界条件以及方程的形式和系数;(2)用有限元法(FEM)求解 PDE 数值解;(3)解的可视化。无论是高级研究人员还是初学者,在使用 PDE Too1box 时都会感到非常方便。只要 PDE 定解问题的提法正确,那么,启动 MATLAB后,在 MATLAB 工作空间的命令行中键人 pdetool,系统立即产生偏微分方程工具箱(PDE Toolb
2、ox)的图形用户界面(Graphical User Interface,简记为 GUI),即 PDE 解的图形环境,这时就可以在它上面画出定解区域、设置方程和边界条件、作网格剖分、求解、作图等工作,详见 1 4 节中的例子。我们将在第二章详细介绍 GUI 的使用,在第二章给出大量典型例子和应用实例。除了用 GUI 求解 PDE 外,也可以用 M 文件的编程计算更为复杂的问题,详见第三章和第四章 的内容。12 PDE Toolbox 求解的问题及其背景 121 方程类型 PDE Toolbox 求解的基本方程有椭圆型方程、抛物型方程、双曲型方程、特征值方程、椭圆型方程组以及非线性椭圆型方程。椭圆
3、型方程:(),c uaufin,椭圆型方程:(),c uauf in 其中是平面有界区域,c,a,f 以及未知数 u 是定义在上的实(或复)函数。抛物型方程:(),.udc uaufint 双曲型方程:22(),uc uaufint.特征值方程:(),c uauduin 其中 d 是定义在上的复函数,是待求特征值。在抛物型方程和双曲型方程中,系数 c,a,f 和 d 可以依赖于时间 t。可以求解非线性椭圆型方程:()()(),c uua uf uin 其中 c,a,f 可以是未知函数 u 的函数。还可以求解如下 PDE 方程组;11112211 1122121122221 12221()(),
4、()()cuucuua ua ufcuucuua ua uf 利用命令行可以求解高阶方程组。对于椭圆型方程,可以用自适应网格算法,还能与非线性解结合起来使用。另外,对于 Poission 方程还有一个矩形网格的快速求解器。122 边界条件(1)Dirichlet 条件:hur (2)Neumann 条件:()nc uqug 其中n是的边界上的单位外法向量,,g q h和r是定义在上的函数。对于特征值问题仅限于齐次条件:0,g 和0r。对于非线性情形系数,g q h和r可以依赖于 u;对于抛物型方程和双曲型方程,系数可以依赖于时间 t。对于方程组情形,边界条件为(1)Dirichlet 条件:1
5、1 11221h uh ur 21 12222h uh ur(2)Neumann 条件:11112211 11221()()ncuncuq uq ug 21122221 12222()()ncuncuq uq ug(3)混合边界条件为:11 11221h uh ur 11112211 1122111()()ncuncuq uq ugh 21122221 1222212()()ncuncuq uq ugh 其中的计算要使得 Dirichlet 条件满足。在有限元法中,Dirichlet 条件也称为本质边界条件,Neumann 条件称为自然边界条件。1.3 如何使用 FDE Toolbox 1.3
6、.1 定解问题的设置 员简单的办法是在 PDE Tool 上直接使用图形用户界面(GUl)。设置定解问题包括三个步骤:(1)Draw 模式:使用 CSG(几何结构实体模型)对话框画几何区域,包括矩形、圆、椭圆和多边形,也可以将它们组合使用。(2)Boundary 模式:在各个边界段上给出边界条件,(3)PDE 模式:确定方程的类型、系数 c,a,f 和 d c。也能够在不同子区域上设置不同的系数(反映材料的性质)。1.3.2 解 PDE 问题 用 GUI 解 PDE 问题主要经过下面两个过程(模式)(1)Mesh 模式;生成网格自动控制网格参数。(2)Solve 模式:对于椭圆型方程还能求非线
7、性和自适应解。对于抛物型和双曲型力程设置初始边值条件后能求出给定 t 时刻的解。对于特征值问题,能求出给定区间内的特征值;求解后可以加密网格再求解。1.3.3 使用 Toolbox 求解非标准的问题 对于非标准的问题。可以用 PDE Too1box 的函数。或者用 FEM(有限元法)求解更为复杂的问题。1.3.4 计算结果的可视化 从 GUI 能够使用 Plot 模式实现可视化。可以使用 Color,Height和 Vector 等作图。对于抛物型和双曲型方程,还可以生成解的动画。这些操作通过命令行都很容易实现。1.3.5 应用领域 在应用界面提供了丁如下应用领域 结构力学平面应力问题 结构力
8、学平面应变问题 静电场问题 静磁场问题 交流电磁场问题 直流导体介质问题 热传导问题 9散问题 这些界面都有对话框,它包括 PDE 的系数、边界条件、解的性质等。1.4 解偏微分方程的一个例子 解 Poisson 方程uf,边界条件为齐次 Dirichlet 类型。第一步:启动 MATLABl,键入 pdetool,按回车键确定便可启动GUI,然后在 Options 菜单下选择 Grid 命令,打开栅格,栅格的使用,能使用户容易确定所绘图形的大小,如图 11 1-1 第二步:分步完成平面几何造型:R1-C1-E1+R2+C2。用菜单或快捷工具,分别画矩形 R1、矩形 R2、椭圆 E1、圆 C1
9、、圆 C2。画圆时,首先选中椭圆工具,按鼠标右键并拖动即可、或者在按 ctrI 的同时,拖动鼠标也可绘制圆。然后在 Set formula 栏,进行编辑并用算术运算将将图形对象名称连接起来,删除默认的表达式键入R1-C1-E1+R2+C2,按等号健得到所需图形。若需要,还可进行储存 形成 M 文件。选择 Boundary 菜单中 Boundary Mode 命令,进入边界模式。单击 Boundary 菜单中 Remove A11 Subdomain Borders 选项,去除子域边界。如果想将几何信息和边界信息进行存储,应选择 Boundary 菜单中的 ExPort Decomposed G
10、eometryBoundary Conds命令,将它们分别储存于 g,b 变量中,通过 MATLAB 形成 M 文件。第三步:选取边界单击 Boundary 菜单中 Specify Bounddy Conditions选项,打开 Boundary conditlons 对话框,输入边界条件,如图 14。本例取缺省条件。即将全部边界设为齐次 Dirichlet 条件,边界颜色显示为红色。第四步:选择 PDE 菜单中 PDE Mode 命令,进入 PDE 模式。单击 PDE 菜单中 PDE Specification选项,打开 PDE 对话框,设置方程类型。本例取缺省设置,类型为椭圆型,参数 c,
11、a,f 分别为 1,0,10。第五步:选择 Mesh 菜单中 Initialize Mesh 命令,进行网格剖分。第六步:选择 Mesh 菜单中 Refine Mesh 命令,对网格加密。第七步:选择 Solve 菜单中 So1ve PDE 命令,解偏微分方程并显示图形解。第八步:单击 Plot 菜单中 Parameters选项,打开 Plot selection对话框,选中 Color,Height(3D Plot)和 Show mesh 三项。然后单击Plot 按钮,显示三维图形解。第九步:如果要画等值线图和矢量场图,单击 Plot 菜单中Parameters选项,打开 Plot Sele
12、ction 对话框 选中 Contour 和 Arrows两项。然后单击 P1ot 按钮,可显示解的等值线图和矢量场图。第二章 PDE 图形用户界面 2.1 PDE Toolbox 菜单 File 菜单(如图 1-1)图 1-1 New 新建一个几何结构实体模型(Constructive Solid Geomery,简记为 CSG),默认文件名为“Untitled”。Open 从硬盘装载 M 文件 Save 将在 GUI 内完成的成果储存到一个 M 文件中。Save As 将在 GUI 内完成的成果储存到另外一个 M 文件中。Print 将 PDE 工具箱完成的图形送到打印机内进行硬拷贝。Ex
13、it 退出 PDE 工具图形用户界面。2 Edit 菜单(如图 1-2)图 1-2 Undo 在绘制多边形时退回到上一步操作。Cut 将已选实体剪切到剪贴板上。Copy 将已选实体拷贝到剪贴板上。Paste 将剪贴板上的实体粘贴到当前几何结构实体模型中。Clear 删除已选的实体。Select All 选择当前几何结构实体造型 CSG 中的所有实体及其边界和字域。3 Options 菜单(如图 1-3)图 1-3 Grid 绘图时打开或关闭栅格。Grid Spacing 调整栅格的大小。Snap 打开或关闭捕捉栅格功能。Axes Limits 设置绘图轴的坐标范围。Axes Equal 打开或
14、关闭绘图方轴。Turn off Toolbar Help 关闭工具栏按钮的帮助信息。Zoom 打开或关闭图形缩放功能。Application 选择应用的模式。Refresh 重新显示 PDE 工具箱中的图形实体。4 Draw 菜单(如图 1-4)图 1-4 Draw Mode 进入绘图模式。Rectangle/square 以角点方式画矩形/方行(Ctrl+鼠标)。Rectangle/square(centered)以中心方式画矩形/方行(Ctrl+鼠标)。Ellipse/circle 以矩阵角点方式画椭圆/圆(Ctrl+鼠标)。Ellipse/circle(centered)以中心方式画椭圆
15、/圆(Ctrl+鼠标)。Polygon 画多边形,单击鼠标右键可封闭多边形。Rotate 旋转已选的图形。Export Geometry Description,Set Formula,Labels 将几何描述矩阵 gd、公式设置字符 sf和标识空间矩阵 ns 输出到主工作空间去。单击 Draw 菜单中 Rotate选项,可打开 Rotate 比对活框,通过输入旋转的角度,可使选择的物体按输入的角度逆时针旋转。旋转中心的选择如果缺省,则为图形的质心,也可以输入旋转中心坐标。5 Boundary 菜单(如图 1-5)图 1-5 Boundary Mode 进入边界模式。Specify Bound
16、ary Conditions 对于已选的边界输入条件,如果没有选择边界,则边界条件适用于所有的边界。Show Edge Labels 显示边界区域标识开关,其数据是分解几何矩阵的列数。Show Subdomain Labels 显示子区域标识开关,其数据是分解几何矩阵中的子域数值。Remove Subdomain Border 当图形进行布尔运算时,删除已选取的子域边界。Remove All Subdomain Borders 当图形进行布尔运算时,删除所有的子域边界。Export Decomposed Geometry,Boundary Conds 将分解几何矩阵 g、边界条件矩阵 b 输出
17、到主工作空间。选择 Boundary 菜单中 Specify Boundary Conditions 命令可定义边界条件。在打开的 Boundary condition 对话框,可对已选的边界输入边界条件。共有如下三种不同的条件类型:NeMmann 条件 这里边界条件是由方程系数 q 和 g 确定的,在方程组的情况下(换成方程组模式),q 是 22 矩阵,g 是 2x1 矢量。Dirichlet 条件 u 定义在边界上,边界条件方程是价 h*u=r,这里 h 是可以选样的权因子(通常为 1)。在方程组情况下,h 是 2x2 矩阵,r 是 2x l 矢量,混合边界条件(仅适合于方程组情形)它是D
18、irichlet和Neumann的混合边界条件,q 是 2x 2 矩阵,g 是 2x1 矢量,h 是 1x 2 矢量,r是一个标量。6 PDE 菜单(如图 1-6)图 1-6 PDE Mode 进入偏微分方程模式。Show Subdomain Labels 显示子区域标识开关。PDE Specification 调整 PDE 参数和类型。Export PDE Coefficients 将当前 PDE 参数 c,a,f,d 输出到主工作空间,其参数变量为字符类型。7 Mesh 菜单(如图 1-7)图 1-7 Mesh Mode 输入网格模式。Initialize Mesh 建立和显示初始化三角形
19、网格。Refine Mesh 加密当前三角型网格。Jiggle Mesh 优化网格。Undo Mesh Change 退回上一次网格操作。Display Triangle Quality 用 01 之间数字化的颜色显示三角形网格的质量,大于 0.6 的网格可接受的。Show Node Labels 显示网格节点标识开关,节点标识数据是点矩阵p 的列。Show Triangle Labels 显示三角形网格标识开关,三角形网格标识数据是三角形矩阵 t 的列。Parameters 修改网格生成参数。Export Mesh 输出节点矩阵 p、边界矩阵 e 和三角形矩阵 t 到主工作空间。8 Solv
20、e 菜单(如图 1-8)图 1-8 Solve PDE 对当前的几何结构实体 CSG、三角形网格和图形解偏微分方程。Parameters 调整 PDE 的参数。Export Solution 输出 PDE 的解矢量 u。如果可行,将计算的特征值 1 输出到主工作空间。1.1.9 Plot 菜单(如图 1-9)图 1-9 Plot Solution 显示图形解。Parameters 打开绘图方式对话框。Export Movie 如果动画被录制了,则动画矩阵 M 将输出到主工作空间。10 Window 菜单 从 Window 菜单项,可选择当前打开的所有的 MATLAB 图形窗口,被选择的窗台移至
21、前台。11 Help 菜单 Help 显示帮助信息 About 显示版本信息 12 PDE 工具栏 主菜单下是工具栏,工具栏中喊有许多工具图标按钮,可提供快速、便捷的操作方式。从左到右 5 个按钮为绘图模式按钮,紧接着的 6 个为边界、网格、解方程和图形显示控制功能按钮,最右边的为图形缩放功能键。(如图 1-10)图 1-10 以角点方式画矩形/方行(Ctrl+鼠标)。以中心方式画矩形/方行(Ctrl+鼠标)。以矩形角点长轴方式画椭圆/圆(Ctrl+鼠标)。以中心方式画椭圆/圆(Ctrl+鼠标)。画多边形,按右键可封闭多边形。进入边界模式。打开 PDE Specification(偏微分方程类
22、型)对话框。初始化三角形网格。加密三角形网格。解偏微分方程。打开 Plot Selection 对话框,确定后给出解的三维图形。为显示缩放切换按钮。第三章 典型方程及其应用实例 求解 PDE 问题主要有两种方法,一种是使用图形用户界面,另一种是采用命令行编程。前者直观简便,而后者更为灵活。21 求解椭圆方程的例子 例:单位圆上的 Poisson 方程边值问题:221,|1|0ux yxyu 这一问题的精确解为:221,.4xyu x y 若使用图形用户界面(Graphical User Interface,简记为 GUI),则首先在 MATLAB 的工作窗口中键入 pdetool,按回车键确定
23、,于是出现 PDE Toolbox 窗口。如果需要坐标网格,单击 Options 菜单下的 Grid选项即可。下面分步进行操作。(i)画区域圆 单击工具,大致在(0,0)位置单击鼠标右键同时拖拉鼠标到适当位置松开,绘制圆。为了保证所绘制的圆是标准的单位圆,在所绘圆上双击,打开 Object Dialog 对话框,精确地输入圆心坐标 X-center 为 0、Y-cebter 为 0 及半径 Radius 为 1,然后单击 OK 按钮,这样单位远已画好。(ii)设置边界条件 单击工具,图形边界变红,逐段双击边界,打开 Boundary Condition 对话框,输入边界条件。对于同一类型的边界
24、,可以按 Shift 键,将多个边界同时选择,统一设置边界条件。本题选择 Dirichlet 条件,输入 h 为 1,r 为 0,然后单击 OK 按钮。也可以单击 Boundary 菜单中 Specify Boundary Conditions选项,打开 Boundary Condition 对话框输入边界条件,如图 2-1。(iii)设置方程 单击 PDE 菜单中 PDE Specification选项,打开 PDE Specification 对话框,选项方程类型。本题单击 Elliptic,输入c 为 1,a 为 0,f 为 1,然后单击 OK 按钮,如图 2-2。图 2-1 图 2-2
25、(iv)网格剖分 单击工具,或者单击 Mesh 菜单中 Initialize Mesh 选项,可进行初始网格剖分,这时在 PDE Toolbox 窗口下方的状态栏内显示初始问网格的节点数和三角形单元数。本题节点数为144 个,三角形单元数为 254 个。如果需要网格加密,再单击,或者单击 Mesh 菜单中 Refine Mesh 选项,这时节点数变为 541 个,三角形单元数为 1016 个,如此还可继续加密。(v)解方程 单击工具,或者单击 Solve 菜单中 Solve 菜单中 Solve PDE 选项,可显示方程色彩解。如果单击 Plot 菜单中Parameters选项,出现 Plot
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微分方程 数值
限制150内