矩阵运算

一、矩阵的加、减、数乘、幂运算,求逆:A+B,A-B,8A,A的平方,A*B,A’

1.A+B;A-B

>>A=ones(3);B=magic(3);C=A+B,D=A-B;

2.数乘8A
>>8*A

3.A的平方,A*B,矩阵A的逆.
(1)元素的平方:A.^2

(2)矩阵的平方:A^2;

(3)逆:inv(A);

(4)矩阵乘法:A*B;

(5)元素相乘:A.*B;

注意:像带点"."时对应元素的运算;不带点为矩阵的运算.
二、matlab 中矩阵的输入
由m行n列构成的数组称为(m×n)阶矩阵。
用"[]"方括号定义矩阵;
其中方括号内","逗号或" "空格号分隔矩阵列数值;
";"分号或"Enter"回车键分隔矩阵行数值。
例:a=[a11 a12 a13;a21 a22 a23]或a=[a11,a12,a13;a21,a22,a23]定义了一个 2*3 阶矩阵a。
aij可以为数值、变量、表达式或字符串,如为数值与变量得先赋值,

表达式和变量可以以任何组合形式出现,

字符串须每一行中的字母个数相等,

调用时缺省状态按行顺序取字母,如a(1)为第一行第一个字母。

三、常用函数如下

1、size(a)
% [d1,d2,d3,..]=size(a)  求矩阵的大小,对m*n二维矩阵,第一个为行数m,第二个为列数n;对多维矩阵,第N个为矩阵第N维的长度。 
2、 cat(k,a,b) 矩阵合并,运行a = magic(3)
%              b = pascal(3)
%              c = cat(4,a,b)
% 改4为3或2或1,自己体会合并后的效果。
% k=1,合并后形如 [a;b],行添加矩阵(要求a,b的列数相等才能合并);
% k=2,合并后形如[a,b],列添加矩阵(要求a,b的行数相等才能合并),以此类推,n维的矩
% 阵合并,要求n-1维维数相等才可以)。 
3、 fliplr(a) 矩阵左右翻转
% flipud(a) 矩阵上下翻转
4、rot90(a)反转90度
% rot90(a,k) 矩阵逆时针旋转90度(把你的头顺时针旋转90看原数就可以知道结果了)
% k参数定义为逆时针旋转90*k度。 
5、 flipdim(a,k) 矩阵对应维数数值翻转,如k=1时,行(上下)翻转,k=2时,列(左右)翻转。 
6、 tril(a)
% tril(a,k) 矩阵的下三角部分(包括对角线元素),对应k=0时的取值数。
% k参数设置为正负数值对应对角线向上或向下移动k行划分下三角元素。
% triu(a)
% tril(a,k) 矩阵的上三角部分(包括对角线元素),对应k=0时的取值数。
% k参数设置为正负数值对应对角线向上或向下移动k行划分上三角元素。
7、diag(a)
% diag(a,k) 生成对角矩阵或取出对角元素,对应k=0时的取值数。
% k参数设置为正负数值对应对角线向上或向下移动k行取对角元素或生成对角矩阵。
8、repmat(a,m,n) 矩阵复制,把矩阵a作为一个单位计算,复制成m*n的矩阵,其每
% 一元素都含一个矩阵a,实际结果为一个size(a,1)*m行,size(a,2)*n列的矩阵。
% w=meshgrid(s,t)
% [u,v]=meshgrid(s,t) 生成行m=size(t,1)*size(t,2),列n=size(s,1)*size(s,2))
% 阶的两个矩阵。其中u为按行顺序取s的n个矩阵元数,按列排列重复m行,v为按列顺序取t的
% m个矩阵元数 ,按行排列重复n列。只生成一个矩阵时,w=u。 
9、 eye(a)
% eye(a,k) 生成a阶单位方阵
% k参数设置为生成a×k阶单位矩阵,即生成a阶单位方阵后,取前k列,不足补0。
10、ones(a)
% ones(a,k) 生成a阶全1方阵
% k参数设置生成a×k阶全1矩阵。 
11、 zeros(a)
% zeros(a,k) 生成a阶全0方阵
% k参数设置生成a×k阶全0矩阵。 
12、 inv(a) 生成a的逆矩阵 

13、 length         求矩阵的长度的函数
a=[10,2,12;34,2,4;98,34,6];
size(a)
%
% ans =
%
% 3                  3
%
length(a)
%
% ans =
%
% 3


% 1.       通过在矩阵变量后加’的方法来表示转置运算

a=[10,2,12;34,2,4;98,34,6];

a'
%
% ans =
%
%     10    34    98
%
%      2     2    34
%
%     12     4     6

 矩阵求逆

inv(a)

% ans =
%
%    -0.0116    0.0372   -0.0015
%
%     0.0176   -0.1047    0.0345
%
%     0.0901   -0.0135   -0.0045

14、矩阵求伪逆

pinv(a)
%
% ans =
%
%    -0.0116    0.0372   -0.0015
%
%     0.0176   -0.1047    0.0345
%
%     0.0901   -0.0135   -0.0045
左右反转

fliplr(a)
%
% ans =
%
%     12     2    10
%
%      4     2    34
%
%      6    34    98

15、 矩阵的特征值

[u,v]=eig(a)

% u =
%
%    -0.2960    0.3635   -0.3600
%
%    -0.2925   -0.4128    0.7886
%
%    -0.9093   -0.8352    0.4985
%
% v =
%
%    48.8395         0         0
%
%          0  -19.8451         0
%
%          0         0  -10.9943

16、  上下反转

flipud(a)

% ans =
%
%     98    34     6
%
%     34     2     4
%
% 10     2    12

17、     旋转90度

rot90(a)
%
% ans =
%
%     12     4     6
%
%      2     2    34
%
% 10    34    98

18、   取出上三角和下三角

triu(a)
%
% ans =
%
%     10     2    12
%
%      0     2     4
%
%      0     0     6

tril(a)
%
% ans =
%
%     10     0     0
%
%     34     2     0
%
%     98    34     6

[l,u]=lu(a)
%
% l =
%
%     0.1020    0.1500    1.0000
%
%     0.3469    1.0000         0
%
%     1.0000         0         0
%
% u =
%
%    98.0000   34.0000    6.0000
%
%          0   -9.7959    1.9184
%
%          0         0   11.1000

19、   正交分解

[q,r]=qr(a)
%
% q =
%
%    -0.0960   -0.1232   -0.9877
%
%    -0.3263   -0.9336    0.1482
%
%    -0.9404    0.3365    0.0494
%
% r =
%
%  -104.2113  -32.8179   -8.0989
%
%          0    9.3265   -3.1941
%
% 0         0   -10.9638
%
20、奇异值分解

[u,s,v]=svd(a)
%
% u =
%
%     0.1003   -0.8857    0.4532
%
%     0.3031   -0.4066   -0.8618
%
%     0.9477    0.2239    0.2277
%
% s =
%
%   109.5895         0         0
%
%          0   12.0373         0
%
%          0         0    8.0778
%
% v =
%
%     0.9506   -0.0619   -0.3041
%
%     0.3014    0.4176    0.8572
%
%     0.0739   -0.9065    0.4156
%
21.求矩阵的范数

norm(a)
%
% ans =
%
%   109.5895

norm(a,1)
%
% ans =
%
%    142

norm(a,inf)
%
% ans =
%
%    138

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值