Matlab中偏微分方程工具箱基础用法

Preface: 

        本文主要介绍Matlab R2022b版本中偏微分方程工具箱的基础用法,是个人学习时写的入门笔记(学的非常浅),内容主要包括以下几方面:

1.Matlab中偏微分方程工具箱简介。
2.双曲线型PDE,生成动画。
3.椭圆形非线性PDE,参数为函数,应用非线性解法。
4.椭圆形线性PDE,用实际物理问题模板,解热传导方程。
5.椭圆形线性PDE,正常解法,画图。
6.抛物线型PDE,正常解,热传导问题,生成动画。

一.工具箱介绍

1.简介

        MATLAB中的PDE工具箱具有强大功能,用于解决偏微分方程和边界值问题。它是MATLAB的一个附加组件,为工程师、科学家和数学家提供了一个方便的方式来建模、分析和解决各种PDE问题。下面是PDE工具箱的一些主要功能和特点:

  • 图形用户界面(GUI): PDE工具箱提供了一个直观的GUI,称为PDE工具,用于建立和编辑PDE模型。这个GUI使用户能够轻松地定义几何形状、设置边界条件和初始化条件,以及选择求解器。

  • 支持多种PDE类型: PDE工具箱支持各种PDE类型,包括椭圆型、抛物型和双曲型PDE。用户可以选择适合其特定问题的PDE类型,并进行相应的分析和求解。

  • 自定义几何形状: 用户可以使用PDE工具箱创建自定义的几何形状,以反映其实际问题。这使得模拟各种真实世界应用变得更加容易。

  • 边界条件设置: 工具箱允许用户指定各种边界条件,包括固定值、导数值和自定义函数,以模拟问题的真实边界条件。

  • 初始条件设置: 用户可以设置初始条件,以定义问题的初始状态。这对于时间依赖的问题非常重要。

  • 求解器选择: PDE工具箱提供了多种求解器选项,用户可以选择合适的求解器来解决其问题。这些求解器包括有限元法、有限差分法等。

  • 结果可视化: 工具箱提供了丰富的结果可视化功能,用户可以轻松地查看模拟结果,包括温度分布、应力分布等等。

  • 脚本支持: 对于高级用户,PDE工具箱也支持MATLAB脚本,使他们能够更精细地控制问题的建模和求解过程。

  • 应用领域广泛: PDE工具箱可用于多个领域,包括物理学、工程学、生物医学等等,用于解决各种PDE问题。

2.基础操作
  • 区域绘制:打开Options-grid网格,设置Axes limits边界,Axes equal边界等宽(不设鼠标右键画圆可能不标准),Draw mode,绘制完,进行交并补运算,交并用括号分开,Boundary mode,Remove all subdomain Borders去除多余部分。
Matlab中偏微分方程工具箱基础用法_第1张图片 绘制求解区域
Matlab中偏微分方程工具箱基础用法_第2张图片 求解区域边线
  •  点击 生成网格,网格越密越精准:
Matlab中偏微分方程工具箱基础用法_第3张图片 生成网格
  •  配置边界条件:

Matlab中偏微分方程工具箱基础用法_第4张图片

         说明:Dirichlet边界一般h=1,r可为x、u的函数或者偏导。Hyperbolic是双曲型,parabolic是抛物线型。div是一阶偏导。PDE默认时间向量是t=0:10,后面生成pde输出随时间变化的gif时用到。

  • UI工具:工具箱上方的 为绘制多边形,右键封口。 为边界模式。为集合运算 。

二.PDE TOOL解二阶PDE示例

1.双曲型PDE,u对t二阶导,参数全为实数:

  • 边界条件:边界上所有u为5,求解区域同上面的基础操作中绘制的区域。

Matlab中偏微分方程工具箱基础用法_第5张图片

  • 对比上面的双曲型标准PDE得出4个参数,点 配置偏微分方程:

Matlab中偏微分方程工具箱基础用法_第6张图片

  • 修改边界条件:

Matlab中偏微分方程工具箱基础用法_第7张图片

  • 边界上u都是5,在Dirichlet里令r为5,点 得出t=10时刻的解:

Matlab中偏微分方程工具箱基础用法_第8张图片

  •         点 设置出图选项:

Matlab中偏微分方程工具箱基础用法_第9张图片

Contour:等值线

Arrows:引力线

Height(3D):绘制3D图

Animation:绘制动画,options里设置重复和帧率

Colormap:设置解的图形颜色

Time for plot:出图时刻

  • 等值线:t=10
  • Matlab中偏微分方程工具箱基础用法_第10张图片

    引力线:t=10

Matlab中偏微分方程工具箱基础用法_第11张图片

  • 3D:t=10,下图分别为有颜色与无颜色:

Matlab中偏微分方程工具箱基础用法_第12张图片

Matlab中偏微分方程工具箱基础用法_第13张图片

  •  改变t=5,Time for plot选5

Matlab中偏微分方程工具箱基础用法_第14张图片

  • 因为方程是u对x,y,t的函数,方程的解应为动画。
  • Matlab中偏微分方程工具箱基础用法_第15张图片

    点Solve里的parameters设置时间向量:0:0.1:4。回Plot Selection设置帧率和重复次数。

