MATLAB基础知识(二)

上一边文章我们一起了解了一些基本的函数,那么我们这篇文章继续来了解剩下几个常用的函数:

1.size函数:
size函数是用来返回矩阵的大小,返回一个行向量。
A=[1 2 3;4 5 6]
B=[1 2 3 4 5 6]
size(A);
size(B);
MATLAB基础知识(二)_第1张图片
从图中可以看出size函数返回的是矩阵的大小,也就是矩阵的行数和列数,A是一个2行3列的矩阵,B是一个1行6列的矩阵。
我们也可以把返回的大小用常量表示出来
A=[1 2 3;4 5 6];
[r,c]=size(A)
MATLAB基础知识(二)_第2张图片
如果我们只是想返回一个常量,行向量或者列向量
我们也可以这样写
r=size(A,1);
c=size(A,2)
1表示行向量,2表示列向量
MATLAB基础知识(二)_第3张图片
2.repmat函数:
B = repmat(A,m,n):将矩阵A复制m×n块,即把A作为B的元素,B由m×n个A平铺而成
A = [1,2,3;4,5,6];
B = repmat(A,2,1)
B = repmat(A,3,2)
MATLAB基础知识(二)_第4张图片

MATLAB如何进行矩阵的运算?

MATLAB在矩阵的运算过程中,+号和-号代表矩阵的加法和减法,号和/号代表矩阵之间的乘法和除法。
A = [1,2;3,4];
B = [1,0;1,1];
A * B
MATLAB基础知识(二)_第5张图片
B的逆矩阵:inv(B)
B
inv(B)
Ainv(B)
MATLAB基础知识(二)_第6张图片
A/B
MATLAB基础知识(二)_第7张图片
两个形状相同的矩阵对应元素之间的乘除法需要使用“.
”和“./”
A=[1 2; 3 4];
B=[1 0; 1 1];
A.*B
A./BMATLAB基础知识(二)_第8张图片
矩阵也可以进行常数相乘或相除操作
*和.在常数与矩阵的相乘操作中起到的操作相同,除法操作相同
MATLAB基础知识(二)_第9张图片
MATLAB基础知识(二)_第10张图片
如果给矩阵乘方只能用.^
A=[ 1 2;3 4];
A.^2
MATLAB基础知识(二)_第11张图片如果写的是A^2,它的作用和A
A是相同的,如上图

MATLAB中求特征值和特征向量

在Matlab中,计算矩阵A的特征值和特征向量的函数是eig(A)函数,有以下两种常用方法:
A=[1 2 3;4 5 6;7 8 9];
B=eig(A)
求矩阵A的全部特征值,构成向量B
MATLAB基础知识(二)_第12张图片
[V,D]=eig(A)
求矩阵A的全部特征值,构成对角阵D,并求A的特征向量构成V的列向量。(V的每一列都是D中与之相同列的特征值的特征向量)
MATLAB基础知识(二)_第13张图片
3.find函数:
用来返回向量或者矩阵中不为0的元素的位置索引。
X = [1 0 4 -3 0 0 0 8 6];
b = find(X)
MATLAB基础知识(二)_第14张图片
如果想返回前几个向量,后面的常数就写成几,例如返回前2个不为0的元素的位置
MATLAB基础知识(二)_第15张图片

但是上面针对的是一维向量,若X是一个二维(有行和列)矩阵,该怎样返回呢?

MATLAB在存储矩阵时是一列一列存储的
X(5)和X(9)将返回什么呢?
MATLAB基础知识(二)_第16张图片
如果你需要输出的是按照行和列该怎样做呢?
X = [1 0 4 -3 0 0 0 8 6];
[r,c] = find(X)
MATLAB基础知识(二)_第17张图片
[r,c] = find(X,1)
只找第一个非0元素
MATLAB基础知识(二)_第18张图片

矩阵和常数的比较大小方法

MATLAB基础知识(二)_第19张图片

在C语言中我们学到判断语句用if,那么在MATLAB里同样也用到的是if进行判断

注意:if结尾的语句不用分号,语句的最后一定要以end结尾!!!里面的语句一定一定要记住缩进这个问题
MATLAB基础知识(二)_第20张图片
到这里MATLAB中常用的函数整理完毕,打好基础才能更好的发挥,本人也是刚开始学习MATLAB,如果文档中有错误,请告诉我奥。

你可能感兴趣的:(MATLAB基础知识(二))