《第一章 MATLAB 基础.doc》由会员分享,可在线阅读,更多相关《第一章 MATLAB 基础.doc(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、mathematica和MATLAB有什么区别,他们各自什么优劣mathematica:注重符号计算,如果要求计算精度,主要进行符号计算的话,最好使用mathematica,它在符号处理方面功能强大,运算速度快,诸如某些积分,求极限等方面,都是非常有优势的,适用于数学分析。MATLAB:一开始就是为计算机设计的,更多的强调的是数值运算,也是因为这个特点,matlab很容易扩展到其他领域,现在已涉及到了基本所有的工科,生物医学等领域。如果要进行矩阵或图形方面的处理,选择matlab,它的矩阵计算和图形处理方面是强项,突出的功能是绘图功能,平面,三维图,平滑逼真,效果很好,这是其他软件无法相比的。
2、matlab是个相当大而全的软件,但是正是因为扩展到各个领域,这也导致了它的缺点:软件越来越大,对计算机的要求很高。第1章 MATLAB的环境1.1 MATLAB简介l MATLAB(Matrix Laborator)是MathWorks公司开发的科学与工程计算软件;l 广泛应用于自动控制、数学运算、信号分析、计算机技术、图像信号处理、财务分析、航天工业、汽车工业、生物医学工程、语音处理和雷达工程等行业;l 国内外高校和研究部门科学研究的重要工具;l MATLAB 已成为数学计算工具方面事实上的标准。 MATLAB功能和特点1功能强大(1) 运算功能强大l MATLAB的数值运算要素不是单个数
3、据,而是矩阵,运算包括加、减、乘、除、函数运算等,还能进行复数的直接运算;l 通过MATLAB的符号工具箱,可以解决在数学、应用科学和工程计算领域中常常遇到的符号计算问题。(2) 功能丰富的工具箱大量针对各专业应用的工具箱的提供,使MATLAB适用于不同领域。(3) 文字处理功能强大MATLAB的Notebook为用户提供了强大的文字处理功能,允许用户从Word访问MATLAB的数值计算和可视化结果。2人机界面友好,编程效率高l 语言规则与笔算式相似,命令表达方式与标准的数学表达式非常相近。l 解释方式工作的,键入算式无需编译立即得出结果,若有错误也立即做出反应,便于编程者立即改正。3强大而智
4、能化的作图功能l 工程计算的结果可视化,使原始数据的关系更加清晰明了;l 多种坐标系;l 能绘制三维坐标中的曲线和曲面。4可扩展性强包括基本部分和工具箱两大部分,具有良好的可扩展性,工具箱可以任意增减。5. Simulink动态仿真功能MATLAB的Simulink提供了动态仿真的功能,用户通过绘制框图来模拟一个线性、非线性、连续或离散的系统,通过Simulink能够仿真并分析该系统。【例1.1】计算的值 在命令窗口中输入: y1=2*sin(0.3*pi)/(1+sqrt(5)y1 = 0.5000 【例1.2】 计算输入: sin(pi/3)+asin(1)-exp(2)*log(7)结果
5、:ans = -11.94161.2 MATLAB 环境设置图1.1 MATLAB 版的默认界面菜单历史命令窗口工作空间窗口/当前目录浏览器开始按钮工具栏命令窗口MATLAB的界面更加方便,运行界面称为MATLAB操作界面(MATLABDesktop),默认的操作界面如图1.1所示。MATLAB的操作界面是一个高度集成的工作界面,它的通用操作界面包括九个常用的窗口,另外,MATLAB6.5以上版还增加了“Start”开始按钮。1.2.1 菜单栏MATLAB操作界面菜单提供了“File”、“Edit”、“Dbug”、“Parallel”、 “Desktop” 、“Window”和“Help”菜单
6、。 1.2.2 工具栏New M-FileCopyCutPasteOpen FileUndoRedoHelpSimulink当前路径图1.2 工具栏1.2.3 操作界面窗口1. 命令窗口(Command Window)在命令窗口中可键入各种MATLAB的命令、函数和表达式,并显示除图形外的所有运算结果。图1.3 单独的命令窗口(1) 命令行的显示方式l 命令窗口中的每个命令行前会出现提示符“”。l 命令窗口内显示的字符和数值采用不同的颜色;【例1.3】在命令窗口中输入不同的数值和语句,并查看其显示方式。 a=12.7 a = 12.7000 b=Hello b =Hello if a0 c=5
7、 ,end c = 5 (2) 命令窗口中的标点符号表1.1MATLAB常用标点符号的功能名称符号功能空格用于输入变量之间的分隔符以及数组行元素之间的分隔符。逗号,用于要显示计算结果的命令之间的分隔符;用于输入变量之间的分隔符;用于数组行元素之间的分隔符。点号.用于数值中的小数点。分号;用于不显示计算结果命令行的结尾;用于不显示计算结果命令之间的分隔符;用于数组元素行之间的分隔符。冒号:用于生成一维数值数组,表示一维数组的全部元素或多维数组的某一维的全部元素。百分号%用于注释的前面,在它后面的命令不需要执行。在M文件中,百分号后面的语句可以用Help命令打印出来。单引号 用于括住字符串。圆括号
8、( )用于引用数组元素;用于函数输入变量列表;用于确定算术运算的先后次序。方括号 用于构成向量和矩阵;用于函数输出列表。花括号 用于构成元胞数组。下划线-用于一个变量、函数或文件名中的连字符。续行号用于把后面的行与该行连接以构成一个较长的命令。“At”号用于放在函数名前形成函数句柄;用于放在目录名前形成用户对象类目录。注意:.以上的符号一定要在英文状态下输入,因为MATLAB不能识别中文标点符号; 【例1.4】在命令窗口中使用不同的标点符号。 a=12.5,b=Hello %逗号表示分隔命令,单引号构成字符串,点号为小数点a = 12.5000b =Hello c=1 2;3 4;5 6 %
9、表示构成矩阵,分号用来分隔行,空格用来分隔元素c = 1 2 3 4 5 6 d=a*. %.表示续行pi3d = 387.5785 (3) 数值计算结果的显示格式及设置在matlab中,数值计算的默认类型格式是双精度类型(double),但是数据的显示格式可以设置为不同的格式;l 显示格式设置:选择菜单“File”“ Preferences”,则会出现参数设置对话框,如图1.4所示;图1.4 参数设置对话框l 直接在命令窗口中输入 “format” 命令来进行数值显示格式的设置。format 格式描述表1.2数据显示的Format格式命令格式含义例子formatformat short(默认
10、)通常保证小数点后四位有效;大于1000的实数,用5位有效数字的科学计数法显示314.159显示为314.15903141.59显示为3.1416e+003format short e5位科学计数法表示显示为3.1416e+000format short g从format short和format short e中自动选择最佳计数方式显示为3.1416format long15位数字表示显示为3.979format long e15位科学计数法表示显示为3.9793e+000format long g从format long和format long e中自动选择最佳计数方式显示为3.79for
11、mat rat近似有理数表示显示为355/113format hex十六进制表示显示为fb54442dl8format +正数、负数、零分别用、空格显示为+format bank表示(金融)元、角、分显示为3.14format compact在显示结果之间没有空行的压缩格式format loose在显示结果之间有空行的稀疏格式注意:1).Matlab严格区分大小写; 2).如果对已定义的变量名重新赋值,则变量名原来的内容被覆盖; 3).Matlab 不需要专门定义变量的类型,系统可以自动根据表达式的值或输入的值来确定变量的数据类型。 2. 历史命令窗口(Command History)*表1.
12、3历史指令窗口主要功能的操作方法应用功能操作方法单行或多行命令的复制(Copy)选中单行或多行命令,按鼠标右键出现快捷菜单,再选择“Copy”菜单,就可以把它复制。单行或多行命令的运行(Evaluate Selection)选中单行或多行命令,按鼠标右键出现快捷菜单,再选择“Evaluate Selection”菜单,就可在命令窗口中运行,并得出相应结果。或者双击选择的命令行也可运行。把多行命令写成M文件(Create M-File)选中单行或多行命令,按鼠标右键出现快捷菜单,选择“Create M-File”菜单,就可以打开写有这些命令的M文件编辑/调试器窗口。 例如,复制和运行图1.5所示
13、历史命令窗口中的命令。图1.5 历史命令窗口3. 当前目录浏览器窗口(Current Directory Browser)*(1) 当前目录的设置MATLAB启动后的默认当前目录是安装MATLAB所在的位置,例如,本机所在位置为“C:Documents and SettingsadministratorMy DocumentsMATLAB”;当前目录设置区文件详细列表图1.6 当前目录浏览器窗口 M或MAT文件描述区把用户目录设置成当前目录的方法有两种: 在当前目录设置区设置。在上图中或MATLAB界面工具栏的右边都有当前目录设置区, 可以在“设置栏”中直接填写待设置的目录名。 选择file菜
14、单下的set path命令修改。4. 工作空间浏览器窗口(Workspace Browser)*l 工作空间浏览器窗口用于显示所有MATLAB工作空间中的变量名、数据结构、类型、大小和字节数。l 可以对变量进行观察、编辑、提取和保存。 a=12.5 b=Hello c=1 2;3 4;5 6 图1.7工作空间浏览器窗口 图1.7为工作空间窗口的单独窗口显示。1.3 MATLAB 帮助MATLAB的帮助方式有很多种,用户可以通过快捷方便的帮助系统来迅速掌握MATLAB的强大功能。1. 帮助导航浏览器窗口通过上节介绍的方法打开帮助导航浏览器窗口,如图1.8所示。图1.8 帮助导航浏览器窗口图1.8
15、所示的帮助导航浏览器窗口界面由左侧的Help Navigator(帮助导航器)和右侧的Help Browser(帮助浏览器)两部分组成。1.4 MATLAB 其他管理*1.4.1 MATLAB用户文件格式1. 程序文件程序文件即M文件,其文件的扩展名为.m,包括主程序和函数文件,M文件通过M文件编辑调试器生成。MATLAB的各工具箱中的函数大部分是M文件。2. 数据文件数据文件即MAT文件,其文件的扩展名为.mat,用来保存工作空间的数据变量,数据文件可以通过在命令窗口中输入“save”命令生成。3. 可执行文件可执行文件即MEX文件,其文件的扩展名为.mex,由MATLAB的编译器对M文件进
16、行编译后产生,其运行速度比直接执行M文件快得多。4. 图形文件图形文件的扩展名为.fig,可以在“File”菜单中创建和打开,也可由MATLAB的绘图命令和图形用户界面窗口产生。5. 模型文件模型文件扩展名为.mdl,是由Simulink工具箱建模生成的。另外,还有仿真文件.s文件。1.4.2文件管理命令 what :列出当前目录下的M、MAT、MEX文件清单 whatM-files in the current directory D:MATLAtoolboxmatlabelfunContents asech cosh isreal sec abs asin cot log sech aco
17、s asinh coth log10 sign acosh atan cplxpair log2 sin acot atan2 csc mod sinh acoth atanh csch nextpow2 sqrt acsc ceil exp pow2 tan acsch complex fix real tanh angle conj floor rem unwrap asec cos imag round MEX-files in the current directory D:MATLABtoolboxmatlabelfuncomplex dir:列出指定目录下的文件和子目录清单dir
18、目录名 %列出指定目录下的文件和子目录清单 dir. asinh.m cplxpair.m pow2.m . atan.m csc.m real.m Contents.m atan2.m csch.m rem.m abs.m atanh.m exp.m round.m acos.m ceil.m fix.m sec.m acosh.m complex.c floor.m sech.m acot.m complex.csf imag.m sign.m acoth.m complex.dll isreal.m sin.m acsc.m complex.m ja sinh.m acsch.m con
19、j.m log.m sqrt.m angle.m cos.m log10.m tan.m asec.m cosh.m log2.m tanh.m asech.m cot.m mod.m unwrap.m asin.m coth.m nextpow2.m type 文件名: 显示指定M文件的内容 type abs.m%ABS Absolute value.% ABS(X) is the absolute value of the elements of X. When% X is complex, ABS(X) is the complex modulus (magnitude) of% the
20、 elements of X.% See also SIGN, ANGLE, UNWRAP.% Copyright 1984-2001 The MathWorks, Inc. % $Revision: 5.8 $ $Date: 2001/04/15 12:02:51 $% Built-in function. which 文件名 :指出M文件、MEX文件、工作空间变量、内置函数或Simulink模型所在的目录 which abs.mD:MATLABtoolboxmatlabelfunabs.m matlabroot :返回安装MATLAB的根目录 matlabrootans =D:MATLAB
21、6p1 diary:把当前命令窗口中的所有内容(包括命令、计算结果等)保存到日志文件中diary (file)%使用指定文件名创建日志文件diary off %暂停执行diary命令diary on %恢复执行diary命令并使用当前的文件名1.4.3几个常用命令 who: 查阅MATLAB内存变量名 whoYour variables are:a b c whos: 查阅MATLAB内存变量变量名、大小、类型和字节数 whos Name Size Bytes Class a 1x1 8 double array b 1x5 10 char array c 3x2 48 double arra
22、yGrand total is 12 elements using 66 bytes clear: 删除工作空间中的变量 clear a whoYour variables are:b c 1.4.4 退出MATLAB 要想退出MATLAB环境,可以使用以下任何一种方式: 在MATLAB的命令窗口输入“exit”命令。 在MATLAB的命令窗口输入“quit”命令。 直接单击MATLAB的命令窗口的按钮。1.5脚本文件和函数文件M文件有两种形式:M脚本文件和M函数文件。脚本文件对于一些比较简单的问题,从指令窗中直接输入指令进行计算是十分轻松简单的事。但随指令数的增加,或随控制流复杂度的增加,或
23、重复计算要求的提出,直接从指令窗进行计算就显得烦琐。而此时脚本文件最为适宜。M函数文件(具体见第5章)与脚本文件不同,函数文件(Function file)犹如一个“黑箱”。从外界只看到:传给它的输入量和送出来的计算结果。而内部运作是藏而不见的。1.5.1 M文本编辑器MATLAB的M文件是通过M文件编辑调试器窗口(EditorDebugger)来创建的。图1.9 M文件编辑/调试器窗口单击MATLAB桌面上的图标,或者单击菜单“File”“New”“M-file”,可打开空白的M文件编辑器,也可以通过打开已有的M文件来打开M文件编辑器。如图1.9所示为打开已创建的M文件。1.5.2 M脚本文
24、件脚本文件的特点:(1) 脚本文件中的命令格式和前后位置,与在命令窗口中输入的没有任何区别。(2) MATLAB在运行脚本文件时,只是简单地按顺序从文件中读取一条条命令,送到MATLAB命令窗口中去执行。(3) 与在命令窗口中直接运行命令一样,脚本文件运行产生的变量都是驻留在MATLAB的工作空间(workspace)中,可以很方便地查看变量,除非用clear命令清除;脚本文件的命令也可以访问工作空间的所有数据,因此要注意避免变量的覆盖而造成程序出错。【例1.5】在M文件编辑调试器窗口中编写M脚本文件绘制二阶系统的多条时域曲线。(1) 单击MATLAB桌面上的图标打开M文件编辑器。(2) 将命
25、令全部写入M文件编辑器中,为了能标志该文件的名称,在第一行写入包含文件名的注释。保存文件为Ex0102.m。%Ex0102 二阶系统时域曲线x=0:0.1:20;y1=1-1/sqrt(1-0.32)*exp(-0.3*x).*sin(sqrt(1-0.32)*x+acos(0.3)plot(x,y1,r) %画阻尼系数为0.3的曲线hold ony2=1-1/sqrt(1-0.7072)*exp(-0.707*x).*sin(sqrt(1-0.7072)*x+acos(0.707)plot(x,y2,g) %画阻尼系数为0.707的曲线y3=1-exp(-x).*(1+x)plot(x,y3
26、,b) %画阻尼系数为1的曲线图1.10 运行界面(3) 选择M文件编辑器菜单“Debug”“Run”,就可以在图形窗中看到如图1.10所示的曲线。查看工作空间的变量: whos Name Size Bytes Class x 1x201 1608 double array y1 1x201 1608 double array y2 1x201 1608 double array y3 1x201 1608 double arrayGrand total is 804 elements using 6432 bytes 上机练习上机练习:【例1.6】 matlab软件的基本操作【例1.6】在M
27、ATLAB的通用操作界面综合地作一个练习。 启动MATLAB。 在命令窗口(Command Window)中输入以下几行命令:a=1 2 3; 4 5 6;7 8 9;b=1 1 1;2 2 2;3 3 3 ;c=计算;d=a+b*i; 打开工作空间浏览器窗口(Workspace Browser)查看变量。图1.11 工作空间窗口 双击其中的变量“d”,出现数组编辑器窗口(Array Editor),图1.12显示了该变量的详细信息,也能在该窗口中修改数据信息。图1.12 数组编辑器窗口 打开历史命令窗口(Command History),如图1.13所示,选择上面的四行命令,单击鼠标右键在快
28、捷菜单中选择“Create M-File”命令生成M文件。图1.13 历史命令窗口 出现M文件编辑调试器窗口(EditorDebugger),如图1.14所示。选择工具栏的“Save”按钮,将该文件保存为“E:MyDirEx0103.m”。图1.14 M文件编辑调试器窗口 打开当前目录浏览器窗口(Current Directory Browser),将当前目录设置为“E:MyDir”,可以看到刚保存的“Ex0103.m”文件,在命令窗口输入“Ex0103”运行该文件。 在命令窗口输入“save Ex0103”命令,在当前目录浏览器窗口可以看到在当前目录下生成了一个“Ex0103.mat”数据文
29、件,如图1.15所示。图1.15 当前目录浏览器窗口 在命令窗口输入“exit”命令退出MATLAB。图1.16 设置路径对话框 重新启动MATLAB后,在命令窗口输入“Ex0103”则不能运行该文件,因为该文件不在MATLAB的搜索路径中。单击MATLAB界面的菜单“File”“Set Path”,打开设置路径对话框,将“E:MyDir”目录添加到搜索路径中,重新输入“Ex0103”则可以运行该文件。 将“Ex0103.mat”数据文件的变量导入,可选择菜单“File”“Import Data”命令,然后选择“E:MyDir Ex0103.mat”文件。 type Ex0103a=1 2 3; 4 5 6;7 8 9;b=1 1 1;2 2 2;3 3 3 ;c=计算;d=a+b*i 运行Ex0102,观察运行结果。