文档详情

MATLAB与PDE工具箱.pptx

发布:2017-06-01约1.94千字共33页下载文档
文本预览下载声明
MATLAB和PDE工具箱 经验分享 卫超 MATLAB Matrix laboratory,矩阵实验室 MATLAB具有强大的数学计算能力,包含众多现成的数学函数,例如sin(),cos(),exp(),log()等等 随着不断的开发,其作用不仅仅是一个大型的计算器,而是一个分析工具,不仅仅适用于编程人员,部分功能对于编程水平一般的也同样适用,比如后面要说的偏微分方程工具箱 结构 采用大部分MATLAB书籍经典结构: MATLAB安装 常量变量,数据类型(前三章) 介绍矩阵运算 两大运算类型,数值运算符号运算 绘图和高级绘图 GUI设计简介及各种工具箱简介 数据类型 教科书上给出的是 数组 个人总结为 数 字符 (一维)向量 矩阵 或者说是number string 对于图像处理,GUI设计,数据类型非常重要(主要是数和字符),时常需要数据类型转换,num2str,str2num,double。。。 大多数的时候,初级的数据分析或者仿真都是处理的数--number 矩阵 MATLAB强大之处就是对矩阵的处理,包含很多矩阵运算的函数,求逆,转置,单位阵,三角阵,矩阵四则运算 最经典的矩阵初始化:全1矩阵和全0矩阵ones(M,N),zeros(M,N) 矩阵运算的好处,相当于批处理,简洁方便,速度快,有现成的矩阵理论做指导 运算(计算)分类 按照运算处理对象,可以将MATLAB分为数值运算和符号运算 数值运算,即处理的对象为具体的实实在在的数,具象的,有实际数值内容的变量 符号运算,处理对象为符号变量syms(或者称为系统变量),抽象的 初级只需了解数值运算即可 实例 方法一:数值运算 plot([-3 -1/2],[0 0]); hold on; plot([-1/2 1/2],[1 1]); plot([1/2 3],[0 0]); plot([-1/2 -1/2],[0 1]); plot([1/2 1/2],[1 0]); hold off; axis equal; 结果1 方法二:符号运算 syms t f=heaviside(t+1/2)-heaviside(t-1/2); ezplot(f,[-3 3]); axis equal; 结果2 分析 数值运算处理离散的点,或者将连续变量分割成离散的点来运算,见下面方法三 符号运算处理连续的符号变量,无须个人将其离散化 符号运算不能比较大小,所以对于分段函数,一般用阶跃函数处理 方法三:还是数值运算 t=-3:6/1000:3; L=length(t); f=zeros(1,L); for i=1:L if t(i)-1/2 t(i)1/2 f(i)=1; end end plot(t,f); axis equal; 结果3 高级绘图 绘图里的高级功能 对图像进行处理,加标注等 三维 自建坐标系 GUI设计 Graphical User Interface 图形用户界面 像C语言编写的窗口程序,MFC? 分为编程写出GUI和在GUI设计界面里设计两种方法 相当于自编一个小的工具箱界面 MATLAB工具箱 不许知道底层程序,只需了解对应的工具箱的操作规范,在工具箱条件满足的情况下,输入入口参数,得到出口参数的分析结果 比如语音信号处理工具箱voicebox,偏微分方程工具箱PDEToolbox PDEToolbox 数学准备工作 三种数理方程 PDEToolbox注意事项 只能解决二维模型,一维的扩成二维,三维的缩成二维,时间维不计算在内 公式类型,只能解决部分偏微分方程,由公式类型决定 边界条件两种,Dirichlet和Neumann 初始条件 例子 细杆导热问题 先确定方程大类 Draw Mode 画图模式,先将处理的区域画出来,二维,方形,圆形,支持多边形,可以手动更改坐标,旋转rotate 例如,对于细杆导热,虽然是一维问题,可以将宽度y虚拟出来,对应于y的边界条件和初始条件按照题意制定 Boundary Mode PDE Mode PDE Specification,确定偏微分方程类型 共有四种: 椭圆形Elliptic 抛物型Parabolic 双曲型Hyperbolic 本征型Eigenmodes Mesh Mode 网格划分,细化 Solve,Plot 如果有初始条件(与t有关),则在Solve的Parameters里有其设定,如果没有初始条件(与t无关),则不必设定 Plot只是确定画图的参数,包括是否动画,是否3D,是否画出等温线,是否有箭头。。。 Save As 保存成M-file,自动生成
显示全部
相似文档