《《MATLAB程序设计教程》电子教案.ppt》由会员分享,可在线阅读,更多相关《《MATLAB程序设计教程》电子教案.ppt(416页珍藏版)》请在人人文库网上搜索。
1、第1章 MATLAB操作基础1.1 MATLAB概述1.2 MATLAB的运行环境与安装1.3 MATLAB集成环境1.4 MATLAB帮助系统,1.1 MATLAB概述,1.1.1 MATLAB的发展 1984年,MATLAB第1版(DOS版) 1992年,MATLAB4.0版 1994年,MATLAB 4.2版 1997年,MATLAB 5.0版 1999年,MATLAB 5.3版 2000年,MATLAB 6.0版 2001年,MATLAB 6.1版 2002年,MATLAB 6.5版 2004年,MATLAB 7.0版,1.1.2 MATLAB的主要功能1数值计算和符号计算功能MATL。
2、AB以矩阵作为数据操作的基本单位,还提供了十分丰富的数值计算函数。MATLAB和著名的符号计算语言Maple相结合,使得MATLAB具有符号计算功能。,2绘图功能MATLAB提供了两个层次的绘图操作:一种是对图形句柄进行的低层绘图操作,另一种是建立在低层绘图操作之上的高层绘图操作。,3编程语言MATLAB具有程序结构控制、函数调用、数据结构、输入输出、面向对象等程序语言特征,而且简单易学、编程效率高。4MATLAB工具箱 MATLAB包含两部分内容:基本部分和各种可选的工具箱。MATLAB工具箱分为两大类:功能性工具箱和学科性工具箱。,1.1.3 初识MATLAB例1-1 绘制正弦曲线和余弦曲。
3、线。x=0:0.5:360*pi/180;plot(x,sin(x),x,cos(x); 例1-2 求方程 3x4+7x3 +9x2-23=0的全部根。p=3,7,9,0,-23; %建立多项式系数向量x=roots(p) %求根,例1-3 求积分quad(x.*log(1+x),0,1) 例1-4 求解线性方程组。a=2,-3,1;8,3,2;45,1,-9; b=4;2;17; x=inv(a)*b,1.2 MATLAB的运行环境与安装,1.2.1 MATLAB的运行环境硬件环境:(1) CPU (2) 内存(3) 硬盘(4) CD-ROM驱动器和鼠标。软件环境:(1) Windows 9。
4、8/NT/2000 或Windows XP(2) 其他软件根据需要选用,1.2.2 MATLAB的安装安装MATLAB 6.5系统,需运行系统自带的安装程序setup.exe,可以按照安装提示依次操作。,1.3 MATLAB集成环境,1.3.1 启动与退出MATLAB集成环境1MATLAB系统的启动与一般的Windows程序一样,启动MATLAB系统有3种常见方法:(1)使用Windows“开始”菜单。(2)运行MATLAB系统启动程序matlab.exe。(3) 利用快捷方式。,启动MATLAB后,将进入MATLAB 6.5集成环境。MATLAB 6.5集成环境包括MATLAB主窗口、命令窗。
5、口(Command Window)、工作空间窗口(Workspace)、命令历史窗口(Command History)、当前目录窗口(Current Directory)和启动平台窗口(Launch Pad)。,当MATLAB安装完毕并首次启动时,展现在屏幕上的界面为MATLAB的默认界面,如右图所示。,2MATLAB系统的退出要退出MATLAB系统,也有3种常见方法:(1) 在MATLAB主窗口File菜单中选择Exit MATLAB命令。(2) 在MATLAB命令窗口输入Exit或Quit命令。(3) 单击MATLAB主窗口的“关闭”按钮。,1.3.2 主窗口MATLAB主窗口是MATLA。
6、B的主要工作界面。主窗口除了嵌入一些子窗口外,还主要包括菜单栏和工具栏。1菜单栏在MATLAB 6.5主窗口的菜单栏,共包含File、Edit、View、Web、Window和Help 6个菜单项。,(1) File菜单项:File菜单项实现有关文件的操作。(2) Edit菜单项:Edit菜单项用于命令窗口的编辑操作。(3) View菜单项:View菜单项用于设置MATLAB集成环境的显示方式。,(4) Web菜单项:Web菜单项用于设置MATLAB的Web操作。(5) Window菜单项:主窗口菜单栏上的Window菜单,只包含一个子菜单Close all,用于关闭所有打开的编辑器窗口,包括。
7、M-file、Figure、Model和GUI窗口。(6) Help菜单项:Help菜单项用于提供帮助信息。,2工具栏MATLAB 6.5主窗口的工具栏共提供了10个命令按钮。这些命令按钮均有对应的菜单命令,但比菜单命令使用起来更快捷、方便。,1.3.3 命令窗口命令窗口是MATLAB的主要交互窗口,用于输入命令并显示除图形以外的所有执行结果。MATLAB命令窗口中的“”为命令提示符,表示MATLAB正在处于准备状态。在命令提示符后键入命令并按下回车键后,MATLAB就会解释执行所输入的命令,并在命令后面给出计算结果。,一般来说,一个命令行输入一条命令,命令行以回车结束。但一个命令行也可以输入。
8、若干条命令,各命令之间以逗号分隔,若前一命令后带有分号,则逗号可以省略。例如p=15,m=35p=15;m=35,如果一个命令行很长,一个物理行之内写不下,可以在第一个物理行之后加上3个小黑点并按下回车键,然后接着下一个物理行继续写命令的其他部分。3个小黑点称为续行符,即把下面的物理行看作该行的逻辑继续。在MATLAB里,有很多的控制键和方向键可用于命令行的编辑。,1.3.4 工作空间窗口工作空间是MATLAB用于存储各种变量和结果的内存空间。在该窗口中显示工作空间中所有变量的名称、大小、字节数和变量类型说明,可对变量进行观察、编辑、保存和删除。,1.3.5 当前目录窗口和搜索路径1当前目录窗。
9、口当前目录是指MATLAB运行文件时的工作目录,只有在当前目录或搜索路径下的文件、函数可以被运行或调用。在当前目录窗口中可以显示或改变当前目录,还可以显示当前目录下的文件并提供搜索功能。将用户目录设置成当前目录也可使用cd命令。例如,将用户目录c:mydir设置为当前目录,可在命令窗口输入命令:cd c:mydir,2MATLAB的搜索路径当用户在MATLAB命令窗口输入一条命令后,MATLAB按照一定次序寻找相关的文件。基本的搜索过程是:(1) 检查该命令是不是一个变量。(2) 检查该命令是不是一个内部函数。(3) 检查该命令是否当前目录下的M文件。(4) 检查该命令是否MATLAB搜索路径。
10、中其他目录下的M文件。,用户可以将自己的工作目录列入MATLAB搜索路径,从而将用户目录纳入MATLAB系统统一管理。设置搜索路径的方法有: (1) 用path命令设置搜索路径。例如,将用户目录c:mydir加到搜索路径下,可在命令窗口输入命令:path(path,c:mydir),(2) 用对话框设置搜索路径 在MATLAB的File菜单中选Set Path命令或在命令窗口执行pathtool命令,将出现搜索路径设置对话框。通过Add Folder或Add with Subfolder命令按钮将指定路径添加到搜索路径列表中。在修改完搜索路径后,则需要保存搜索路径。,1.3.6 命令历史记录窗。
11、口在默认设置下,历史记录窗口中会自动保留自安装起所有用过的命令的历史记录,并且还标明了使用时间,从而方便用户查询。而且,通过双击命令可进行历史命令的再运行。如果要清除这些历史记录,可以选择Edit菜单中的Clear Command History命令。,1.3.7 启动平台窗口和Start按钮MATLAB 6.5的启动平台窗口可以帮助用户方便地打开和调用MATLAB的各种程序、函数和帮助文件。MATLAB 6.5主窗口左下角还有一个Start按钮,单击该按钮会弹出一个菜单,选择其中的命令可以执行MATLAB产品的各种工具,并且可以查阅MATLAB包含的各种资源。,1.4 MATLAB帮助系统,。
12、1.4.1 帮助窗口进入帮助窗口可以通过以下3种方法:(1) 单击MATLAB主窗口工具栏中的Help按钮。(2) 在命令窗口中输入helpwin、helpdesk或doc。(3) 选择Help菜单中的“MATLAB Help”选项。,1.4.2 帮助命令MATLAB帮助命令包括help、lookfor以及模糊查询。1help命令在MATLAB 6.5命令窗口中直接输入help命令将会显示当前帮助系统中所包含的所有项目,即搜索路径中所有的目录名称。同样,可以通过help加函数名来显示该函数的帮助说明。,2lookfor命令help命令只搜索出那些关键字完全匹配的结果,lookfor命令对搜索范。
13、围内的M文件进行关键字搜索,条件比较宽松。lookfor命令只对M文件的第一行进行关键字搜索。若在lookfor命令加上-all选项,则可对M文件进行全文搜索。,3模糊查询MATLAB 6.0以上的版本提供了一种类似模糊查询的命令查询方法,用户只需要输入命令的前几个字母,然后按Tab键,系统就会列出所有以这几个字母开头的命令。,1.4.3 演示系统在帮助窗口中选择演示系统(Demos)选项卡,然后在其中选择相应的演示模块,或者在命令窗口输入Demos,或者选择主窗口Help菜单中的Demos子菜单,打开演示系统。,第2章 MATLAB矩阵及其运算2.1 变量和数据操作2.2 MATLAB矩阵2。
14、.3 MATLAB运算2.4 矩阵分析2.5 矩阵的超越函数2.6 字符串2.7 结构数据和单元数据2.8 稀疏矩阵,2.1 变量和数据操作,2.1.1 变量与赋值1变量命名在MATLAB 6.5中,变量名是以字母开头,后接字母、数字或下划线的字符序列,最多63个字符。在MATLAB中,变量名区分字母的大小写。,2赋值语句(1) 变量=表达式 (2) 表达式其中表达式是用运算符将有关运算量连接起来的式子,其结果是一个矩阵。,例2-1 计算表达式的值,并显示计算结果。在MATLAB命令窗口输入命令:x=1+2i;y=3-sqrt(17);z=(cos(abs(x+y)-sin(78*pi/180。
15、)/(x+abs(y)其中pi和i都是MATLAB预先定义的变量,分别代表代表圆周率和虚数单位。输出结果是:z = -0.3488 + 0.3286i,2.1.2 预定义变量,在MATLAB工作空间中,还驻留几个由系统本身定义的变量。例如,用pi表示圆周率的近似值,用i,j表示虚数单位。预定义变量有特定的含义,在使用时,应尽量避免对这些变量重新赋值。,2.1.3 内存变量的管理1内存变量的删除与修改MATLAB工作空间窗口专门用于内存变量的管理。在工作空间窗口中可以显示所有内存变量的属性。当选中某些变量后,再单击Delete按钮,就能删除这些变量。当选中某些变量后,再单击Open按钮,将进入变。
16、量编辑器。通过变量编辑器可以直接观察变量中的具体元素,也可修改变量中的具体元素。,clear命令用于删除MATLAB工作空间中的变量。who和whos这两个命令用于显示在MATLAB工作空间中已经驻留的变量名清单。who命令只显示出驻留变量的名称,whos在给出变量名的同时,还给出它们的大小、所占字节数及数据类型等信息。,2内存变量文件利用MAT文件可以把当前MATLAB工作空间中的一些有用变量长久地保留下来,扩展名是.mat。MAT文件的生成和装入由save和load命令来完成。常用格式为:save 文件名 变量名表 -append-asciiload 文件名 变量名表 -ascii,其中,。
17、文件名可以带路径,但不需带扩展名.mat,命令隐含一定对.mat文件进行操作。变量名表中的变量个数不限,只要内存或文件中存在即可,变量名之间以空格分隔。当变量名表省略时,保存或装入全部变量。-ascii选项使文件以ASCII格式处理,省略该选项时文件将以二进制格式处理。save命令中的-append选项控制将变量追加到MAT文件中。,2.1.4 MATLAB常用数学函数MATLAB提供了许多数学函数,函数的自变量规定为矩阵变量,运算法则是将函数逐项作用于矩阵的元素上,因而运算的结果是一个与自变量同维数的矩阵。函数使用说明:(1) 三角函数以弧度为单位计算。(2) abs函数可以求实数的绝对值、。
18、复数的模、字符串的ASCII码值。(3) 用于取整的函数有fix、floor、ceil、round,要注意它们的区别。(4) rem与mod函数的区别。rem(x,y)和mod(x,y)要求x,y必须为相同大小的实矩阵或为标量。,2.1.5 数据的输出格式 MATLAB用十进制数表示一个常数,具体可采用日常记数法和科学记数法两种表示方法。 在一般情况下,MATLAB内部每一个数据元素都是用双精度数来表示和存储的。数据输出时用户可以用format命令设置或改变数据输出格式。format命令的格式为: format 格式符其中格式符决定数据的输出格式,2.2 MATLAB矩阵,2.2.1 矩阵的建。
19、立1直接输入法 最简单的建立矩阵的方法是从键盘直接输入矩阵的元素。具体方法如下:将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素之间用分号分隔。,2利用M文件建立矩阵 对于比较大且比较复杂的矩阵,可以为它专门建立一个M文件。下面通过一个简单例子来说明如何利用M文件创建矩阵。,例2-2 利用M文件建立MYMAT矩阵。(1) 启动有关编辑程序或MATLAB文本编辑器,并输入待建矩阵: (2) 把输入的内容以纯文本方式存盘(设文件名为mymatrix.m)。 (3) 在MATLAB命令窗口中输入mymatrix,即运行该M文件,就会自动建立一个名为MYMAT的矩阵,可供以后使用。,3利用冒号表达式建立一个向量 冒号表达式可以产生一个行向量,一般格式是: e1:e2:e3其中e1为初始值,e2为步长,e3为终止值。在MATLAB中,还可以用linspace函数产生行向量。其调用格式为:linspace(a,b,n)其中a和b是生成向量的第一个和最后一个元素,n是元素总数。显然,linspace(a,b,n)与a:(b-a)/(n-1):b等价。4建立大矩阵大矩阵可由方括号中的小矩阵或向量建立起来。,2.2.2 矩阵的拆分1矩阵元素 通过下标引用矩阵* 次数:1357533 已用完,请联系开发者。