资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2021/4/2,#,MATLAB,名字由,MATrix,和,LABoratory,两词的前三个字母组合而成。,1980Cleve Moler,设计了一组调用,LINPACK,和,EISPACK,矩阵软件工具包库程序的“通俗易用”的接口,此即用,FORTRAN,编写的萌芽状态的,MATLAB,。,1984Little,、,Moler,、,Steve Bangert,合作成立,MathWorksMATLAB,正式推向市场。从这时起,,MATLAB,的内核采用,C,语言编写。现在,,MATLAB,已具有多种版本,随着版本的不断更新,,MATLAB,的功能也越来越强,它除了具有数值计算功能外,还具有符号计算、图形处理等功能。,MATLAB简介(1),Matlab,实验课指导,1,MATLAB,包含两部分内容:基本部分和各种可选的工具箱。基本部分构成了,MATLAB,的核心内容,也是使用和构造工具箱的基础。,MATLAB,工具箱分为两大类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能、可视建模仿真功能及文字处理功能等。学科性工具箱有控制系统工具箱、信号处理工具箱、神经网络工具箱、最优化工具箱、金融工具箱、统计学工具箱等等,这些工具箱专业性比较强,用户可以直接利用它们进行相关领域的科学研究。,MATLAB,具有很强的开放性,除内部函数外,所有,MATLAB,基本文件和各工具箱文件都是可读可改的源文件,用户可通过对源文件的修改或加入自己编写的文件去构建新的专用工具箱。,1,、,MATLAB,的窗口,主窗口,MATLAB主窗口是MATLAB的主要工作界面。,主窗口除了嵌入一些子窗口外,还主要包括,菜单栏和工具栏。,菜单栏在MATLAB 6.5主窗口的菜单栏,共包含,、View、Web、Window 和 Help,6个菜单项。,工具栏,工具栏提供的命令按钮均有对应的菜单命令,,但比菜单命令使用起来更快捷、方便。,命令窗口,命令窗口是,MATLAB,的主要交互窗口,用于输入,命令并显示除图形以外的所有执行结果。,MATLAB,命令窗口中的“,”,为命令提示符,表示,MATLAB,正在处于准备状态。在命令提示符后键,入命令并按下回车键后,,MATLAB,就会解释执行,所输入的命令,并在命令后面给出计算结果。,工作空间窗口,工作空间是,MATLAB,用于存储各种变量和结果的,内存空间。在该窗口中显示工作空间中所有变量的,名称、大小、字节数和变量类型说明,可对变量进,行观察、编辑、保存和删除。,当前目录窗口,当前目录是指,MATLAB,运行文件时的工作目录,,只有在当前目录或搜索路径下的文件、函数可以,被运行或调用。在当前目录窗口中可以显示或改变当前目录,还,可以显示当前目录下的文件并提供搜索功能。将用户目录设置成当前目录也可使用,cd,命令。,例如,将用户目录,c:mydir,设置为当前目录,可在,命令窗口输入命令:,cd c:mydir,命令历史记录窗口,在默认设置下,历史记录窗口中会自动保留自,安装起所有用过的命令的历史记录,并且还标,明了使用时间,从而方便用户查询。,而且,通过双击命令可进行历史命令的再运行。,如果要清除这些历史记录,可以选择,Edit,菜单,中的,Clear Command History,命令。,MATLAB的搜索路径当用户在MATLAB命令窗口输入一条命令后,,MATLAB按照一定次序寻找相关的文件。,基本的搜索过程是:检查该命令是不是,一个变量。,一个内部函数。,当前目录下的M文件。,MATLAB搜索路径中其他目录下的M文件。,MATLAB 6.5主窗口左下角还有一个Start按钮,,单击该按钮会弹出一个菜单,选择其中的命令可以,执行MATLAB产品的各种工具,并且可以查阅,MATLAB包含的各种资源。,用户可以将自己的工作目录列入,MATLAB,搜索路径,,从而将用户目录纳入,MATLAB,系统统一管理。设置,搜索路径的方法有:,(1),用,path,命令设置搜索路径。,例如,将用户目录,c:mydir,加到搜索路径下,,可在命令窗口输入命令:,path(path,c:mydir),(2),用对话框设置搜索路径 在,MATLAB,的,File,菜单中选,Set Path,命令或在,命令窗口执行,pathtool,命令,将出现搜索路径,设置对话框。通过,Add Folder,或,Add with,Subfolder,命令按钮将指定路径添加到搜索路径,列表中。在修改完搜索路径后,则需要保存搜索,路径。,1,)帮助窗口,进入帮助窗口可以通过以下,3,种方法:,(1),单击,MATLAB,主窗口工具栏中的,Help,按钮。,(2),在命令窗口中输入,helpwin,、,helpdesk,或,doc,。,(3),选择,Help,菜单中的“,MATLAB Help”,选项。,2,)帮助命令,MATLAB,帮助命令包括,help,、,lookfor,以及模糊查询。,(1)help,命令在,MATLAB 6.5,命令窗口中直接输入,help,命令将会显示当前帮助系统中所包含的所有项目,即搜索路径中所有的目录名称。同样,可以通过,help,加函数名来显示该函数的帮助说明。,2,、帮助系统,(2)lookfor,命令,help,命令只搜索出那些关键字完全匹配的结果,,lookfor,命令对搜索范围内的,M,文件进行关键字搜索,条件比较宽松。,lookfor,命令只对,M,文件的第一行进行关键字搜索。若在,lookfor,命令加上,-all,选项,则可对,M,文件进行全文搜索。,(3),模糊查询,MATLAB 6.0,以上的版本提供了一种类似模糊查询的命令查询方法,用户只需要输入命令的前几个字母,然后按,Tab,键,系统就会列出所有以这几个字母开头的命令。,例:,lookfor cosine,help sqrt,helpwin(sqrt),doc plot,3,)演示系统在帮助窗口中选择演示系统,(Demos),选项卡,,然后在其中选择相应的演示模块,或者在命令,窗口输入,Demos,,或者选择主窗口,Help,菜单中,的,Demos,子菜单,打开演示系统。,4,)远程帮助系统在,MathWorks,公司的主页,上可以找到很多有用的信息,国内的一些网站也,有丰富的信息资源。,3,、怎样进行基本计算,(1),运算对象:矩阵,(2),变量与变量名:变量名和变量名类型不需声明。,在,MATLAB 6.5,中,变量名是以字母开头,后接字母、数字或下划线的字符序列,最多,63,个字符。在,MATLAB,中,变量名区分字母的大小写。,(3),赋值语句,(i),变量,=,表达式,(ii),表达式其中表达式是用运算符将有关运算量连接起来的,式子,其结果是一个矩阵。,(4)who,和,whos,这两个命令用于显示在,MATLAB,工作空间中已经驻留的变量名清单。,who,命令只,显示出驻留变量的名称,,whos,在给出变量名的,同时,还给出它们的大小、所占字节数及数据类,型等信息。,clear:,清除所有使用过的变量或某个(些)变量,clc:,清除命令窗口,注,:X=,与,clear X,不同,,clear,是将,X,从工作空间中,删除,而空矩阵则存在于工作空间中,只是维数为,0,。,预定义变量,例:,2+6-4,a=,3-sqrt(17)*i,b=6*pi;c=a/b,v=7 3 9,w=7;3;9,A=1 2 3;4 5 6,who,whos,clear w,w,b,clear,clc,;,区别,MATLAB,中有两种矩阵除法运算:,和,/,分别表示,左除和右除。如果,A,矩阵是非奇异的,,AB,和,B/A,运算可以实现。,AB,等效于,A,的逆左乘,B,矩阵,即,inv(A)*B,,,而,B/A,等效于,A,矩阵的逆右乘,B,矩阵,即,B*inv(A),。,对于矩阵来说,一般,AB,B/A,。,MATLAB,的基本算术运算有:,+(,加,),、,-(,减,),、,*(,乘,),、,/(,右除,),、,(,左除,),、,(,乘方,),。,在MATLAB中,有一种特殊的运算,因为其运算符是,在有关算术运算符前面加点,所以叫点运算。点运,算符有.*、./、.和.。两矩阵进行点运算是指,它们的对应元素进行相关运算,要两矩阵的维参数,相同。,例:,A=1 2 3;4 5 6,A=A,B=1;2,C=A*B,D=1 1;2 2;3 3,A.*D,B=B.2,clear;A=1 3;5 7;B=2 5;1 9;C=AB,D=A/B,M=inv(A)*B,N=A*inv(B),(5),矩阵的建立,(i),直接输入,(ii)M,文件,(iii),利用冒号表达式建立一个向量,e1,:,e2,:,e3,其中,e1,为初始值,,e2,为步长,,e3,为终止值。冒号表达式可产生一个由,e1,开始到,e3,结束,以步长,e2,自增的行向量。,例如,t,0,:,1,:,5,将产生行向量,t,,各元素为,0,,,1,,,2,,,3,,,4,,,5,。,在冒号表达式中如果省略,e2,不写,则步长为,1,。例如,,t=0,:,5,与,t=0,:,1,:,5,等价。,注:在,MATLAB,中,还可以用,linspace,函数产生行向量。,其调用格式为:,linspace(,a,b,n,),其中,a,和,b,是生成向量的第一个和最后一个元素,,n,是元素总数,每两个相邻元素的差都相等。,其中,n,可省略,缺省值为,100,个。,(iv),大矩阵可由方括号中的小矩阵或向量建立。,注:冒号的用法,A(:,j),表示取,A,矩阵的第,j,列全部元素;,A(i,:),表示,A,矩阵第,i,行的全部元素;,A(i:i+m,:),表示取,A,矩阵第,i,行到第,i+m,行的全部元素;,A(:,k:k+m),表示取,A,矩阵第,k,列到第,k+m,列的全部元素,;,A(i:i+m,k:k+n),表示取矩阵,A,第,i,行到第,i+m,行,第,k,列到,第,k+n,列的全部元素。,利用,MATLAB,的冒号运算,可以容易地从给出的,矩阵中获得子矩阵,在实际编程时应该尽量采,用这种赋值方法,.,例:,A=1:3;4:6;7:9,A(2,3),A(:,3),A(6)=0,A(4,:)=1 1 1,A(2,:)=,A(1 3,2:3),A(:),C=A 1;1;1;1 2 3 4,reshape(C,2,8),关系运算,MATLAB,提供了,6,种关系运算符:,(,小于,),、,(,大于,),、,=(,大于或等于,),、,=(,等于,),、,=(,不等于,),。,关系运算符的运算法则为:,(1),当两个比较量是标量时,直接比较两数的大小。,若关系成立,关系表达式结果为,1,,否则为,0,。,(2),当参与比较的量是两个维数相同的矩阵时,比较,是对两矩阵相同位置的元素按标量关系运算规则逐个,进行,并给出元素比较结果。最终关系运算的结果是,一个维数与原矩阵相同的矩阵,它的元素由,0,或,1,组成。,(3),当参与比较的一个是标量,而另一个是矩阵时,,则把标量与矩阵的每一个元素按标量关系运算规则逐,个比较,并给出元素比较结果。最终的关系运算的结,果是一个维数与原矩阵相同的矩阵,它的元素由,0,或,1,组成。,逻辑运算,MATLAB,提供了,3,种逻辑运算符:,&(,与,),、,|(,或,),和,(,非,),。,逻辑运算的运算法则为:,(1),在逻辑运算中,确认非零元素为真,用,1,表示,,零元素为假,用,0,表示。,(2),设参与逻辑运算的是两个标量,a,和,b,,那么,,a&b a,b,全为非零时,运算结果为,1,,否则为,0,。,a|b a,b,中只要有一个非零,运算结果为,1,。,a,当,a,是零时,运算结
展开阅读全文