MATLAB及其应用概述.ppt

上传人:牧羊曲112 文档编号:5438975 上传时间:2023-07-07 格式:PPT 页数:49 大小:625KB
返回 下载 相关 举报
MATLAB及其应用概述.ppt_第1页
第1页 / 共49页
MATLAB及其应用概述.ppt_第2页
第2页 / 共49页
MATLAB及其应用概述.ppt_第3页
第3页 / 共49页
MATLAB及其应用概述.ppt_第4页
第4页 / 共49页
MATLAB及其应用概述.ppt_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《MATLAB及其应用概述.ppt》由会员分享,可在线阅读,更多相关《MATLAB及其应用概述.ppt(49页珍藏版)》请在三一办公上搜索。

1、MATLAB及其应用,MATLAB在电子信息课程中的应用,陈怀琛,吴大正,高西全编著,电子工业出版社,2003年版。精通MATLAB6.5版,张志涌著,北京航空航天大学出版社,2003年3月第1版。MATLAB实用教程,郑阿奇主编,电子工业出版社,2004年5月第1版MATLAB与科学计算,王沫然编著,电子工业出版社,2003年9月第2版基于MATLAB/Simulink的系统仿真技术与应用,薛定宇,陈阳泉编著,清华大学出版社,2002年4月第1版。,参考教材及文献,章节目录 计划学时第1章 MATLAB概述及MATLAB的开发环境 2第2章 MATLAB的数值计算与符号计算 6第3章 MAT

2、LAB绘图及基本程序设计 2第4章 MATLAB在电路和信号与系统中的应用 4第5章 MATLAB在自动控制理论中的应用 2第6章 系统仿真(Simulink)工具箱与仿真技术 4,课程内容,讲 课 20上 机 10共 计 30考核方式:平时上课情况上机作业情况 考查或论文情况,教学课时安排,The MathWorks公司官方网站MATLAB大观园一些高校的bbs清华大学、哈工大、上海交大、西安交大等,本课程的互联网资源,熟练MATLAB环境,并能借助于MATLAB的强大科学计算及数据处理能力来解决一些基本科学及工程计算问题和数学学科中许多问题。掌握MATLAB的数值计算与符号计算。掌握一些基

3、本的函数库,掌握基本的绘图方法和程序设计方法。应用MATLAB/Simulink解决电路、信号与系统、自动控制以及系统仿真等实际问题。,课程目标,第一章 MATLAB仿真技术概述及MATLAB的开发环境,MATLAB是由美国MathWorks公司推出的专门用于科学、工程计算和系统仿真的应用软件。它集成了计算、可视化和程序编制功能,作为一种强大的科学计算平台,它几乎满足所有的计算需求。MATLAB是Matrix Laboratory(矩阵实验室)的缩写,它是一种以矩阵运算为基础的程序语言,与其它计算机语言相比,其特点是简洁和智能化。,MATLAB概述,MATLAB的产生,70年代后期,身为美国N

4、ew Mexico大学计算机系系主任的Cleve Moler,在给学生讲授线性代数课程时,发现学生用FORTRAN解决特征值求解、解线性方程组等与矩阵有关的数学问题时的很费时间,于是利用业余时间为学生编写了专用于矩阵的处理、运算的程序。Cleve Moler给这个程序取名为MATLAB(MATrix LABoratory),即Matrix和Laboratory的组合。在以后的数年里,MATLAB在多所大学里作为教学辅助软件使用,并作为面向大众的免费软件广为流传。,1983年春天,Cleve Moler到Standford大学讲学,MATLAB深深地吸引了工程师John Little。John

5、Little敏锐地觉察到MATLAB在工程领域的广阔前景。于是,他和Cleve Moler、Steve Bangert一起,并改用C语言开发了第二代MATLAB专业版,也是MATLAB第一个商用版,同时赋予了它数值计算和数据图示化的功能。自从第一版发行以来,已有众多的科技工作者加入到MATLAB的开发队伍中,并为形成今天约MATLAB系统做出了巨大的贡献。1984年,Cleve Moler和John Little成立了MathWorks公司,发行了MATLAB第1版(DoS版本1.0)。,此后,MathWorks公司并继续进行MATLAB的研究和开发,逐步将其发展成为一个集数值处理、图形处理、

6、图像处理、符号计 算、文字处理、数学建模、实时控制、动态仿真、信号处理为一体的数学应用软件。MATLAB以商品形式出现后,仅短短几年,就以其良好的开放性和运行的可靠性,使原先控制领域里的封闭式软件包(如英国的UMIST,瑞典的LUND和SIMNON,德国的KEDDC)纷纷淘汰,而改以MATLAB为平台加以重建。,1)20世纪70年代后期,Cleve Moler构思并开发;2)1984年成立MathWorks公司,推出了第一个MATLAB的商业版,它是DOS 1.0版;3)1990年推出的MATLAB 3.5i版是第一个第一个可以运行于Microsoft Windows下的版本;4)1993年推

