matlab入门教程七 ----- 矩阵运算&线性方程组&特征值

来源:互联网 发布:网易数据 广州 编辑:程序博客网 时间:2024/06/05 20:19

1.矩阵运算

下图给出常见基本矩阵运算

下面给出几个例子:

%求矩阵的逆
A = [ 1 2 3 4 ;2 3 1 2; 1 1 1 -1 ;1 0 -2 -6];A^(-1)%或者inv(A)
%矩阵的秩与行最简形
A = [ 4 1 2 4 ;1 2 0 2; 10 5 2 0; 0 1 1 7 ];rref(A) %矩阵的行最简形rank(A) %秩

2.解线性方程组
%解线性方程组 x + y = 1  x - y = 3
A = [1 1; 1 -1]; %系数矩阵 B = [1, 3];%Ax = B' %这里是B的转置,因为B应该是列向量x = inv(A) * B'

AX = B --> X = A \ B;    XA = B --> X = B / A
例题如下图

解:
A = [2 5; 1 3];B = [4 -6; 2 1];C = A \ B;CD = [0 1 0;1 0 0;0 0 1;]E =[1 0 0;0 0 1;0 1 0]F = [1 -4 3;2 0 -1;1 -2 0]x = (D \ F) / E;x

解线性方程组例题:


A = [2 1 -1 1; 4 2 -2 1; 2 1 -1 -1]; %系数矩阵B = [1; 2; 1]; %注意这里的B是列向量C = ([A, B]); %增广矩阵rref(C); %求行最简形%   然后利用线代知识求解即可


如果上面的方程等号右边的数字是0即为齐次方程 只需把上述代码的第二行去掉,然后第三行:C = A即可


特征值与特征向量

%求矩阵特征值与特征向量,特征多项式
A = [2 1 1;1 2 1;1 1 2];p = poly2str(poly(A), 'x'); %ploy就是求出特征多项式[V, D] = eig(A); %eig求出的V就是特征向量,D就是对应的特征值矩阵(以对角矩阵呈现),p, V, D % p =% %    x^3 - 6 x^2 + 9 x - 4% % % V =% %     0.4082    0.7071    0.5774%     0.4082   -0.7071    0.5774%    -0.8165         0    0.5774% % % D =% %     1.0000         0         0%          0    1.0000         0%          0         0    4.0000% 特征值矩阵第一列第一行的特征值1的特征向量对应特征向量矩阵第一列% 特征值矩阵第二列第二行的特征值1的特征向量对应特征向量矩阵第二列% 特征值矩阵第三列第三行的特征值4的特征向量对应特征向量矩阵第三列


原创粉丝点击