您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > MATLAB实用教程.
第1章MATLAB简介MATLAB的主要特点MATLAB的桌面环境MATLAB的帮助系统MATLAB的主要特点简单易学代码短小高效计算功能强大绘图功能强大可扩展性能MATLAB的桌面环境启动按钮命令窗口命令历史窗口工作空间窗口当前目录浏览器主界面当前目录浏览工具命令窗口启动按钮命令历史窗口工作空间窗口MATLAB的帮助系统帮助浏览工具help函数和doc函数第2章数据类型常数和变量数组和矩阵函数句柄常数常数返回值ans默认变量名,保存最近的结果。如果不给表达式指定一个输出变量,MATLAB会自动将结果保存到ans变量中eps浮点相对精度。是MATLAB用于计算的容限realmax计算机可以表示的最大浮点数realmin计算机可以表示的最小浮点数pi圆周率i,j虚数单位inf无限值。类似n/0的表达式生成的结果为inf,其中n为非0实数NaN表示不合法的数值值,非数值。类似0/0和inf/inf的表达式生成的结果,与NaN有关的算术运算结果,以及n/0,n为复数时的计算结果都是NaNcomputer计算机类型versionMATLAB版本字符串下表列出了MATLAB提供的一些内部函数。变量变量名MATLAB变量名的第1个字符必须是字母,后面可以跟字母、数字和下划线的任何组合。注意:MATLAB中变量名有大小写区分,所以A和a是不同的变量。创建变量在MATLAB中创建变量很简单,不必声明变量的数据类型。例如在命令窗口键入下面的命令行就可以创建一个A变量。A=9A=9向量和矩阵MATLAB中,所有数据都用向量或矩阵形式进行保存。向量矩阵直接构造向量在MATLAB中构造向量,只需要用空格或逗号间隔向量元素,然后用方括号括起来就行了。如x=[023678]或x=[0,2,3,6,7,8]就构造了一个有6个元素的向量x。用简单方法构造矩阵MATLAB中创建矩阵最简单的方法是使用符号[]。在方括号内输入多个元素可以创建矩阵的一个行。用逗号或空格把每个元素间隔开。如果想开始一个新行,用分号终止当前行:A=[row1;row2;...;rown]下面创建一个3行5列的数值矩阵。A=[126293-822;162874391;-417-72956]A=126293-822162874391-417-72956使用线性索引获取矩阵的元素MATLAB保存矩阵中的数据时是作为一个元素列保存。这个元素列又是由矩阵中的所有列组成的,后一列元素按先后顺序添加到前一列元素的最后。所以,矩阵AA=[269;428;301]A=269428351在内存中是按下面的序列保存的:2,4,3,6,2,5,9,8,1矩阵A第3行第2列的元素可以看作实际保存序列中的第6个元素。要获取这个元素,可以使用标准语法A(3,2)或使用A(6)。创建字符串通过把字符放到单引号中来指定字符数据。如,下面创建一个1×5的字符串country。country='China';创建一个二维字符串时,确定每行具有相同的长度,例如,下面两个字符串都有5个字符,用它们组合起来的二维字符串是合法的。name=['LiYi';'HuXu']name=LiYiHuXu根据不同长度的字符串创建字符串时,将短的那些字符串后面用空格补齐,使所有字符串的长度相同。函数句柄函数句柄是一种MATLAB数据类型,它包含用于引用函数的信息。创建函数句柄时,MATLAB在句柄中保存所有与要运行的函数有关的信息。第3章将对函数句柄进行比较详细的介绍。第3章M文件设计变量表达式流程控制函数M文件程序调试与错误处理编程技巧变量变量的作用范围局部变量:局部变量的作用范围仅限于本函数。全局变量:全局变量用global关键字进行声明,其作用范围为整个M文件。表达式数值表示运算符处理字符串表达式数值表示MATLAB使用传统的数值表示方法。对于比较长的数,使用科学计数法,用字母e指定以10为底的幂次。虚数用i或j作为后缀。下面是一些合法的数值表示:3-990.00019.63972381.60210e-206.02252e231i-3.14159j3e5i运算符算术运算符比较运算符逻辑运算符运算符的优先级运算符的优先级按照优先级别,各种运算符有下面的先后次序。小括号()转置(.')、幂(.^)、复数共轭转置(')、矩阵的幂(^)一元的加(+)、一元的减(-)、逻辑否(~)乘(.*)、右除(./)、左除(.\)、矩阵乘(*)、矩阵右除(/)、矩阵左除(\)加(+)、减(-)冒号操作符(:)小于()、小于或等于(=)、大于()、大于或等于(=)、等于(==)、不等于(~=)逐元素AND(&)逐元素OR(|)&&||流程控制条件控制循环控制错误控制程序终止控制条件控制if/elseif语句switch/case语句比较上面两种语句,switch/case语句的可读性更强,并且可以比较不同长度的字符串。循环控制for循环while循环continue命令break命令程序终止控制return命令能使当前正在运行的函数正常退出,并返回调用它的函数,继续运行。下表比较break,continue和return命令。命令用在何处描述breakfor或while循环它出现时,退出循环,在嵌套的循环中,进入相邻的外层循环continuefor或while循环在本循环中跳过剩余的语句,进入本循环的下一次迭代return任意位置它出现时,立即退出函数,进入函数的调用函数中函数主函数子函数匿名函数重载函数主函数任何M文件中的第1个函数称为主函数。注意:一般使主函数的名称与M文件的相同。如果函数名与文件名不同,必须用文件名调用函数。子函数M文件中可以包含一个以上的函数。文件中除主函数以外的其他函数称为子函数,并且它们只对主函数或同一文件中的其他子函数可见。匿名函数使用匿名函数,可以在不必创建M文件的情况下快速创建简单函数。可以在MATLAB命令行或任何M文件函数或脚本中创建匿名函数。创建匿名函数的语法格式为:fhandle=@(arglist)expr其中,expr表示函数体,即函数要完成主要工作的代码;arglist为要传递给函数的逗号间隔的输入参数列表。重载函数有时候同一个函数可以用于多种情况,对应地有不同的输入参数,此时要用到重载函数。比如绘制二维线形图的plot函数就有多种重载形式,下面是其中两种。plot(Y)plot(X1,Y1,...)这两个函数具有相同的函数名,不同的参数。调用plot函数时MATLAB会根据函数的参数自动选择使用。M文件脚本式M文件和函数式M文件M文件的基本结构函数的参数函数句柄脚本式M文件和函数式M文件脚本式M文件和函数式M文件的区别如下表所示。脚本式M文件函数式M文件不接受输入参数,没有返回值可以接受输入参数,可以有返回值基于工作空间中的数据进行操作默认时,文件中参数的作用范围只限于函数内部自动完成需要花费很多时间的多步操作时使用扩展MATLAB语言功能时使用M文件的基本结构一个完整的函数式M文件应该包括函数定义行、H1行、帮助文本、函数体、注释和函数代码等方面的内容,其中函数定义行和函数代码是必需的。如function[x,y]=myfun(a,b,c)函数定义行%H1行–用一行文字来综述函数的功能%帮助文本–用一行或多行文本解释如何使用函数,%在命令行中键入helpfunctionname时可以使用它%函数体一般从第一个空白行后开始%注释–描述函数的行为,输入输出的类型等,%在命令行中键入helpfunctionname时不会显示这些文本x=prod(a,b);%开始编写函数代码函数句柄在MATLAB中,在函数名前用@符号创建一个函数句柄。下面的例子为humps函数创建一个函数句柄并将它指定给变量fhandle。fhandle=@humps;可以像传递其它变量一样将句柄传递给另一个函数。用MATLAB的feval命令运行函数句柄的目标函数。用函数句柄使用本命令的语法为:feval(fhandle,arg1,arg2,...,argn)程序调试和错误处理错误和警告信息用Debug菜单进行调试
本文标题:MATLAB实用教程.
链接地址:https://www.777doc.com/doc-2887383 .html