Matlab简单教程:矩阵

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012314976/article/details/78606398

matlab,意思是matrix lab,即矩阵实验室。在matlab中,基础变量即为矩阵。一个整数可以认为是一个1x1的矩阵,行向量和列向量可以当做是行数为1和列数为1的矩阵。

基于这样一个前提,对于代数一类问题的计算,相当便利。在C语言中,如果想要求出两个矩阵的和,我们可能需要编写如下代码:

int A[M][N]=...;
int B[M][N]=...;
int C[M][N];
int i,j;
for(i=0;i<M;i++){
    for(j=0;j<N;j++){
        C[i][j] = A[i][j]+B[i][j];
    }
}

代码不是很长,但是在做循环时,需要小心编写,比如可能会把i,j搞错。而在matlab中,你只需要编写代码:

C=A+B;

是不是超级简单!

在高等代数中,矩阵的相关计算已经被充分讨论了,一些结论我们可以直接在matlab中使用。

矩阵的数乘

A=magic(3);
B=10*A;

矩阵相加

A=rand(3,4); %生成3行4列的随机矩阵
B=ones(3,4); %生成3行4列的矩阵,其中每一个位置的值均为1
C=A+B;

矩阵相乘

A=rand(3,3); % 3x3的随机矩阵
B=eye(3);    % 3x3的单位矩阵
C=A*B;       % A与B相乘后得到C,可以预料C和A相等

矩阵相除

AX=B
X=A^-1*B

转换成矩阵相乘

矩阵转秩

A=rand(3,5); % 3x5的随机矩阵
B=A';        % 5x3的矩阵,对A的转秩

计算矩阵的逆

A=magic(3); 
B=A^-1;     % 计算矩阵A的逆
B=inv(A);   % 计算矩阵A的逆

取出矩阵的一部分作为新的矩阵

A=magic(4);
A(1,:)      % 取矩阵A中的第一行
A(:,2)      % 取矩阵A中的第二列
A(2:4,2:4)  % 取矩阵A右下角的3x3的矩阵,第2行到第4行,第2列到第4列

猜你喜欢

转载自blog.csdn.net/u012314976/article/details/78606398
今日推荐