Matlab矩阵的相乘、点乘、除、点除

1、标量乘、点乘标量

a=10;
b=20;
disp(a*b);    %200
disp(a.*b);   %200

2、标量乘、点乘矩阵

a=10;
b=[1,2,3,4];
disp(a*b);    %[10 20 30 40]
disp(a.*b);   %[10 20 30 40]

3、矩阵相乘

需满足前面矩阵的列需要等后面矩阵的行,A(m,n)*B(n,l)=C(m,l),依此取前者的行一一乘后者的列,作为新矩阵的结果

a=[1,2,3;4,5,6];  %a(2,3)
b=[1,2;3,4;5,6];  %b(3,2)
disp(a*b);            %[22, 28;49,64]


% 1 2 3     1 2
% 4 5 6     3 4
%              5 6
%(1*1+2*3+3*5, 1*2+2*4+3*6; 4*1+5*3+6*5,4*2+5*4+6*6)
%(22,28; 49,64)

4、矩阵点乘

需满足两个矩阵的行和列对应相同,A(m,n).*B(m,n)=C(m,n),每个元素一一做乘法,作为新矩阵结果

a=[1,2,3;4,5,6];  %a(2,3)
b=[1,2,3;4,5,6];  %b(3,2)
disp(a.*b);       %[1, 4, 9;16,25,36]

 5、标量与标量除、点除、左除、左点除

a = 10;
b = 2;
disp(a/b);    %5
disp(a./b);   %5
disp(a\b);    %0.2
disp(a.\b);   %0.2

6、标量与矩阵除、点除

a = [10,20,30];
b = 2;
disp(a/b);    %[1,2,3]
disp(a./b);   %[1,2,3]

7、标量与矩阵左除、左点除

a = [10,20,30];
b = 10;
disp(a\b);    %[0;0;0.3333]
disp(a.\b);   %[1,0.5,0.333]

8、矩阵与矩阵除、点除、左除、左点除

a = [10,20;30,40];
b = [1,2;3,4];
disp(a/b);    %[10,-0;0,10]
disp(a./b);   %[10,10;10,10]
disp(a\b);    %[0.1,0;0,0.1]
disp(a.\b);   %[0.1,0.1;0.1,0.1]

 

posted @ 2022-12-22 14:06  朱小勇  阅读(1591)  评论(0编辑  收藏  举报