基础内容
导言
当你看到三的时候其实不需要去看一和二因为那两篇不是很好,接下来的和之前的是一样的内容以及更新的,小编最近也在学习matlab,这里我就把我的学习内容展现给大家,我觉着即使没接触过的你也能够通过我的接下来几遍博客了解到并且掌握基本的操作,但是秀不起来,毕竟秀起来不是那么简单的几篇博客就能描绘出来的
好了言归正传向量来了
先介绍预定义变量
名称 | 作用 |
---|---|
ans | matlab定义的正的极小值的2.2204e-16 |
pi | Π |
inf | 无穷大 |
NaN | 无法定义 |
i或j | 虚数单位 |
总之:变量名不能以数开头,不能有空格不能有#之类的
关于向量
再介绍一下我们matlab中几个常用的名吧
max(X) | %输出向量X的最大值 |
[Y,I]=max(X) | %输出向量X中的最大值Y及其Y的序号I |
min(W) | %输出向量W中的最小值 |
[Z,J]=min(W) | %输出向量X中的最大值Z及其Z的序号J |
我giao啥玩意啊一群汉字,晚上的我肝不住了啊
那就举个例子吧
age=[49 38 6];
max(age)
ans =49
[Y,I]=max(age)
Y = 49
I = 1
那这样一看是不是舒服多了呢
冒泡表达式法
命名格式:x_start:x_end
x_start %起始值
x_end %结束值
注:matlab默认增量为"1";
哟呵,有点高级啊,啥呀这是,就是for(i=x_start;i<x_end;i++)
举个例子吧 变得别那么生硬
x=1:4
x=1 2 3 4
更高级的来了
命令格式: x_start:x:x_end
x代表增量
例子:
[1:2:9]
y=1 3 5 7 9
上面哪个有点low啊,只能变化增量,但是我想分成n个区间怎么办呢,那就看下面这一个吧
超级高级
linspace (int_start,int_end,n)
int_start %等分区间的起始值
int_end %等分区间的结束值
n %登分个数
例子:
linspace(0,1,6)
z=
0.2000 0.4000 0.6000 0.8000 1.0000
获取向量的长度
向量计算中,必须注意向量长度的一致
命令格式:length(x)
例子:
x=[2 5 6 8 9 12 1 7 ];
length(x)
ans=8
向量的乘/除法
A=[1,2,3];
B=[4,5,6];
prod=A.*B;
prod= 4 10 18
向量的除法quot=A./B
哎,细心的人发现了,怎么多了个.
这是为什么呢??
因为在这matlab中我们不加.
的话就是矩阵的法则了哦
那就讲讲矩阵
矩阵的命名格式:
A=[1 2 3;4 6;7 8 9]
啥?;
之前代表前行,之后代表后行
至于列我们用空格或者,
都可以,怎么方便怎么来
来点好玩的 全1或全0
ones()
ones() %全1矩阵
ones(n) %nn的全1矩阵
ones(m,n) %mn的全一矩阵
那全0呢?在这里把ones()换成zeros()就中了,舒服的很
提取/编辑矩阵中的各个元素
命名格式:矩阵名(i,j)
提取/编辑矩阵中的整行(列)元素
命名格式:矩阵名(i,:)%第i行全部元素
矩阵名(:,j)%第j列全部元素
这个就比较好懂了,学过线性代数的都会,你要是没学过,那就跳过吧,咱也说不清
矩阵的乘法
A*B
就是矩阵的乘法运算
矩阵的转置与旋转与翻转
转置:运算符是单引号'
就是A'
旋转:rot90(A,K)将矩阵A旋转90的k倍,当k为1时可以省略
翻转:fliplr(A)
%左右翻转
flipud(A)
%上下翻转
逆矩阵
pinv(A)
%矩阵A的逆矩阵
方阵的行列式
det(A)
;
矩阵的秩
rank(A)
;
当我学习上面这几个时候我感觉真幸福,因为i此时此刻我正好在学矩阵这一点,有点开心,你懂的
矩阵的迹=矩阵的对角线元素之和或者特征值之和
这个标题有点长啊,因为咱也不知道啥叫矩阵的迹啊
frace(A)
;
矩阵的特征值与特征向量
特征值:eig(A)
;
特征向量:[V,D]=eig(A)
D:矩阵A的全部特征值构成对角阵
V:A的特征向量构成的列向量
如果你还没学线性代数的话,那就跳过就行了,等着学完了再来,你会开心的多