《Matlab初步教程》PPT课件.ppt

上传人:re****.1 文档编号:571261539 上传时间:2024-08-09 格式:PPT 页数:39 大小:216.10KB
返回 下载 相关 举报
《Matlab初步教程》PPT课件.ppt_第1页
第1页 / 共39页
《Matlab初步教程》PPT课件.ppt_第2页
第2页 / 共39页
《Matlab初步教程》PPT课件.ppt_第3页
第3页 / 共39页
《Matlab初步教程》PPT课件.ppt_第4页
第4页 / 共39页
《Matlab初步教程》PPT课件.ppt_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《《Matlab初步教程》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《Matlab初步教程》PPT课件.ppt(39页珍藏版)》请在金锄头文库上搜索。

1、第一章 Matlab6.5概述 Matlab名字的产生应该追溯到两个美文单词:名字的产生应该追溯到两个美文单词:Matrix和和Laboratory。20世纪世纪70年代后期,年代后期,美国新墨西哥大学计算机主任美国新墨西哥大学计算机主任Cleve Moler教授教授为了便于教学,为为了便于教学,为Linpack和和Eispack两个软件两个软件包编写了接口程序,从而为学生编写包编写了接口程序,从而为学生编写FORTRAN程序减轻负担,此即程序减轻负担,此即MATLAB的萌芽。的萌芽。 1984年,成立年,成立MATH WORKS公司,并把公司,并把MATLAB正式推向市场。正式推向市场。MA

2、THEMATICAMATHCADMatlab6.5概述 在当前在当前30多个教学类科技应用软件中,多个教学类科技应用软件中,就数学处理功能而言,可分为两个大类:就数学处理功能而言,可分为两个大类:1)数值计算型软件)数值计算型软件 : 如如MATLAB、XMATH、GAUSS等等 2)数学分析型软件)数学分析型软件 : MATHEMATICA、MAPLE Matlab6.5概述该软件的缺点:该软件的缺点: 由于由于Matlab的程序不用编译等预处理,也不的程序不用编译等预处理,也不生成可执行文件。程序属于解释执行,所以程序的生成可执行文件。程序属于解释执行,所以程序的执行速度较慢执行速度较慢,

3、另外由于该软件运行过程中对赋值,另外由于该软件运行过程中对赋值后的变量未作处理前,变量常驻内存,因而程序运后的变量未作处理前,变量常驻内存,因而程序运行到一定程度会行到一定程度会消耗很大的内存空间消耗很大的内存空间。在。在图形界面图形界面编程能力编程能力方向该软件和方向该软件和Visual C +和和Visual Basic等可视化编程软件相比功能相对较差。等可视化编程软件相比功能相对较差。MATLAB的安装和内容选择的安装和内容选择组件名称功用1、必须选择的本原性组件MATLAB这是最核心的部分。2、最常选的通用性工具包组件Symbolic Math符号类数据的操作和计算3、其他通用性工具包

4、组件SimulinkOptimizationMatlab CompilerMatlab C/C+ Math libraryMatlab C/C+ Graphic Library建模和仿真求函数零点、极值、等优化编辑与Matlab Compiler配合与Matlab Compiler配合4、常用专业性工具包组件Control SystemSignal ProcessingSplineStatistics控制问题信号处理样条和插值函数统计分析5、其它专业性工具包组件StateflowSystem Identification与Simulink配合使用,动态系统识别第二章 Matlab6.5初步知识

5、2.1Matlab的启动的启动1点击桌面上的点击桌面上的Matlab6.5快捷图标快捷图标2通过打开开始菜单的程序选项选择通过打开开始菜单的程序选项选择Matlab6.5的的程序选项程序选项3在在Matlab6.5binwin32文件类中的文件类中的Matlab.exe.建议优先采用方法一。建议优先采用方法一。 Matlab6.5初步知识2.2Desktop工具界面简介工具界面简介 默认情况下,默认情况下,Matlab6.5工作界面包括工作界面包括6个窗个窗口:主窗口、命令窗口、命令历史记录窗口、当前口:主窗口、命令窗口、命令历史记录窗口、当前目录窗口、工作空间窗口和发行说明窗口。目录窗口、工

