MATLAB基础语句(二)
第二部分 矩阵运算求解、变换
一、矩阵的算数运算
说明:检验矩阵阶数的函数:
[m,n] = size(矩阵变量)
L = length[矩阵变量]
1、基本算术运算
(1)加减
运算符:A+B、A-B
注意:要求相加减的矩阵阶数相同。
(2)乘法
运算符:A*B
注意:A的列数与B的行数相同
(3)除法
运算符:A\B(左除)、B/A(右除)
注意:左除时两矩阵行数相等;右除时两矩阵列数相等
两者区别:左除时直接对两矩阵进行除运算;而右除是先计算量矩阵的逆再相除
(4)乘方运算
运算符:矩阵^幂次
>> A = [1,2;3,4];
>> B = [1,1;2,2];
>> Y1 = A+B;
>> Y2 = A-B;
>> Y3 = A*B;
>> Y4 = A\B;
>> Y5 = B/A;
>> Y6 = A^2;
>> disp(Y1)
2 3
5 6
>> disp(Y2)
0 1
1 2
>> disp(Y3)
5 5
11 11
>> disp(Y4)
0 0
0.5000 0.5000
>> disp(Y5)
-0.5000 0.5000
-1.0000 1.0000
>> disp(Y6)
7 10
15 22
2、矩阵的点运算
矩阵中对应位置元素进行相关运算。
运算符:(1)点乘:.*
(2)点除:.\,./
(3)点乘方:.^
注意:参与运算的矩阵行、列相同
>> A = [1,2;3,4];
>> B = [1,1;2,2];
>> Y1=A.*B;
>> Y2 = A.\B;
>> Y3 = A./B;
>> Y4 = A.^2;
>> disp(Y1)
1 2
6 8
>> disp(Y2)
1.0000 0.5000
0.6667 0.5000
>> disp(Y3)
1.0000 2.0000
1.5000 2.0000
>> disp(Y4)
1 4
9 16
二、矩阵的关系运算
关系运算符:<、<=、>=、>、==、~=
运算结果:真(1),假(0)
运算法则:
(1)标量比较:直接比较大小。
(2)矩阵比较:两阶数相同的矩阵,其对应位置元素进行比较,最终将结果输出到一个阶数相同的矩阵中。
注意:相同阶数的矩阵才能比较
三、矩阵的逻辑运算
逻辑运算符:&(与)、|(或)、~(非)
函数:all():全为真(按列运算),输出值为每列的比较值
any():不全为假(按列运算),输出值为每列的比较值
注意:非0值将按照逻辑“逻辑真”运算
>> A = [0,1,3;4,0,2;0,3,0];
>> disp(A)
0 1 3
4 0 2
0 3 0
>> disp(~A)
1 0 0
0 1 0
1 0 1
>> disp(A|~A)
1 1 1
1 1 1
1 1 1
>> disp(A&~A)
0 0 0
0 0 0
0 0 0
>> disp(all(A))
0 0 0
>> disp(any(A))
1 1 1
>> disp(all(A|~A))
1 1 1
四、矩阵元素的处理
1、矩阵元素的取整
(1)按负无穷方向取整:floor()
(2)按正无穷方向取整:ceil()
(3)四舍五入取整:round()
(4)截尾取整(去掉小数部分):fix()
2、矩阵元素的取余
函数:rem(变量名,取余数)
功能:将变量矩阵的每个位置进行取余
>> A = [2,4;6,7];
>> disp(rem(A,3))
2 1
0 1