您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 实验实习指导书1_Matlab软件简介
Matlab软件简介介绍MATLAB一些入门知识,包括MATLAB桌面和窗口,MATLAB命令格式、数据格式、数据文件和变量管理,MATLAB的数组和矩阵运算,MATLAB的字符串、元胞和结构等数据类型,MATLAB的程序设计方法,MATLAB作图方法在线帮助的使用和程序文件和目录的管理等。表一MATLAB的基本命令主题词含义主题词含义format设置数据显示格式feval函数求值who显示变量名input提示输入whos显示变量信息disp输出clear清除内存变量tic启动秒表save保存工作变量到文件toc时间读数(秒)load从文件装载变量help帮助linspace区间等分lookfor查找length获取数组长度type列程序清单size矩阵大小which查找文件目录max最大值double双精度min最小值str2num字符串转化为数值sum求和num2str数值转化为字符串find条件检索一、MATLAB桌面启动MATLAB后,就进入MATLAB的桌面,图1为MATLAB6.1的默认(Default)桌面。第一行为菜单栏,第二行为工具栏,下面是三个最常用的窗口。右边最大的是命令窗口(CommandWindow),左上方前台为发行说明书窗口(Launchpad),后台为工作空间(Workspace),左下方为命令历史(CommandHistory)后台为当前目录(CurrentDirectory)。1.命令窗口该窗口是进行MATLAB操作最主要的窗口。窗口中“”为命令输入提示符,其后输入运算命令,按回车键就可执行运算,并显示运算结果.。图12.发行说明书窗口发行说明书窗口是MATLAB所特有的,用来说明用户所拥有的Mathworks公司产品的工具包、演示以及帮助信息。3.工作空间在默认桌面,位于左上方窗口前台,列出内存中MATLAB工作空间的所有变量的变量名、尺寸、字节数。用鼠标选中变量,击右键可以打开、保存、删除、绘图等操作。4.当前目录在默认桌面,位于左下方窗口后台,用鼠标点击可以切换到前台。该窗口列出当前目录的程序文件(.m)和数据文件(.mat)等。用鼠标选中文件,击右键可以进行打开、运行、删除等操作。5.命令历史(CommandHistory)该窗口列出在命令窗口执行过的MATLAB命令行的历史记录。用鼠标选中命令行,击右键可以进行复制、执行(EvaluateSelection)、删除等操作。除上述窗口外,MATLAB常用窗口还有编程器窗口、图形窗口等。二、数据和变量1.表达式在命令窗口作一些简单的计算,就如同使用一个功能强大的计算器,使用变量无须预先定义类型。例如,设球半径为r=2,求球的体积334rV。r=2%表达式将2赋予变量rr=%系统返回r的值2v=4/3*pi*r^3%pi为内置常量,乘方用^表示v=33.5103几个表达式可以写在一行,用分号(;)或逗号(,)分割,用分号(;)使该表达式运算结果不显示,而逗号(,)则显示结果。也可以将一个长表达式分在几行上写,用三点(…)续行。若需要修改已执行过的命令行,可以在命令历史中找到该命令行复制,再粘贴至命令窗口修改。也可以直接使用键盘↑↓调出已执行过的命令行修改。2.数据显示格式MATLAB默认的数据显示格式为短格式(short):当结果为整数,就作为整数显示;当结果是实数,以小数点后四位的长度显示。若结果的有效数字超出一定范围,以科学计数法显示(如3.2000e-006表示6102.3)。数据显示格式可使用命令Format改变。例如:formatlong;v%长格式,16位v=33.51032163829112formatshort;v%短格式v=33.5103formatrational;v%有理格式,近似分数v=6501/1943.复数MATLAB中复数可以如同实数一样,直接输入和计算。例如:a=1+2i;b=5-4*i;c=a/bc=-0.0732+0.3415i4.预定义变量MATLAB有一些预定义变量(表1),启动时就已赋值,可以直接使用,如前我们使用的圆周率pi和虚数单位i.表1常用预定义变量变量名说明i或j虚数单位1pi圆周率3.14159…eps浮点数识别精度2^(-52)=162.220410realmin最小正实数3082.225110realmax最大正实数3081.797710inf无穷大NaN没有意义的数预定义变量在工作空间观察不到。如果预定义变量被用户重新赋值,则原来的功能暂不能使用。当这些用户变量被清除(clear)或MATLAB重新启动后,这些功能得以恢复。5.用户变量MATLAB变量名总以字母开头,以字母、数字或下划线组成,区分大小写,有效字符长度为63个。如A,a,a1,a_b都是合法的,且a与A表示不同变量。在CommandWindow中使用的变量一旦被赋值,就会携带这个值存在于工作空间,直到被清除或被赋予新的值。ans是系统一个特别的变量名。若一个表达式运算结果没有赋予任何变量,系统自动用ans存放答案。例如:A=5+4i;b=5-4*i;B=1;A*b%没有定义A*b的输出变量ans=41%ans来接受计算结果,注意这是大写A与小写b的乘积,尽管我们可以使用工作空间来查询和清除变量,但使用下列命令方式更快捷:whos%查询Workspace中的变量列表NameSizeBytesClassA1x116doublearray(complex)B1x18doublearraya1x116doublearray(complex)ans1x18doublearrayb1x116doublearray(complex)c1x116doublearray(complex)Grandtotalis6elementsusing80bytesA%查询变量A的值A=5.0000+4.0000iclearA%清除变量AA%再查询A的值,已经不存在了???Undefinedfunctionorvariable'A'.clear%清除Workspace中所有变量whos%Workspace中已没有任何变量了三、数组和矩阵运算MATLAB基本数据单元是无需指定维数的数组。数组运算是MATLAB最鲜明的特点,一方面可以使得计算程序简明易读,另一方面可以提高计算速度。1.数组的输入最常用的数组是双精度数值数组(doublearray)。一维数组相当于向量,二维数组相当于矩阵,一维数组可以视为二维数组的特例。二维数组的第一维称为“行”,第二维称为“列”。MATLAB数组无需预先定义维数。直接输入数组的元素,用中括号([])表示一个数组,同行元素间用空格或逗号分隔,不同行间用分号或回车分隔,例如:clear;a=[1,2,3;4,5,6;7,8,9]a=123456789或a=[123%这种方式特别适用于大型矩阵456789]a=123456789对于等差数列构造的一维数组,可用冒号运算生成,也可用函数linspace生成。b=0:3:10%初值:增量:终值b=0369b=0:10%增量为1可省略b=012345678910b=10:-3:0%递减b=10741b=linspace(0,10,4)%将区间[0,10]等分为4-1=3份b=03.33336.666710.0000length(b)%查询b的长度ans=4b(3)%查询b的第三个元素ans=6.6667b([1,end])%查询b的首和尾元素ans=010二维数组元素双下标编址按通常方式,单下标编址按列排序。a=[1,2,3;4,5,6;7,8,9];size(a)%查询数组a的尺寸ans=33a(3,2),a(6)ans=8ans=8c=a([13],[23])%提取a的第一、第三行和第二、第三列(分块矩阵)c=2389d=a(2,:)%提取a的第二行d=456a(:)%将a所有元素按单下标顺序排为列向量ans=147258369一些特殊的二维数组可以用函数产生,例如:a=zeros(2,4)%生成2行4列零矩阵a=00000000b=ones(1,4)%生成1行4列1矩阵b=1111c=[a;b]%拼接c=000000001111c(2,1)=100%修改部分元素c=00001000001111reshape(c,2,6)%按2行6列重排矩阵元素ans=01001010001001注意:数组下标对应矩阵的行和列,编址一律从1开始,不能用0.矩阵输入也可用“load”命令从外部数据文件导入2.数组运算数组运算是指数组对应元素之间的运算,也称点运算。矩阵的乘法、乘方和除法有特殊的数学含义,并不是数组对应元素的运算,所以在数组乘法、乘方和除法的运算符前特别加了一个点。特别要区分数组运算在乘法、乘方和除法上的意义和表示上与矩阵运算的不同。表2数组运算符运算符号说明数组加与减A+B与A-B对应元素之间加减数乘数组k*A或A*kk乘A的每个元素数与数组加减k+A或k-Ak加(减)A的每个元素数组乘数组A.*B点运算只有点乘、点乘方、点除三个,表示对应元素之间的运算;(.*)是一个整体,点(.)不能漏掉,(.)和(*)之间也不能有空格数组乘方A.^k,k.^A数除以数组k./A数组除法左除A.\B,右除B./Aclear;A=[1-1;02];B=[01;1-1];A.*B%注意不是A*Bans=0-10-2A.\B,A./BWarning:Dividebyzero.ans=0-1.0000Inf-0.5000Warning:Dividebyzero.ans=Inf-10-2A.^2ans=11041./AWarning:Dividebyzero.ans=1.0000-1.0000Inf0.50003.矩阵运算矩阵是一个二维数组,所以矩阵的加、减、数乘等运算与数组运算是一致的。但是有两点需要注意:(1)对于乘法、乘方和除法等三种运算,矩阵运算与数组运算的运算符及含义不同:矩阵运算按线性变换定义,使用通常符号;数组运算按对应元素运算定义,使用点运算符;(2)数与矩阵加减、矩阵除法在数学上是没有意义的,在MATLAB中为简便起见,定义了这两类运算,其含义见表3.表3矩阵运算符运算符号说明转置A'加与减A+B与A-B同数组运算数乘矩阵k*A或A*k同数组运算矩阵乘法A*B矩阵乘方A^k数与矩阵加减k+A与k-Ak+A等价于k*ones(size(A))+A矩阵除法左除A\B,右除B/A它们分别为矩阵方程AX=B和XA=B的解A=[12;34];B=[43;21];100+Aans=101102103104A*B,A.*B%注意矩阵运算和数组运算的区别ans=852013ans=4664A\B,B/A,A.\B,B./A%注意矩阵运算和数组运算的区别ans=-6.0000-5.00005.00004.0000ans=-3.50002.5000-2.50001.5000ans=4.00001.50000.66670.2500ans=4.00001.50000.66670.25004.数学函数数组的数学函数也是按每个元素的运算,使用通常的函数符号,常用数学函数见表4表4数学函数函数意义函数意义sin正弦fix向0取整cos余弦mod模余tan正切rem除法余数cot余切abs绝对值(模)asin反正弦exp指数函数acos反余弦log自然对数sqrt开方log10以10为底的对数A=[4-1;32];B=exp(A)B=54.59820.367920.08557.3891C=fix(B)C=540207D=sin(C)D=-0.558800.91290.6570E=log(D)Warning:Logofzero.E=-0.5820+3.1416i-Inf-0.0911-0.4
本文标题:实验实习指导书1_Matlab软件简介
链接地址:https://www.777doc.com/doc-3420061 .html