•MATLAB 允许用户对一个矩阵的单个元素进行赋值和操作。例如 A(3,2)=200
•也可以采用矩阵元素的序号来引用矩阵元素。矩阵元素按列编号,先第一列,再第二列,依次类推。
•以 m×n 矩阵 A 为例,矩阵元素 A(i,j)的序号为(j-1)*m+i。其相互转换关系也可利用 sub2ind 和
ind2sub 函数求得。
2. 矩阵拆分
(1)利用冒号表达式获得子矩阵
①A(:,j)表示取 A 矩阵的第 j 列全部元素;A(i,:)表示 A 矩阵第 i 行的全部元素;A(i,j)表示取 A
矩阵第 i 行、第 j 列的元素。
②A(i:i+m,:)表示取 A 矩阵第 i~i+m 行的全部元素;A(:,k:k+m)表示取 A 矩阵第 k~k+m 列的全
部元素,A(i:i+m,k:k+m)表示取 A 矩阵第 i~i+m 行内,并在第 k~k+m 列中的所有元素。
此外,还可利用一般向量和 end 运算符等来表示矩阵下标,从而获得子矩阵。end 表示某一维的
末尾元素下标。
(2)利用空矩阵删除矩阵的元素
•在 MATLAB 中,定义[]为空矩阵。给变量 X 赋空矩阵的语句为 X=[]。
•注意,X=[]与 clear X 不同,clear 是将 X 从工作空间中删除,而空矩阵则存在于工作空间,只是维
数为 0。
•将某些元素从矩阵中删除,采用将其置为空矩阵的方法就是一种有效的方法。
2.3.4 多维矩阵
以三维矩阵为例,常用的方法有 4 种:
(1)对二维矩阵进行扩充得到三维矩阵。
(2)若干个同样大小的二维矩阵进行组合得到三维矩阵。
(3)除产生单位矩阵的 eye 函数外,前面介绍的建立矩阵的函数都可以延伸到三维矩阵。
(4)用 cat 函数构建多维矩阵。一般调用格式是:
cat(n,A1,A2,…,An)
cat 函数把大小相同的若干矩阵,沿第 n 维方向串接成高维矩阵。当 n=1 和 2 时,沿行和列的方
向串接,结果是二维矩阵。当 n=3 时,沿页的方向串接,结果是三维矩阵。
2.4 MATLAB 运算
2.4.1 算术运算
1. 基本算术运算
MATLAB 的基本算术运算有:+(加)、-(减)、*(乘)、/(右除)、\(左除)、^(乘方)。
注意:运算是在矩阵意义下进行的,单个数据的算术运算只是一种特例。
2. 点运算
点运算符有.*、./、.\和.^。两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的
维参数相同。
3.MATLAB 常用数学函数
2.4.2 关系运算
➢ MATLAB 提供了 6 种关系运算符:<(小于)、<=(小于或等于)、>(大于)、>=(大于或等于)、==(等
于)、~=(不等于)。
➢ 关系运算符的运算法则。
例 2.4 产生 5 阶随机方阵 A,其元素为[10,90]区间的随机整数,然后判断 A 的元素是否能被 3
整除。
(1) 生成 5 阶随机方阵 A。
A=fix((90-10+1)*rand(5)+10)
(2) 判断 A 的元素是否可以被 3 整除。
P=rem(A,3)==0
2.4.3 逻辑运算
• MATLAB 提供了 3 种逻辑运算符:&(与)、|(或)和~(非)。
• 运算法则。