6、作空间窗口和发行说明窗口。 该界面的上层铺放着该界面的上层铺放着3个最常用的界面:个最常用的界面:指令指令窗窗(命令窗口(命令窗口Command window) 历史指令历史指令窗窗(command History),工作空间浏览器工作空间浏览器(Workspace Browser)。还有一个当前目录还有一个当前目录窗口(窗口(current Directory)铺放在桌面下层。)铺放在桌面下层。 Matlab6.5初步知识1、command window2、command history3、current directory4、workspace browser和和array editor5

7、、lunch pad6、editor/debugger7、Help Navigator/BrowserMatlab6.5初步知识2.2.2Command Window入门入门1、简介、简介2、计算器功能、计算器功能3、数值、变量、表达式(与其它语言类似,、数值、变量、表达式(与其它语言类似,特别留意复数表示,自学)特别留意复数表示,自学)4、数值计算结果的显示格式、数值计算结果的显示格式5、指令行的标点符号、指令行的标点符号(,。;:,。;:()()_.)Matlab6.5初步知识2.2.4其它操作界面其它操作界面Command History, Current directory, Work

8、space Browser, Array Editor, Launch Pad,Editor/Debugger和教本编写初步和教本编写初步Matlab6.5初步知识2.3Matlab6.5的帮助系统的帮助系统1、纯文本帮助(、纯文本帮助(help help)2、导航、导航/浏览器交互界面帮助浏览器交互界面帮助(navigator)3、PDF帮助帮助(documentation)Matlab6.5初步知识2.4引导引导【例例2.1-1】绘制函数绘制函数 在在 时的曲线。时的曲线。x=0:0.1:1y=x.*exp(-x)plot(x,y,xlabel(x),ylabel(y),title(y=x

9、*exp(-x) Matlab6.5初步知识2.5一维数组的创建和寻访一维数组的创建和寻访1)逐个元素输入法)逐个元素输入法 x=2 3 4 52)冒号生成法)冒号生成法 x=1:1:103)定数线性采样法)定数线性采样法 x=linspace(a,b,n)4)定数对数采样法)定数对数采样法 x=logspace(a,b,n)Matlab6.5初步知识2.6二维数组的创建和标识二维数组的创建和标识1)直接输入法)直接输入法 a=1 2 3; 4 5 6;7 8 92)利用)利用M文件创建和保存数组文件创建和保存数组 MyMatrix.m Creation and preservation of

10、 matrix AMAM=101,102,103,104,105,106,107,108,109;. 201,202,203,204,205,206,207,208,209;. 301,302,303,304,305,306,307,308,309;3)“全下标全下标”标识标识a(1,2)=2a(m,n)表示第表示第m行第行第n列的元素列的元素Matlab6.5初步知识2.7执行数组运算的常用函数执行数组运算的常用函数(p46)2.8数组运算和矩阵运算数组运算和矩阵运算(p48)自学自学第三章 Matlab6.5程序设计语言 用用Matlab编程语言编写的可以在编程语言编写的可以在Matlab

11、工作空间中运行的程序,称为工作空间中运行的程序,称为M文文件件。 M文件根据调用方式的不同分为两类:文件根据调用方式的不同分为两类:命令文件和函数文件命令文件和函数文件。Matlab6.5程序设计语言例如:用例如:用Matlab语言来定义一个函数,语言来定义一个函数, 并计算并计算x = 1时,时,y的值。的值。 1)采用命令文件直接计算函数值)采用命令文件直接计算函数值建立文件建立文件f.mX=1;Y= x2 2 * x + 3 Matlab6.5程序设计语言2)采用函数文件定义函数采用函数文件定义函数f(x)a.建立函数文件建立函数文件f.m function y = f(x) y = x

12、2 2 * x + 3 b.在命令窗口键入在命令窗口键入x=1;y=f(x)Matlab6.5程序设计语言两者的区别两者的区别 : 命令文件命令文件不需要输入参数,也不返回输出参数,不需要输入参数,也不返回输出参数,它是命令的叠加它是命令的叠加 。命令文件对空间中的变量进行。命令文件对空间中的变量进行操作操作 。 函数文件函数文件通常包含输入参数,也可以返回输出通常包含输入参数,也可以返回输出参数,它还能解决参数传递和出数调用的问题,第参数,它还能解决参数传递和出数调用的问题,第一句必须以一句必须以function的引导。函数文件的变量为的引导。函数文件的变量为局域变量局域变量 Matlab6

