欢迎来到天天文库
浏览记录
ID:38902948
大小:216.50 KB
页数:70页
时间:2019-06-21
《《数组和矩阵分析》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章数组和矩阵分析MATLAB语言最基本和最重要的功能就是进行矩阵运算,所有的数值功能都以矩阵为基本单元来实现。本章将对MATLAB中的数组和矩阵及其运算进行详细的介绍。3.1数组及其函数下面介绍MATLAB中如何建立数组,以及数组的常用操作等,包括数组的算术运算、关系运算和逻辑运算,以及数组信息的获取等。3.1.1数组的建立和操作在MATLAB中,一般使用方括号([])、逗号(,)、空格及分号(;)来创建数组。数组中同一行的元素之间用逗号或空格进行分割,不同行之间用分号进行分割。需要注意的是,这些符号都必须在英文输入状态下输入。空数组是MAT
2、LAB中最特殊的数组,不含有任何元素,可以用于数组的声明或者清空等。创建空数组非常简单,只要把变量赋值为一对方括号即可。数组是有方向的,一维数组包括行向量和列向量,行向量是以行方向分布的,列向量是以列方向分布的。创建一维行向量,把所有用空格或逗号分割的元素用方括号括起来;创建一维列向量,把所有用分号分割的元素用方括号括起来。3.1.2数组的算术运算数组运算是从数组的单个元素出发,针对每个元素进行的运算。在MATLAB中,一维数组的基本算术运算有:+(加)、-(减)、.*(乘)、./(左除)、.(右除)和^(乘方)等。数组的加减运算规则:若数组A
3、和B的维数相同,则可以执行加减运算,相应元素相加减。如果A和B的维数不相同,则MATLAB将给出错误信息,提示用户两个数组的维数不匹配。3.1.2数组的算术运算在MATLAB中,数组的乘法和除法分别用“.*”和“./”表示。如果数组A和B具有相同的维数,则数组的乘法表示数组A和B中对应的元素相乘,数组的除法表示数组A和B中对应的元素相除。右除和左除的关系为:A./B=B.A,其中是A被除数,B是除数。3.1.3数组的关系运算MATLAB提供了6种关系运算符:<(小于)、<=(小于或等于)、>(大于)、>=(大于或等于)、==(恒等于)、~=(不
4、等于)。它们的含义很容易理解,需要注意的是其书写方法与数学中的不等式符号不尽相同。当参与比较的量是两个维数相同的数组时,比较两数组相同位置的元素,并给出比较结果。最终的关系运算的结果是一个维数与原矩阵相同的数组,由0或1组成。当参与比较的一个是标量,而另一个是数组时,则把标量与数组的每一个元素逐个比较,最终的关系运算的结果是一个维数与原数组相同的数组。3.1.4数组的逻辑运算在MATLAB中,提供了3种逻辑运算符,分别是&(逻辑与)、
5、(逻辑或)和~(逻辑非)。在逻辑运算中,如果为非零元素则为逻辑真,用1表示,零元素为逻辑假,用0表示。3.1.3
6、数组信息的获取下面介绍如何获取数组的信息,包括数组大小、维度、数据类型、内存占用,以及数组的元素查找和排序等。函数isempty(A):该函数检测数组是否为空,如果为空,返回值为1,否则,返回值为0。函数isscalar(A)检测数组是否为单个元素的标量。函数isvector(A)检测数组是否为行向量或列向量。函数isrow()检测数组是否为列向量。函数iscolum()检测数组是否为行向量。函数issparse()检测数组是否为稀疏矩阵。3.1.3数组信息的获取下面介绍如何获取数组的信息,包括数组大小、维度、数据类型、内存占用,以及数组的元素查
7、找和排序等。函数isempty(A):该函数检测数组是否为空,如果为空,返回值为1,否则,返回值为0。函数isscalar(A)检测数组是否为单个元素的标量。函数isvector(A)检测数组是否为行向量或列向量。函数isrow()检测数组是否为列向量。函数iscolum()检测数组是否为行向量。函数issparse()检测数组是否为稀疏矩阵。3.1.3数组信息的获取在MATLAB中,最常用的检测数组大小的函数是size()和length()。函数size()获取数组的行数和列数,函数length()获取一维数组的长度,如果是二维数组,则返回行数
8、和列数中的较大者。函数ndims()计算数组的维度。3.1.3数组信息的获取在MATLAB中,可以采用函数whos来获取数组的大小,以及占用内存的多少。对于数组中不同的数据类型,占用的内存也不一样。在MATLAB中,数组元素的查找采用函数find(),返回关系表达式为真的元素的下标。在MATLAB中,数组的排序使用函数sort(),该函数默认按照升序排列,返回值为排序后的数组,和原数组维数相同。3.2矩阵的创建矩阵的创建有多种方式,最简单的是在命令窗口中直接输入矩阵,比较适合创建比较小的矩阵。把矩阵的元素放到方括号里面,每行的元素用空格或逗号分割
9、,每列用分号分割。需要注意的是每行的元素数必须相等,每列的元素数也必须相等。此外,还可以通过语句和函数生成矩阵,例如函数eye()用于生
此文档下载收益归作者所有