matlab—矩阵运算函数
- 矩阵的秩
任意一个矩阵都能通过初等行变换变成行阶梯形,这个行阶梯型所含非零行的行数就是矩阵的秩,矩阵的秩是矩阵的一个数字特征,是矩阵初等变换的一个不变的量,对于矩阵研究具有重要意义。
matlab 求法:
给出矩阵a 直接输入rank(a)
即可。
示例:
>> a=[1,2,3;0,1,2;0,0,1];
>> rank(a)
结果是 ans=3;
- 矩阵的行列式:
一个n×n矩阵的行列式等于其任意行(或列)的元素与对应的代数余子式乘积之和,即
而用matlab 求就简单多了 a是一个矩阵 只要输入det(a)
即可。
示例:
>> a=[1,2,3;0,1,2;0,0,1];
>> det(a)
- 矩阵的逆
设A是数域上的一个n阶矩阵,若在相同数域上存在另一个n阶矩阵B,使得: AB=BA=E ,则我们称B是A的逆矩阵,而A则被称为可逆矩阵。注:E为单位矩阵。
逆矩阵手算逆矩阵的方法都在这里面。用matlab只需要输入inv(a)
即可。
示例:
>> a=[1,2,3;0,1,2;0,0,1];
>> inv(a)
- 矩阵的特征值和特征向量
设A是n阶方阵,如果数λ和n维非零列向量x使关系式Ax=λx成立,那么这样的数λ称为矩阵A特征值,非零向量x称为A的对应于特征值λ的特征向量。式Ax=λx也可写成( A-λE)X=0。这是n个未知数n个方程的齐次线性方程组,它有非零解的充分必要条件是系数行列式| A-λE|=0。
矩阵的特征值和特征向量这里面有详细的解释和计算方法
matlab实现[X,Y]=eig(a)
x里面存的是特征向量,y的对角线上就是对应的特征值,然后再用diag函数取出对角线上的值
示例:
a=[1,2,3;0,1,2;0,0,1];
[X,Y]=eig(a);
y=diag(Y);
X
y
- 矩阵的运算
拿来举例子吧,如果你想让两个矩阵进行相乘,那矩阵的大小必须合法 nm 的矩阵 一定得乘 m*k的矩阵(n,k随意)这是后直接乘就行c=a*b
;但是你如果想让矩阵中的相对应的元素进行乘法运算,此时就要用 . *c=a.*b
拿个示例来演示一下:
a=[1,2,3;
1,2,3;
1,2,3];
b=[1,1
1,1
1,1];
c=[1,1,1;
1,1,1;
1,1,1];
d=a*b
f=a.*c
结果
d =
6 6
6 6
6 6
f =
1 2 3
1 2 3
1 2 3
此时 d 就是两个矩阵相乘的结果,而f是矩阵中的每个元素对应相乘的结果。