Matlab速成(一)

前置基础:

Matlab也属于一种编程语言,主要用于数学工程学的计算。

Matlab是根据矩阵的方式进行所有计算的

要求学生有线性代数以及编程基础才可以进行学习

生成矩阵:

直接生成:

要求:

用逗号分隔元素
用分号分割行
中括号括起来整个矩阵

举例:

a=[1,2,3;4,5,6;7,8,9]

执行结果:
在这里插入图片描述

冒号一维矩阵:

要求:

用冒号分割各个参数
第一个元素是开始元素
最后一个元素是结束元素
中间元素为步长(当步长为 1 可以省略)

举例:

b=1:1:10
b=1:10
//两者等价

执行结果:
在这里插入图片描述

函数生成:

要求:

不同的函数对应不同的参数
不同函数的不同参数均有不同意义

举例:

c=linspace(0,10,5)//(开始,结束,元素个数);等差生成一维矩阵,省略个数则生成100个;
e=eye(4)//(维数);生成对应维数的单位矩阵
z=zeros(1,4)//(行数,列数);生成参数大小的矩阵,矩阵元素全为0
o=ones(4,1)//(行数,列数);生成参数大小的矩阵,矩阵元素全为1
r=rand(4)//(维数);生成对应维数的矩阵,矩阵元素均为 0~1 的随机数
rn=randn(4)//(维数);生成对应维数的矩阵,矩阵元素为以 0 为均值的正态分布

执行结果:
在这里插入图片描述
在这里插入图片描述

矩阵运算:

求矩阵部分对角阵:

要求:

生成主对角线上第 k 条线对应的三角阵

举例:

diag_a=diag(a,1)//生成第 k 条线上的所有元素
tril_a=tril(a,1)//把第 k 条线以上的元素全部清 0

执行结果:
在这里插入图片描述

加减乘乘方

要求:

就相当于矩阵运算,符号用正常符号表示

举例:

a+a
a-a
a*a

执行结果:
在这里插入图片描述

点运算

要求:

将矩阵中的对应点进行算术运算

举例:

a.*a
a./a
a.\a
a.^a

执行结果:
在这里插入图片描述
在这里插入图片描述

逆矩阵,特征值特征向量

要求:

当所求矩阵为矩阵时,结果为广义矩阵
当所求矩阵为方阵时,结果为方阵
[v,D] 其中 v 为特征向量,D为特征值对角阵

举例:

pinv(a) //求逆矩阵
[v,D]=eig(a)//求特征

运行结果:
在这里插入图片描述

行列式 秩 伴随

要求:

求行列式 ,求秩 ,求伴随矩阵;

举例:

det(a)//求行列式
rank(b)//求秩
compan(b)//求伴随矩阵

运行结果:
在这里插入图片描述

矩阵的修改:

部分替换:

要求:

可以替换单个元素
可以替换整行元素
可以替换整列元素

举例:

chg_a=a
chg_a(2,3)=4
chg_a(1,:)=[2,2,2]
chg_a(:,1)=[]

运行结果:
在这里插入图片描述
在这里插入图片描述

转置:

要求:

对矩阵进行转置

举例:

T_a=a'

运行结果:
在这里插入图片描述

指定维数拼接:

要求:

可以进行水平拼接与垂直拼接
一定要保证行列可以对齐

举例:

c1_a=cat(1,a,a)
c2_a=cat(2,a,a)

运行结果:
在这里插入图片描述

变维:

要求:

变维前与变维后元素个数相同

举例:

re_a=reshape(a,1,9)

运行结果:
在这里插入图片描述

矩阵的信息获取:

矩阵的行列数:

要求:

是矩阵就行,没有明确要求

举例:

[row_a,col_a]=size(a)
[row_b,col_b]=size(b)

运行结果:
在这里插入图片描述

行列中最大的:

要求:

求出某矩阵的行列的最大值
Max(row_a,col_a)

举例:

len_a=length(a)
len_b=length(b)

运行结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43652327/article/details/105900902
今日推荐