马铃薯®有两种不同类型的算术运算:阵列操作和矩阵操作。您可以使用这些算术运算来执行数值计算,例如,添加两个数字,将数组的元素提高到给定功率,或乘以两个矩阵。
矩阵操作遵循线性代数的规则。通过对比度,数组操作按元素操作执行元素并支持多维数组。金宝app时期的角色(。
)将数组操作与矩阵操作区分开来。但是,由于矩阵和阵列操作与添加和减法相同,因此字符对。+
和.-
是不必要的。
数组操作按元素操作执行元素,对应的矢量,矩阵和多维数组的相应元素。如果操作数具有相同的大小,则第一个操作数中的每个元素都会在第二个操作数中使用同一位置中的元素匹配。如果操作数具有兼容的大小,则根据需要隐式扩展每个输入以匹配另一个。有关更多信息,请参阅兼容数组大小,用于基本操作。
作为一个简单的示例,您可以添加两个具有相同大小的向量。
a = [1 1 1]
a = 1 1 1
B = [1 2 3]
b = 1 2 3
A + B.
ans = 2 3 4
如果一个操作数是标量,另一个操作数不是,则Matlab隐式扩展标量与其他操作数相同。例如,您可以计算标量和矩阵的元素-Wise产品。
a = [1 2 3;1 2 3]
A = 1 2 3 1 2 3
3. * A.
ans = 3 6 9 3 6 9
如果您从3×3矩阵从3-3矩阵中减去一个1-3向量,因此隐式扩展也有效,因为这两种尺寸兼容。执行减法时,毫米地扩展向量以成为3×3矩阵。
a = [1 1 1;2 2 2;3 3 3]
A = 1 1 1 2 2 2 3 3 3
m = [2 4 6]
m = 2 4 6
是
ANS = -1 -3 -5 0 -2 -4 1 -1 -3
行向量和列向量具有兼容尺寸。如果将一个1-3向量添加到2×1向量,则在Matlab执行元素的添加之前,每个向量隐式扩展到2×3矩阵。
x = [1 2 3]
x = 1 2 3
Y = [10;15]
y = 10 15
x + y
ans = 11 12 13 16 17 18
如果两个操作数的大小不兼容,那么您会收到错误。
a = [8 1 6;3 5 7;4 9 2]
A = 8 1 6 3 5 7 4 9 2
m = [2 4]
m = 2 4
是
矩阵维度必须同意。
下表提供了MATLAB中的算术阵列运算符摘要。对于特定于功能的信息,单击“上一列中”函数参考“页面的链接。
操作员 |
目的 |
描述 |
参考 |
---|---|---|---|
|
添加 |
|
加 |
|
偶然加 |
|
uplus. |
|
减法 |
|
减 |
|
一元减去 |
|
uminus. |
|
元素明智乘法 |
|
时代 |
|
元素明智的力量 |
|
力量 |
./ |
正确的阵列部门 |
|
Rdivide. |
|
左阵列部门 |
|
LDIVIDE. |
|
阵列翻转 |
|
翻倒 |
矩阵操作遵循线性代数规则,不兼容多维数组。相对于彼此相关的输入的所需大小和形状取决于操作。对于非卡尔输入,矩阵运算符通常计算比其阵列操作员对应物不同的答案。
例如,如果您使用矩阵右部运算符,/
,除以两个矩阵,矩阵必须具有相同数量的列。但如果您使用矩阵乘法运算符,*
,乘以两个矩阵,那么矩阵必须具有常见的内部维度。也就是说,第一输入中的列数必须等于第二输入中的行数。矩阵乘法操作员使用公式计算两个矩阵的乘积,
要查看此功能,您可以计算两个矩阵的乘积。
a = [1 3; 2 4]
a = 1 3 2 4
B = [3 0; 1 5]
B = 3 0 1 5
A * B.
ans = 6 15 10 20
以前的矩阵产品不等于以下元素 - 方向产品。
A. * B.
ans = 3 0 2 20
下表提供了MATLAB中的矩阵算术运算符摘要。对于特定于功能的信息,单击“上一列中”函数参考“页面的链接。
操作员 |
目的 |
描述 |
参考 |
---|---|---|---|
|
矩阵乘法 |
|
m |
|
矩阵左部 |
|
莫德利维 |
|
矩阵右部 |
|
Mrdivide. |
|
矩阵功率 |
|
威尔 |
|
复杂的共轭翻转 |
|
ctranspose. |