13、.5程序设计语言函数文件的格式:函数文件的格式:function a,b,c = funexm (x,y,z) 输出参数输出参数 函数名函数名 输入参数输入参数 ( 若没有输出参数时,输出参数为空,或用空的中括号表示若没有输出参数时,输出参数为空,或用空的中括号表示)function funexm (x)function = funexm (x)*注意:不识别汉字文件名注意:不识别汉字文件名第四章 数值计算一、插值和样条一、插值和样条 Matlab6.5提供的插值指令有提供的插值指令有6条,这里只介条,这里只介绍一维插值。绍一维插值。命令:命令:Method 具体取名有:具体取名有:linea

14、r:线性插值,作为缺省设置:线性插值,作为缺省设置cubic:三次多项式插值:三次多项式插值spline:三次样条插值:三次样条插值nearst:最近邻插值(同最近邻点的值相等:最近邻插值(同最近邻点的值相等)x,y已知的基准数据已知的基准数据x1待插值点待插值点Method插值方法插值方法 例例1:p62例题例题5 (p62exp5.m) 已知丙苯粘度随温度变化的四点数据已知丙苯粘度随温度变化的四点数据 T 40 45 55 75 0.68 0.64 0.56 0.45求求70度的粘度。度的粘度。x=40 45 55 75;y=0.68 0.64 0.56 0.45;x1=70y1=inte

15、rp1(x,y,x1,cubic)plot(x,y,b,x,y,o,x1,y1,*)第四章 数值计算二、多项式拟合和非线性最小二乘法二、多项式拟合和非线性最小二乘法1、多项式的表示:、多项式的表示: 例如:例如:p=1 -5 6 8poly2sym(p) % (将多项式向量表示为符号表达式形式将多项式向量表示为符号表达式形式)第四章 数值计算2、多项式的值、多项式的值p=1 2 3 4 5;b=2 2; 3 3polyval(p,b) (对每个元素进行计算,把对每个元素进行计算,把x=2,2,3,3分别代入计算分别代入计算)polyvalm(p,b)(按矩阵计算,把(按矩阵计算,把x=b矩阵代

16、入计算)矩阵代入计算)第四章 数值计算3、多项式的拟合、多项式的拟合 (exp3.m)例如:例如:x=1 2 3 4 5 6;y=1 4 9 16 24 35; p=polyfit(x,y,2)x1=1:0.1:6;y1=polyval(p,x1);plot(x,y,*,x1,y1,r)第四章 数值计算4、非线性参数拟合(非线性最小二乘估计)非线性参数拟合(非线性最小二乘估计)有两种方法:有两种方法:fminsearch,lsqnonlin (marquadst麦夸托算法麦夸托算法)1)假设被估参数不太多(比如,不超过假设被估参数不太多(比如,不超过5,6个),且个),且对最小值点有较好的初试

17、估计,对最小值点有较好的初试估计,fminsearch是优是优先推荐使用的先推荐使用的Matlab指令)指令) 第四章 数值计算例如:例如:x=0:0.2:4;y=15.135 9.0162 5.9249 4.115 3.2235 2.5787 2.10121.7052 1.7500 1.4815 1.4026 1.3424 1.2808 1.1347 0.88330.8761 0.96520.8953 0.6840 0.7743 0.4731;a0=1 1 1 1options=optimset(fminsearch)a=fminsearch(exps,a0,options,x,y)func

