Matlab初步教程

上传人:xuey****n398 文档编号:244957249 上传时间:2024-10-06 格式:PPT 页数:39 大小:311.49KB
返回 下载 相关 举报
Matlab初步教程_第1页
第1页 / 共39页
Matlab初步教程_第2页
第2页 / 共39页
Matlab初步教程_第3页
第3页 / 共39页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第一章 Matlab6.5概述,Matlab名字的产生应该追溯到两个美文单词:Matrix和Laboratory。20世纪70年代后期,美国新墨西哥大学计算机主任Cleve Moler教授为了便于教学,为Linpack和Eispack两个软件包编写了接口程序,从而为学生编写FORTRAN程序减轻负担,此即MATLAB的萌芽。,1984年,成立MATH WORKS公司,并把MATLAB正式推向市场。,MATHEMATICA,MATHCAD,Matlab6.5概述,在当前30多个教学类科技应用软件中,就数学处理功能而言,可分为两个大类:,1)数值计算型软件:,如MATLAB、XMATH、GAUSS等,2)数学分析型软件:,MATHEMATICA、MAPLE,Matlab6.5概述,该软件的缺点:,由于Matlab的程序不用编译等预处理,也不生成可执行文件。程序属于解释执行,所以程序的,执行速度较慢,,另外由于该软件运行过程中对赋值后的变量未作处理前,变量常驻内存,因而程序运行到一定程度会,消耗很大的内存空间,。在,图形界面编程能力,方向该软件和Visual C+和Visual Basic等可视化编程软件相比功能相对较差。,MATLAB的安装和内容选择,组件名称,功用,1、必须选择的本原性组件,MATLAB,这是最核心的部分。,2、最常选的通用性工具包组件,Symbolic Math,符号类数据的操作和计算,3、其他通用性工具包组件,Simulink,Optimization,Matlab Compiler,Matlab C/C+Math library,Matlab C/C+Graphic Library,建模和仿真,求函数零点、极值、等优化,编辑,与Matlab Compiler配合,与Matlab Compiler配合,4、常用专业性工具包组件,Control System,Signal Processing,Spline,Statistics,控制问题,信号处理,样条和插值函数,统计分析,5、其它专业性工具包组件,Stateflow,System Identification,与Simulink配合使用,,动态系统识别,第二章 Matlab6.5初步知识,2.1Matlab的启动,1点击桌面上的Matlab6.5快捷图标,2通过打开开始菜单的程序选项选择Matlab6.5的程序选项,3在Matlab6.5binwin32文件类中的Matlab.exe.,建议优先采用方法一。,Matlab6.5初步知识,2.2Desktop工具界面简介,默认情况下,Matlab6.5工作界面包括6个窗口:主窗口、命令窗口、命令历史记录窗口、当前目录窗口、工作空间窗口和发行说明窗口。,该界面的上层铺放着3个最常用的界面:,指令窗,(命令窗口Command window),历史指令窗,(command History),工作空间浏览器,(Workspace Browser),。,还有一个当前目录窗口(current Directory)铺放在桌面下层。,Matlab6.5初步知识,1、command window,2、command history,3、current directory,4、workspace browser和array editor,5、lunch pad,6、editor/debugger,7、Help Navigator/Browser,Matlab6.5初步知识,2.2.2Command Window入门,1、简介,2、计算器功能,3、数值、变量、表达式(与其它语言类似,特别留意复数表示,自学),4、数值计算结果的显示格式,5、指令行的标点符号(,。;:()_.),Matlab6.5初步知识,其它操作界面,Command History,Current directory,Workspace Browser,Array Editor,Launch Pad,Editor/Debugger和教本编写初步,Matlab6.5初步知识,的帮助系统,1、纯文本帮助(help help),2、导航/浏览器交互界面帮助(navigator),3、PDF帮助(documentation),Matlab6.5初步知识,2.4引导,【例2.1-1】绘制函数 在,时的曲线。,x=0:0.1:1,y=x.*exp(-x),plot(x,y,xlabel(x),ylabel(y),title(y=x*exp(-x),Matlab6.5初步知识,2.5一维数组的创建和寻访,1)逐个元素输入法,x=2 3 4 5,2)冒号生成法,x=1:1:10,3)定数线性采样法,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 9,2)利用M文件创建和保存数组,MyMatrix.m Creation and preservation of matrix AM,AM=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)=2,a(m,n)表示第m行第n列的元素,Matlab6.5初步知识,2.7执行数组运算的常用函数(p46),2.8数组运算和矩阵运算(p48),自学,第三章 Matlab6.5程序设计语言,用Matlab编程语言编写的可以在Matlab工作空间中运行的程序,称为,M文件,。,M文件根据调用方式的不同分为两类:,命令文件和函数文件,。,Matlab6.5程序设计语言,例如:用Matlab语言来定义一个函数,,并计算x=1时,y的值。,1)采用命令文件直接计算函数值,建立文件f.m,X=1;,Y=x2 2*x+3,Matlab6.5程序设计语言,2)采用函数文件定义函数f(x),a.建立函数文件f.m,function y=f(x),y=x2 2*x+3,b.在命令窗口键入,x=1;,y=f(x),Matlab6.5程序设计语言,两者的区别:,命令文件,不需要输入参数,也不返回输出参数,它是命令的叠加。命令文件对空间中的变量进行操作。,函数文件,通常包含输入参数,也可以返回输出参数,它还能解决参数传递和出数调用的问题,第一句必须以function的引导。函数文件的变量为局域变量,Matlab6.5程序设计语言,函数文件的格式:,function a,b,c =funexm (x,y,z),输出参数 函数名 输入参数,(若没有输出参数时,输出参数为空,或用空的中括号表示),function funexm(x),function =funexm (x),*注意:不识别汉字文件名,第四章 数值计算,一、插值和样条,Matlab6.5提供的插值指令有6条,这里只介绍一维插值。,命令:,Method 具体取名有:,linear:线性插值,作为缺省设置,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=70,y1=interp1(x,y,x1,cubic),plot(x,y,b,x,y,o,x1,y1,*),第四章 数值计算,二、多项式拟合和非线性最小二乘法,1、多项式的表示:,例如:,p=1-5 6 8,poly2sym(p),%(将多项式向量表示为符号表达式形式),第四章 数值计算,2、多项式的值,p=1 2 3 4 5;,b=2 2;3 3,polyval(p,b),(对每个元素进行计算,把x=2,2,3,3分别代入计算),polyvalm(p,b),(按矩阵计算,把x=b矩阵代入计算),第四章 数值计算,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个),且对最小值点有较好的初试估计,fminsearch是优先推荐使用的Matlab指令),第四章 数值计算,例如:,x=0:0.2:4;,y=15.135 9.0162 5.9249 4.115 3.2235 2.5787 2.1012,1.7052 1.7500 1.4815 1.4026 1.3424 1.2808 1.1347 0.8833,0.8761 0.96520.8953 0.6840 0.7743 0.4731;,a0=1 1 1 1,options=optimset(fminsearch),a=fminsearch(exps,a0,options,x,y),function 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:4,y0=3*exp(-0.4*x)+12*exp(-3.2*x),y=y0+0.3*(rand(size(x)-0.5),a0=1 10 0.2 1,options=optimset(lsqnonlin),a=lsqnonlin(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,恰定方程组的解,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只能求取一元连续函数穿越横轴的零点,不会确定与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 on,plot(t,zeros(size(t),k,xlabel(t);ylabel(y(t);,hold off,zoom on,tt,yy=g
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!