Matlab中偏微分方程工具箱基础用法_第16张图片

  •  横纵坐标代表x,y,颜色深浅代表u,u相当于z轴垂直于平面,在不同位置不同时间u不同。

2.非线性椭圆形PDE,u对t不求导,参数为函数

  • 边界为0,区域如和刚才一样。
  1. 首先配置PDE,对比标准型得到3个参数:

c=1./sqrt(1+ux.^2+uy.^2),a=x.^2+y.^2,

f=exp(-x.^2-y.^2)

Matlab中偏微分方程工具箱基础用法_第17张图片

  •  配置边界条件:Specify Boundary Conditions

Matlab中偏微分方程工具箱基础用法_第18张图片

  •  观察方程:u只与x,y有关与t无关不用考虑时间变量,边界条件是边界为0所以用Dirichlet,本题椭圆形PDE为非线性。因为是非线性椭圆形PDE所以用非线性求解方法。在Solve Parameters里设置:(只适用椭圆形)

Matlab中偏微分方程工具箱基础用法_第19张图片

  •  求解结果:

Matlab中偏微分方程工具箱基础用法_第20张图片

  •  等值线:

Matlab中偏微分方程工具箱基础用法_第21张图片

  •  引力线:

Matlab中偏微分方程工具箱基础用法_第22张图片

  •  3D:

Matlab中偏微分方程工具箱基础用法_第23张图片


 3.线性椭圆型PDE:热传导问题,u对t不求导,区域如前。

Matlab中偏微分方程工具箱基础用法_第24张图片

  • 热传导系数:λ=30W/(m*K)
  • 空气热对流系数:h=100W/K*m2
  • 外界温度:Text=425K
  • 法相热流密度:q0=1000W/s*m
  • 内部热源:Q=0

 正常椭圆型PDE:

 因为本体为实际问题所以解法不同,前两道题都是普通PDE问题。

 首先在PDE工具箱上方选择问题类别:

 配置本题PDE:

Matlab中偏微分方程工具箱基础用法_第25张图片

 配置边界条件:本题为诺伊曼边界条件,将参数带入边界条件: ,简化: 对比诺尼曼边界条件标准型得:q=0,g=33.33

Matlab中偏微分方程工具箱基础用法_第26张图片

 求解结果:

Matlab中偏微分方程工具箱基础用法_第27张图片

Matlab中偏微分方程工具箱基础用法_第28张图片


4.线性椭圆形Poisson PDE 边值问题

 精确解:  用PDE tool仿真。

  • 绘制求解区域:先画一个圆然后双击修改参数

Matlab中偏微分方程工具箱基础用法_第29张图片

Matlab中偏微分方程工具箱基础用法_第30张图片

  • 配置边界条件:因为是边值问题所以用Dirichlet
  • 先点Boundary里Boundary Mode再点Specify配置

Matlab中偏微分方程工具箱基础用法_第31张图片

配置PDE:div= ,对比参数得到c,a,f

Matlab中偏微分方程工具箱基础用法_第32张图片

  • 网格化后求解:

Matlab中偏微分方程工具箱基础用法_第33张图片

Matlab中偏微分方程工具箱基础用法_第34张图片

  •  等值线,引力线:

Matlab中偏微分方程工具箱基础用法_第35张图片

  •  3D:

Matlab中偏微分方程工具箱基础用法_第36张图片


5. 抛物线型热传导方程:u对t求一阶导

Matlab中偏微分方程工具箱基础用法_第37张图片

  • 绘制正方形求解区域:先画一个矩形双击修改

Matlab中偏微分方程工具箱基础用法_第38张图片

  •  Left是底边左端横坐标,Bottom是底边纵坐标,Width和Height对应宽高。设置坐标轴等宽,不然PDE tool显示与显示器分辨率有关看上去不像正方形。

Matlab中偏微分方程工具箱基础用法_第39张图片

  • 配置PDE:对比得参数。

Matlab中偏微分方程工具箱基础用法_第40张图片

  • 配置边界条件:边界上所有点值为φ(x,y) ,abs为绝对值

Matlab中偏微分方程工具箱基础用法_第41张图片

  • 配置时间向量、初值IC:Solve里parameters后两项为公差和绝对公差。

Matlab中偏微分方程工具箱基础用法_第42张图片

  • 网格化、求解PDE:

等值线:

Matlab中偏微分方程工具箱基础用法_第43张图片

 配置输出:

Matlab中偏微分方程工具箱基础用法_第44张图片

 配置动图格式:fps越高动画越快,10即可。

Matlab中偏微分方程工具箱基础用法_第45张图片

 Plot:

Matlab中偏微分方程工具箱基础用法_第46张图片

结论:初始条件不光滑但方程解可能是光滑的。


实际物理问题MATLAB有现成模板可以选择:

Generic scalar:泛型标量   generic system:通用系统

Structural mesh,Plane stress:结构力学、平面应力

Structural mesh,Plane strain:平面应变(张力)

Electron statics:静电学   magnetostatics:静磁学

AC Power Electromagnetics:交流功率电磁学

Conductive Media DC:直流导电介质   Diffusion:扩散

你可能感兴趣的:(Matlab,偏微分方程,matlab)