18、tion E=exps(a,x,y)Y=a(1)*exp(-a(3)*x)+a(2)*exp(-a(4)*x)E=sum(y-Y).2); X的列表数据y的列表数据第四章 数值计算2)Marquadst算法相关指令:function E=lsqnonlinfun(a,x,y)Y=a(1)*exp(-a(3)*x)+a(2)*exp(-a(4)*x)E=Y-y;x=0:0.2:4y0=3*exp(-0.4*x)+12*exp(-3.2*x)y=y0+0.3*(rand(size(x)-0.5)a0=1 10 0.2 1options=optimset(lsqnonlin)a=lsqnonlin(

19、lsqnonlinfun,a0,options,x,y)第四章 数值计算三、三、LU分解和恰定方程组的解分解和恰定方程组的解1、LU分解分解 LU=PA (可理解为按列选主元)(可理解为按列选主元) L,U,P=lu(A) P为倒置推导,为了保证主元消去策略的实施,一般说来,必须对为倒置推导,为了保证主元消去策略的实施,一般说来,必须对 被分解矩阵实施行置换。被分解矩阵实施行置换。P含有行转置信息。含有行转置信息。 当当L,U=lu(a),L、U一般不是上三角和下三角矩阵一般不是上三角和下三角矩阵 当当L,U,P=lu(a),L、U为三角矩阵为三角矩阵2、AX=b 恰定方程组的解恰定方程组的解

20、 X=Ab第四章 数值计算四、函数的零点四、函数的零点1、多项式的根、多项式的根 对于对于 的多项式的多项式 p= roots(p)第四章 数值计算2、一元函数的零点、一元函数的零点 (非线性方程的根)(非线性方程的根) 1)利用作图指令获取初步近似植。)利用作图指令获取初步近似植。 2)求一元函数零点的精确指令)求一元函数零点的精确指令 Z=fzero(fun,x0) 完整指令:完整指令:z,f_z,exitflag,output=fzero(fun,x0,option,p1,p2,)*注意:注意:fzero只能求取一元连续函数穿越横轴的零点,不会只能求取一元连续函数穿越横轴的零点,不会确定

21、与确定与x轴接触而不穿越的零点,如轴接触而不穿越的零点,如sinx=0,(x-1)2=0第四章 数值计算例例1:求:求 以以 t为自变量的为自变量的f(t)=0的根的根function y=fzeroexp(t,a,b) y=sin(t)2*exp(-a*t)-b*abs(t);a=0.1;b=0.5;t=-10:0.01:10;y = fzeroexp(t,a,b)plot(t,y,r); hold onplot(t , zeros(size(t) , k , xlabel(t) ; ylabel(y(t);hold offzoom ontt,yy=ginput(5);zoom offt4,

22、y4,exitflag = fzero (fzeroexp , tt(4) , , a , b )例例2:教材:教材P109例例8。D=0:0.02:0.5y=fp109exp8(D)plot(D,y,r)hold onplot(D,zeros(size(D),k)tt,yy=ginput(1);D=fzero(fp109exp8,tt)function y=f(D)y=8820*D.5-2.31*D-0.6465;第四章 数值计算3、多元函数的零点、多元函数的零点 (非线性方程组求根)(非线性方程组求根) 有了初始零点后,求零点的精确解,可以借助有了初始零点后,求零点的精确解,可以借助fso

23、lve进行,指令格式如下:进行,指令格式如下: x= fsolve (fun, x0) x , fval ,exitflag , output , Jacob = fsolve(fun,x0,options ,p1 , p2 , )第四章 数值计算例:例: 解二元方程组的零点解二元方程组的零点 f1(x,y) =sin(x-y) = 0 f2(x,y)=cos(x+y) = 0function y=fsolveexp(x)y(1)=sin(x(1)-x(2) );y(2)=cos(x(1)+x(2);xy,f,exit=fsolve(fsolveexp,x0,y0)第四章 数值计算 五、常微分

24、方程五、常微分方程 1、初值问题、初值问题 指令格式:指令格式: t , yy=ode45(f , tspan,y0)t,YY,Te,Ye,Ie=solver(F,tspan,y0,options,p1,p2,)积分区间积分区间函数初值函数初值其它输入参数其它输入参数例例1:用龙格库塔法解:用龙格库塔法解 (教材教材P150例例12)x,y=ode45(fp150exp12,0 1,0 1)plot(x,y(:,1),*)hold onplot(x,y(:,2),r)function dy=fp150exp12(x,y)dy=x*y(2)+1;-x;第四章 数值计算例2:Matlab教材P179第四章 数值计算 function Yd=Dydt(t,Y) Global G Me Yd=y(3) ; y(4) ; -G*Me*y(1)/sqrt(y(1)2+y(2)2)3 ; 主程序:主程序: Global G Me G=6.672e-11 ; Me=5.97e24 ; t0=0 ; tf =60*60*24*9 Tspan =t0,tf y0=-4.2e7; 0 ; 0 ; 4000 t,YY=ode45(Dydt , tspan , y0) 第四章 数值计算2、边值问题、边值问题

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号