📅  最后修改于: 2021-01-07 02:22:51             🧑  作者: Mango
我们可以在MATLAB中以多种方式创建数组:
它的工作原理与以前相同,但是为了更好的语法请避免使用它。
MATLAB支持数组之间的两类操作,称为数组操作和矩阵操作。
数组操作是在逐个元素的基础上在数组之间实现的操作。也就是说,该操作是在两个数组中的相应元素上实现的。
例如,
注意:两个数组中的行数和列数必须相同。否则,MATLAB将生成错误消息。
下表总结了MATLAB中两个标量之间的算术运算。
Operation | Algebraic Form | MATLAB Form |
---|---|---|
Addition | a + b | a + b |
Subtraction | a – b | a – b |
Multiplication | a x b | a * b |
Division | a / b | |
Exponentiation | a ^ b |
数组操作也可能出现在数组和标量之间。如果在数组和标量之间执行该操作,则标量的值将应用于数组的每个元素。
例如,
矩阵运算遵循线性代数的标准规则,例如矩阵乘法。在线性代数中,乘积c = axb由等式定义。
例如,
注意:矩阵a中的列数必须等于矩阵b中的行数。
MATLAB使用特殊符号对矩阵运算中的数组运算进行分类。在数组运算和矩阵运算具有不同定义的方法中,MATLAB在符号前使用句点表示数组运算(例如,。*)。
表中列出了标准数组和矩阵运算的列表。
Operation | MATLAB Form | Comments |
---|---|---|
Array Addition/td> | a+b/td> | Array addition and matrix addition are identical. |
Array Subtraction/td> | a-b/td> | Array subtraction and matrix subtraction are identical. |
Array Multiplication/td> | a .* b/td> | Element-by-Element multiplication of a and b. Both array must be the same shape, and one of them must be a scalar. |
Matrix Multiplication/td> | a*b/td> | Matrix multiplication of a and b. The number of column in a must equal the number of rows in b. |
Array Right Division/td> | a ./ b/td> | Element-by-element division of a and b: a (i, j) / b (i, j). Both arrays must be the same shape, and one of them must be a scalar. |
Array Left Division/td> | a .\ b/td> | Element-by-element division of a and b, but with b in the numerator: b(i,j) / a(i,j). Both arrays must be the same shape, and one of them must be a scalar. |
Matrix Right Division/td> | a/b/td> | Matrix division defined by a * inv (b), where inv(b) is the inverse of matrix b. |
Matrix Left Division/td> | a\b/td> | Matrix division defined by inv(a) * b, where inv(a) is the inverse of matrix a. |
Array Exponentiation | a .^ b/td> | Element-by-Element exponentiation of a and b: a (i, j) ^ b (i, j). Both arrays must be the same shape, and one of them must be a scalar. |
MATLAB内部将所有数字存储为浮点值,最多15个小数点。但是通常最多显示4个小数点。让我们看一个例子。
当我们连接或连接字符串,在MATLAB中,我们也可以连接数组。数组声明中使用的一对方括号[]本身是一个串联运算符。
我们可以通过两种方式连接数组:
在MATLAB中,每个变量都是一个数组。并且数组中的所有元素都按行和列进行索引。可以使用MATLAB中的索引访问任何特定元素。 MATLAB中数组的索引与Math 相同。它具有访问元素的不同语法。
在MATLAB中有几种索引元素的方法。
通过使用冒号运算符,我们可以创建等距的值向量。我们可以以固定间隔分配可能影响下一个值的步长值。