1、matlab快速入门常变量及其命名规则 变量名可以有数字、字母、下划线构成; 变量的首字符必须是字母; 区分变量的大小写; 每个变量名最长包含19个字符;显示格式:在缺省的状态下,MATLAB以短格式(short)显示计算结果。可以用MATLAB命令窗中format指令来改变数字的显示格式。由于MATLAB以双精度执行所有运算,显示格式的设置仅影响矩阵的显示,不影响矩阵的计算与存储。 format short e:短格式科学表示; format long:长格式; format long e:长格式科学表示; format bank:银行格式; format hex:十六进制格式 format
2、 compact:紧凑格式,消去矩阵之间的间隔行,这样可以在一屏中显示更多的信息;变量的存储与调用quit 和exit 指令都可退出MATLAB 结束MATLAB 任务会删除工作间中的变量在退出前可以保存工作空间以备再次调出使用这些变量。保存的指令格式: save 工作间中的所有变量保存在磁盘上名为matlab.mat 的文件中; save 文件名 变量名 将指定的变量保存在指定文件中如:save temp x y z 把x,y,z 这三个变量保存在文件temp.mat 中;在下次加载 MATLAB 时可以利用load 指令将保存在文件中的变量恢复到工作间中其格式有; load 将保存在mat
3、lab.mat 中的变量装入到MATLAB 工作间中 load 文件名 变量名 从指定的文件中将指定的变量装入MATLAB 工作间。如;load temp x 从文件temp.mat 中只将变量x 装入到MATLAB 工作间中。MATLAB中预定义变量:工作内存中由系统本身在启动时定义的变量,不能有clear清除掉。 Eps:返回机器精度; Realmin:返回计算机能处理的最小的非零浮点数; Realmax:返回计算机能处理的最大浮点数; Inf:定义为1/0。当出现被零除时,Matlab就返回inf,并不中断执行而继续计算; NaN:定义为“Not a Number”,这个非数值要么是%类
4、型,要么是inf/inf; i、j:虚数的单位向量的创建 在matlab的命令窗口中键入以下字符a=【1 2 3 4 5 6 9 8 7】 a= 1 2 3 4 5 6 9 8 7 希望得到元素从0到20.步距为2的一个向量,只需键入以下命令即可t=【0:2:20】t= 2 4 6 8 10 12 14 16 18 20矩阵的创建输入矩阵时每一行元素有分号或者回车键分隔,矩阵元素之间用逗号或者空格隔开。例如; B=【1 2 3 4;5 6 7 8;9 10 11 12】B= 1 2 3 4 5 6 7 8 9 10 11 12此时,B会被保存到Matlab的工作间中,以备后用。如果用户不用cl
5、ear指令清除它,或者是对它重新定义,该矩阵会一直保存在工作间中,知道本Matlab指令窗被关闭为止。 矩阵元素输入B(1,2)=3;B(4,4)=6;B(4,2)=11B = 0 3 0 00 0 0 00 0 0 00 11 0 6 例1 表达式的计算结果2001/81ans = 24.7037例2运算结果的赋值s=1-1/2+1/3-1/4+1/5-1/6+1/7-1/8;说明:结尾的分号作用是指令执行结果将不会显示在屏幕上但变量s 仍将驻留在内存中如想看s 的值只要键入ss = 0.6345 数与表达式MATLAB 的数值采用习惯的十进制表示可以带小数点或负号如下是合法的3 -99 0
6、.0013 9.2445154 1.2434e-6 4.673e33语句 Matlab语言最基本的赋值语句结构为:变量名列表 = 表达式注1:整个赋值语句以;结束,则不再屏幕上返回结果,否则立即返回结果。注2:多个语句可在同一行,用逗号分开。注3:表达式太长可以用续行符号函数 Matlab由包括许多标准函数,每个函数都完成某一特定功能的代码组成; Matlab也允许用户编写自己所需要的函数,其扩展名为.m,其中必须以关键字function开头;流程控制 循环语句for,while;1、 for循环语句基本格式for 循环变量=起始值:步长:终止值循环体 end2、while循环语句基本格式wh
7、ile 表达式 循环体end若表达式为真,则执行循环体的内容,执行后再判断表达式是否为真,若不为真,则跳出循环体,向下继续执行。例如:用while循环语句编写一个计算1000以内的Fibonaccci数: f=【1 1】; i=1;while f(i)+ f(i+1)1000 f(i+2)= f(i)+ f(i+1); i=i+1;endf=1 1 2 3 5 8 13 21 34.。步长缺省值为1,可以在正实数或负实数范围内任意指定。对于正数,循环变量的值大于终止值时,循环结束;对于负数,循环变量的值小于终止值时,循环结束。循环结构可以嵌套使用。for i=1:5 for j=1:5 a(i
8、,j)=1/(i+j-1); endenda=1.0000 0.3333 0.2500 0.2000 条件转移if end,if else if else end;3、if,else,elseif语句 (1)if 逻辑表达式 执行语句 end (2)if 逻辑表达式 执行语句1 else 执行语句2 end (3)if 逻辑表达式1 执行语句1 elseif 逻辑表达式2 执行语句2 。 end 开关语句switch case;4、switch语句 switch 表达式(可以是标量或字符串) case 值1 语句1 case 值2 语句2 。 Otherwise 语句3 end 注释语句%;
9、中断语句break; 暂停语句pause; 回显语句echo on/off;MATLAB工作窗中的部分通用指令quit关闭和退出MATLABclc擦除MATLAB工作窗中的所有显示内容clf擦除MATLAB的当前图形窗中的图形clear清除内存中的变量和函数pack搜集内存碎片以扩大内存空间dir列出指定目录下的文件盒子目录清单cd改变当前工作子空间disp(在运行中)显示变量的文字内容hold控制当前图形窗对象是否被刷新type显示所有指定文件的全部内容echo控制运行文件指令是否显示的开关MATLAB中常用操作键上键前寻式调回已输入过的指令行下键后寻式调回已输入过的指令行左键在当前行中左移
10、光标右键在当前行中右移光标Pageup前寻式翻阅当前窗中的内容Pagedown后寻式翻阅当前窗中的内容Home使光标移到当前行的首端End使光标移到当前行的尾端Esc清除当前行的全部内容MATLAB程序的基本组成结构 %说明; 清除命令:清除workspace中的变量和图形(clear,close); 定义变量:包括全局变量的声明及参数值得设定; 逐行执行命令:值MATLAB提供的运算指令或工具箱提供的专用指令; 控制循环体:包括for,if then,switch,while等语句逐行执行命令。 。 。 end 绘图命令:将运算结果绘制出来 当然更复杂的程序还需要调用子程序,或与simuli
11、nk以及其他应用程序结合起来。MATLAB的程序类型有3种,一种是在命令窗口下执行的脚本M文件;另一种是可以存取的M文件,也即程序文件;最后一种是函数(function)文件。1、 脚本M文件在命令窗口中输入并执行,它所用的变量都是在工作空间中获取,不需要输入输出参数的调用,推出MATLAB后就释放了。2、 程序M文件(1) 以.m格式进行存取,包含一连串的MATLAB指令和必要的注解。需要在工作空间中创建并获取变量,也就是说处理的数据为命令窗口中数据,没有输入参数,也不会返回参数。(2) 程序运行时只需要在工作空间中键入其名称即可。3、 函数文件与在命令窗口中输入命令一样,函数接受输入参数,
12、然后执行并输出结果。用help命令可以显示它的注释说明。具有标准的基本结构。(1) 函数定义行(关键字function)function【out1,out2,】=filename(in1,in2,).输入和输出(返回)的参数个数分别由nargin和nargout两个MATLAB保留的变量来给出。(2) 第一行帮助行,即H1行以(%)开头,作为lookfor指令搜索的行。(3) 函数体说明及有关注解以(%)开头,用以说明函数的作用及有关内容。(4) 函数体语句函数体内使用的除返回和输入变量这些在function语句中直接引用的变量以外的所有变量都是局部变量,即在该函数返回以后,这些变量会自动在M
13、ATLAB的工作空间中清除掉。如果希望这些中间变量成为在整个程序中都起作用的变量,则可以将它们设置为全局变量。MATLAB提供了丰富的绘图功能 help graph2d可得到所有画二维图形的命令; help graph3d可得到所有画三维图形的命令;1、 基本的绘图命令plot(x1,y1,option1,x2,y2,option2,);x1,y1给出的数据分布为x,y轴坐标值,option1为选项参数,以逐点连折线的方式绘制1个二维图形;同时类似地绘制第二个二维图形。这是plot命令的完全格式,在实际应用中可以根据需要进行化简。比如:plot(x,y);plot(x,y,option)选项参
14、数option定义了图形曲线的颜色,线型及标示符号,它由一对单引号括起来。2、 选择图像figure(1);figure(2);figure(n)打开不同的图形窗口,以便绘制不同的图形。3、 grid on:在所画的图形坐标中加入栅格。grid off:出去图形坐标中加入栅格。4、 hoid on:把当前图形保持在屏幕上不变,同时允许在这个坐标内绘制另外一个图形。hoid off:使新图覆盖旧的图形。5、 设定轴的范围axis(【xmin xmax ymin ymax】)axis(equal):将x和y坐标轴的单位刻度大小调整为一样。 6、文字标示 text(x,y,字符串) 在图形的指定坐标
15、位置(x,y)处,标示单引号括起来的字符串。 title(字符串)在所画图形的最上端显示说明该图形标题的字符串 xlabel(字符串), ylabel(字符串),设置x,y坐标的轴的名称。 输入特殊的文字需要用反斜杠()开头。7、legend(字符串1, 字符串2, 字符串n) 在屏幕上开启一个小视窗,然后依据绘图命令的先后次序,用对应的字符串区分图形上的线。8、subplot(m,n,k):分割图形显示窗口;m:上下分割个数;n:左右分割个数;k:子图编号。9、semilogx:绘制x轴为对数坐标(以10为底),y轴为线性坐标的半对数坐标图形。 Semilogy:绘制y轴为对数坐标(以10为
16、底),x轴为线性坐标的图形。 10、了解应用型绘图指令:可用于数值统计分析或离散数据处理: bar(x,y);hist(y,x) stairs(x,y);stem(x,y)实例1:函数分析 fplot(func,【-1 1.5】) %作图 result=func(0) %求函数值 xsolve= fzero(func,3) %求解 Xmin= fminbnd(func,0.5,1) %求最小值矩阵运算: A=1 2 3; 4 5 6; 7 8 9; B=1 2 3; 4 5 6; C=1 0 1; 0 2 3; 4 5 0; A+C=A+C BA=B*A detA= det(A) traceA= trace(A) B=B InvA= inv(A) rankA= rank(A) 【EigenVector,EigenValues】=eig(A)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1