<>矩阵元素的引用

矩阵元素的引用方式:①A是一个矩阵,A(3,2)表示第三行第二列的元素。

②矩阵元素按照列来存储,先存储第一列元素,在存储第二列元素,直到最后。第一列第一个元素为1号元素,第一列第二个元素为2号元素,以此类推。A(3)

转换函数:①sub2ind(S,i,j)将矩阵中指定元素的行、列转换成存储的序号。S:
组成矩阵的行数和列数的矩阵向量size(A)或[3,3](表示3行3列矩阵);i:行向量;j:列向量。i和j可以是矩阵。

②ind2sub(S,D):D:序号。返回值是矩阵,表示行下表和列下标。

A(i,:)表示第i行全部元素

A(:,j):表示第j列全部元素

A(i:i+m,k:k+m)表示第i~i+m行内且在k~k+m列中的元素

A(i:i+m)表示第i~i+m行的全部元素

end运算符表示某一维的末尾元素下标。

改变矩阵的形状:reshape(A,m,n):A要改变形状的矩阵;m改变后的行数;n改变后的列数。
注意:reshape()函数只改变行数和列数,不改变存储顺序。

A(:)表示将每列元素堆叠起来,组成列向量。相当于reshape(A,6,1)。

<>MATLAB基本运算

<>基本算术运算

加、减、乘、除

注意:MATLAB算术运算是在矩阵意义下进行的。单个数据的算术运算只是矩阵运算的一种特例。

加减操作时要求矩阵的维数相同。乘法运算要求A的列数与B的行数相等。运算规则参考《线性代数》这门课。

除法运算:

这里重点说一下除法运算。除法运算包含左除、右除。左除、右除就相当于除数矩阵和被除数矩阵。

假如A是非奇异方阵**(非奇异矩阵,即行列式不为0的矩阵,矩阵满秩,矩阵可逆,向量组线性无关。非奇异矩阵可以对线性空间做一个同等维度的线性变换,这个过程是可逆的,即可以由变换后的线性空间恢复原空间。)**,B/A相当于
B*inv(A)、A\B相当于inv(A)*B。

inv(A)是求逆矩阵。

对于含有标量的运算,两种结果相同。

比如:
>> 3/4 ans = 0.7500 >> 4\3 ans = 0.7500
其中一个是矩阵时也一样。

乘方运算:

A*a:A是矩阵,a是标量。

点运算(.*、./、.\和.^):

点乘、点右除、点左除、点乘方。

两个矩阵进行点运算要求两个矩阵的对应元素进行相关运算。要求两矩阵同型。下面给出例子:
>> x = 0.1:0.3:1 x = 0.1000 0.4000 0.7000 1.0000 >> y = sin(x)*cos(x) 错误使用 *
用于矩阵乘法的维度不正确。请检查并确保第一个矩阵中的列数与第二个矩阵中的行数匹配。要执行按元素相乘,请使用 '.*'。 >> y =
sin(x).*cos(x) y = 0.0993 0.3587 0.4927 0.4546
关系运算(小于、大于等):
>> A = [24,35,13;22,63,23;39,47,80] A = 24 35 13 22 63 23 39 47 80 >> p =
rem(A,2) p = 0 1 1 0 1 1 1 1 0 >> p == 2 ans = 3×3 logical 数组 0 0 0 0 0 0 0 0 0
>> p == 0 ans = 3×3 logical 数组 1 0 0 1 0 0 0 0 1
rem(x,y):求整除x/y的余数

逻辑运算符(与、或、非)

算术运算符、关系运算符、逻辑运算符中,算术运算符的优先级最高、逻辑运算符优先级最低。逻辑非运算是单运算符,优先级比双目运算符高。

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信