7、出MATLAB4.X版本。4.x版在继承和发展其原有的数值计算和图形可视能力的同时,出现了以下几个重要变化:a.推出了SIMULINK;b.推出了符号计算工具包(Symbolic Math Toolbox 1.0)。MathWorks公司此举加快结束了国际上数值计算、符号计算孰优孰劣的长期争论,促成了两种计算的互补发展新时代。,5)其后MATLAB向着更丰富的数据类型和结构、更友善的面向对象、更加快速精良的图形可视、更广博的数学和数据分析资源、更多的应用开发工具方向发展。6)到2008年3月,MathWorks公司发布最新版本MATLAB R2008a版,其中的MATLAB 7.6,Simul

8、ink 7.1。,在欧美大学里,诸如应用代数、数理统计、自动控制、数字信号处理、模拟与数字通信、时间序列分析、动态系统仿真等课程的教科书都把MATLAB作为内容。这几乎成了九十年代教科书与旧版书籍的区别性标志。在国际学术界,MATLAB已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),都可以看到MATLAB的应用。由于MATLAB采用了开放式的开发思想,不断吸收各学科领域权威人士所编写的使用程序,如今的MATLAB已经全部用C代码进行了全面改写,增添了丰富的图形图像和多媒体功能,形成了一个规模庞大、覆盖面极广的工具箱(Toolbox)。,MATLAB

9、的典型应用,如今MATLAB已应用于下列领域:数值和符号计算、工程与科学绘图、数值分析、建模和仿真、控制系统的设计与仿真、数字图像处理、数字信号处理、通讯系统设计与仿真、财务与金融工程。具体表现为:自动控制、航天工程、汽车工业、生物医学工程、语音处理、图像处理、雷达工程、信号分析、计算机技术等各行各业中。MATLAB具体应用领域详见恒润科技官方网站,另外,在设计研究单位和工业部门,MATLAB被认作进行高效研究、开发的首选软件工具。如美国National Instruments(简称NI)公司的数据采集、分析和控制软件LabVIEW,Cadence公司的信号和通信分析设计软件SPW等,或者直接

10、建筑在MATLAB之上,或者以MATLAB为主要支撑。又如HP公司的VXI硬件,TM公司的DSP,Gage公司的各种硬件板卡、仪器等都接受MATLAB的支持。,(1)友好的工作平台和编程环境,Windows的标准界面,人机交互性更强,操作更简单。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。而且提供了完整的联机查询、帮助系统,极大的方便了用户的使用。,(2)以矩阵和数组为基础的运算 MATLAB 是以矩阵为基础的,不需要预先定义变量和矩阵(包括数组)的维数,可以方便地进行矩阵的算术运算、关系运算和逻辑运算等。提供了丰富的

11、矩阵运算处理功能。,MATLAB特点,(3)简单易学,使用方便灵活;语法限制不严,程序设计自由度大 MATLAB 中的函数名和表达式更接近我们书写计算公式的思维表达方式,编写MATLAB程序犹如在草稿纸上排列公式与求解问题,因此可以快速地验证工程技术人员的算法。MATLAB包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。在MATLAB里,用户无需对矩阵预定义就可使用。有大量事先定义的数学函数,并且有很强的用户自定义函数的能力。,(4)强大的科学计算机数据处理能力 MATLAB

12、是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。在通常情况下,可以用它来代替底层编程语言,如C和C+。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。,(5)强大的符号运算功能符号运算即用字符串进行数学分析允许变量不赋值而参与运算用于解代数方程、微积分、复合导数、积分

13、、二重积分、有理函数、微分方程、泰乐级数展开、寻优等等,可求得解析符号解,(6)丰富的库函数 丰富的库函数,在进行复杂的数学运算时可以直接调用。用户还可以根据需要方便地编写和扩充新的函数库。特别是MATLAB中面向特殊领域的专门的库函数,可以高效地求解诸如小波分析、模糊逻辑、信号处理、图像处理、控制等问题。利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。,(7)丰富的绘图功能与计算结果的可视化具有高层绘图功能两维、三维绘图具有底层绘图功能句柄绘图使用plot函数可随时将计算结果可视化还有一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),(8)

14、图形化程序编制功能动态系统进行建模、仿真和分析的软件包用结构图编程,而不用程序编程只需拖几个方块、连几条线,即可实现编程功能,(9)丰富的MATLAB工具箱(Toolbox)符号数学工具箱(Symbolic Math)动态仿真工具箱(Simulink)控制系统工具箱(Control System)信号处理工具箱(Signal Processing)图象处理工具箱(Image Processing)通讯工具箱(Communications)模糊逻辑(Fuzzy Logic)系统辨识工具箱(System Identification)神经元网络工具箱(Neural Network)统计工具箱(St

15、atistics),许多学科,在MATLAB中都有专用工具箱,现已有30多个工具箱,但MATLAB语言的扩展开发还远远没有结束,各学科的相互促进,将使得MATLAB更加强大。,(10)MATLAB的开放式matlab 所有函数都是开放的用户可按自己意愿随意更改,如用户可以修改工具箱中的函数,还可以通过编制M文件来任意地添加工具箱中原来没有的工具函数正因为此功能,使得matlab的应用越来越广泛,(11)可扩充性强,具有方便的应用程序接口 用户可以方便地在MATLAB环境中调用其他用 Fortran 或者 C 语言编写的代码,也可以在 C 语言或者 Fortran 语言程序中调用MATLAB 计

16、算引擎来执行MATLAB代码。新版本的MATLAB可以利用MATLAB编译器和C/C+数学库和图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行的C和C+代码。允许用户编写可以和MATLAB进行交互的C或C语言程序。,(12)强大的联机检索帮助系统可随时检索matlab函数可随时查询matlab函数的使用方法(13)MATLAB的容错功能非法操作时,给出提示,并不影响其操作1/0Warning:Divide by zeroans=Inf,(14)MATLAB也有其缺点 由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。由于MATLAB属于解

17、释性语言,所以限制了MATLAB在大型数值计算以及一些实时控制系统中的应用。,这里将用几个例子来展示MATLAB在系统仿真中的应用,这里侧重于给出例子的概要和特色,更详细的内容将在后面的章节中介绍,希望通过这里的简单例子,读者能领略MATLAB的功能与特色。,MATLAB的几个应用实例,例1.用一个简单命令求解线性系统 3x1+x2-x3=3.6 x1+2x2+4x3=2.1-x1+4x2+5x3=-1.4A=3 1-1;1 2 4;-1 4 5;b=3.6;2.1;-1.4;x=Abx=1.4818-0.4606 0.3848,例2、用简短命令计算并绘制在0 x6范围内的sin(2x)、si

18、nx2、sin2x。x=linspace(0,6)y1=sin(2*x),y2=sin(x.2),y3=(sin(x).2;plot(x,y1,x,y2,x,y3),例3.当(-3x3,-3y3)时,试绘制的三维图形。只需运行下面的程序代码:X,Y=meshgrid(-3:0.1:3,-3:0.1:3);Z=X.*exp(-X.2-Y.2);mesh(Z),程序:clear,clfwn=10;Ts=0.1;for zeta=0.1:0.3:1 num,den=ord2(10,zeta);s=tf(num,den)figure(1),step(s,2),hold onendhold off,例4

19、.二阶系统的传递函数为,设其固有频率,在阻尼系数 时,分别画出其阶跃响应函数。,仿真结果,例5.求函数,x1+x2=0 s.t.1.5+x1x2-x1-x2 0-x1x2 10 0,在如下约束条件下的最小值,1先建立M文件 fun4.m,定义目标函数:function f=fun4(x);f=exp(x(1)*(4*x(1)2+2*x(2)2+4*x(1)*x(2)+2*x(2)+1);,2再建立M文件mycon.m定义非线性约束:function g,ceq=mycon(x)g=x(1)+x(2);1.5+x(1)*x(2)-x(1)-x(2);-x(1)*x(2)-10;,3主程序youh

20、3.m为:x0=-1;1;A=;b=;Aeq=1 1;beq=0;vlb=;vub=;x,fval=fmincon(fun4,x0,A,b,Aeq,beq,vlb,vub,mycon),运算结果为:x=-1.2250 1.2250 fval=1.8951,MATLAB的安装MATLAB的工作环境 资源目录(Launch Pad)、工作空间(Workspace)、历史命令(Command History)、当前目录(Current Directory)、命令窗(Command Window),还有图形窗和文本编辑窗。文本编辑窗:MATLAB程序编制又两种方式:一种称为行命令方式,另一种成为文本编

21、辑方式。,MATLAB的安装及其工作环境,管理变量和工作空间,控制命令窗口,帮助系统,1+2+3 ans=6 1*10+2*20+3*30 ans=140 x=1+2+3 x=6 如果在上述的例子结尾加上;,则计算结果不会显示在指令视窗上,要得知计算值只须键入该变数值即可。x=1+2+3;x x=6,MATLAB入门简易数学,MATLAB提供基本的算术运算有:加(+)、减(-)、乘(*)、除(/)、幂次方(),范例为:5+3,5-3,5*3,5/3,53 其它在计算常用的功能我们来看一个算式来说明。要计算面积Area=,半径r=2,则可键入 r=2;area=pi*r2;area=12.566

22、4,我们也可以将上述指令打在同一行,以,或是;分开,例如 r=2,area=pi*r2 r=2;area=pi*r2;请注意上述二式的差异,前者有计算值显示,而后者则无。,如果一个指令过长可以在结尾加上.(代表此行指令与下一行连续),例如 r=2;area=pi.*r2 另外一个符号注解是由%起头,也就是说在%之后的任何文字都被视为程式的注解。r=2;%键入半径 area=pi*r2;%计算面积,简单的数学运算(例exp2_2.m)1、常用的数学运算符,*(乘),(左除),/(右除),(幂)在运算式中,MATLAB通常不需要考虑空格;多条命令可以放在一行中,它们之间需要用分号隔开;逗号告诉MATLAB显示结果,而分号则禁止结果显示。2、常用的数学函数abs,sin,cos,tan,asin,acos,atan,sqrt,exp,imag,real,sign,log,log10,conj(共扼复数)等等,小 结一、初步了解matlab 二、熟悉matlab界面,进行简单操作。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号