亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> MATLAB
MATLAB - 运算符

运算符是一个符号,它告诉编译器执行特定的数学或逻辑操作。 MATLAB 旨在主要对整个矩阵和数组进行操作。因此,MATLAB 中的运算符可用于标量和非标量数据。 MATLAB 允许以下类型的基本操作 -

算术运算符

MATLAB 允许两种不同类型的算术运算 -

矩阵算术运算与线性代数中定义的相同。数组操作是逐个元素执行的,一维数组和多维数组都可以。

矩阵运算符和数组运算符由句点 (.) 符号区分。但是,由于矩阵和数组的加法和减法运算相同,因此两种情况下的运算符都相同。下表给出了运算符的简要说明 -

展示例子

Sr.No. 运算符和描述
1

+

加法或一元加法。 A+B 将存储在变量 A 和 B 中的值相加。A 和 B 必须具有相同的大小,除非它们是标量。可以将标量添加到任意大小的矩阵中。

2

-

减法或一元减法。 A-B 从 A 中减去 B 的值。A 和 B 必须具有相同的大小,除非一个是标量。可以从任意大小的矩阵中减去一个标量。

3

*

矩阵乘法。 C =A*B 是矩阵 A 和 B 的线性代数积。更准确地说,

对于非标量 A 和 B,A 的列数必须等于 B 的行数。标量可以乘以任意大小的矩阵。

4

.*

数组乘法。 A.*B 是数组 A 和 B 的逐元素乘积。A 和 B 必须具有相同的大小,除非其中一个是标量。

5

/

斜线或矩阵右除法。 B/A 与 B*inv(A) 大致相同。更准确地说,B/A =(A'\B')'。

6

./

数组右除法。 A./B 是具有元素 A(i,j)/B(i,j) 的矩阵。 A 和 B 必须具有相同的大小,除非其中一个是标量。

7

\

反斜杠或矩阵左除法。如果 A 是方阵,则 A\B 与 inv(A)*B 大致相同,只是它的计算方式不同。如果 A 是一个 n×n 矩阵,B 是一个有 n 个分量的列向量,或者一个有多个这样的列的矩阵,那么 X =A\B 是方程 AX =B 的解 .如果 A 缩放不当或几乎是奇异的,则会显示警告消息。

8

.\

数组左除法。 A.\B 是元素为 B(i,j)/A(i,j) 的矩阵。 A 和 B 必须具有相同的大小,除非其中一个是标量。

9

^

矩阵功率。如果 p 是标量,则 X^p 是 X 的 p 次幂。如果 p 是整数,则通过重复平方计算幂。如果整数为负,则先反转 X。对于 p 的其他值,计算涉及特征值和特征向量,例如如果 [V,D] =eig(X),则 X^p =V*D.^p/V。

10

.^

阵列功率。 A.^B 是元素 A(i,j) 的 B(i,j) 次幂的矩阵。 A 和 B 必须具有相同的大小,除非其中一个是标量。

11

'

矩阵转置。 A'是A的线性代数转置。对于复矩阵,这是复共轭转置。

12

.'

数组转置。一个。'是A的数组转置。对于复杂矩阵,这不涉及共轭。

关系运算符

关系运算符还可以处理标量和非标量数据。数组的关系运算符在两个数组之间执行逐个元素的比较并返回相同大小的逻辑数组,其中元素设置为逻辑 1(真),其中关系为真,元素设置为逻辑 0(假)不是。

下表显示了 MATLAB 中可用的关系运算符 -

展示例子

Sr.No. 运算符和描述
1

<

小于

2

<=

小于等于

3

>

大于

4

>=

大于等于

5

==

等于

6

~=

不等于

逻辑运算符

MATLAB 提供两种类型的逻辑运算符和函数 -

逐元素逻辑运算符在逻辑数组上逐个元素地操作。符号 &、| 和 ~ 是逻辑数组运算符 AND、OR 和 NOT。

短路逻辑运算符允许对逻辑运算进行短路。符号 &&和 ||是逻辑短路运算符 AND 和 OR。

展示例子

按位运算

按位运算符处理位并执行逐位操作。 &、| 和 ^ 的真值表如下 -

p q p &q p | p ^ q
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1

假设如果 A =60; B =13;现在以二进制格式,它们将如下 -

A =0011 1100

B =0000 1101

-----------------

A&B =0000 1100

A|B =0011 1101

A^B =0011 0001

~A =1100 0011

MATLAB 提供了各种按位运算的函数,如“按位与”、“按位或”和“按位非”运算、移位运算等。

下表显示了常用的按位运算 -

展示例子

功能 目的
bitand(a, b) 整数的按位与 ab
bitcmp(a) a 的按位补码
bitget(a,pos) 在指定位置获取位 pos , 在整数数组 a
bitor(a, b) 整数的按位或ab
bitset(a, pos) 在特定位置设置位 pos a
bitshift(a, k) 返回a 向左移动 k 位,相当于乘以 2 k . k 的负值对应于右移位或除以 2 |k| 并四舍五入到最接近的整数向负无穷大。任何溢出位都被截断。
bitxor(a, b) 整数的按位异或 ab
交换字节 交换字节顺序

设置操作

MATLAB 为集合运算提供了多种函数,如并集、交集和集合成员资格测试等。

下表显示了一些常用的集合操作 -

展示例子

Sr.No. 功能和说明
1

相交(A,B)

设置两个数组的交集;返回 A 和 B 共有的值。返回的值按顺序排列。

2

相交(A,B,'行')

将 A 的每一行和 B 的每一行视为单个实体,并返回 A 和 B 共有的行。返回矩阵的行按顺序排列。

3

ismember(A,B)

返回一个与 A 大小相同的数组,其中包含 1(真),其中 A 的元素在 B 中找到。在其他地方,它返回 0(假)。

4

ismember(A,B,'rows')

将 A 的每一行和 B 的每一行视为单个实体,并返回一个包含 1(真)的向量,其中矩阵 A 的行也是 B 的行。在其他地方,它返回 0(假)。

5

已分类(A)

如果 A 的元素按排序顺序返回逻辑 1 (true),否则返回逻辑 0 (false)。输入 A 可以是向量或 N×1 或 1×N 字符串元胞数组。 如果 A 被认为是已排序的 和 sort(A) 的输出相等。

6

已排序(A,'行')

如果二维矩阵 A 的行按排序顺序返回逻辑 1(真),否则返回逻辑 0(假)。 如果矩阵 A 被排序,则认为矩阵 A 和 sortrows(A) 的输出相等。

7

setdiff(A,B)

设置两个数组的差值;返回 A 中不存在 B 中的值。返回数组中的值按顺序排列。

8

setdiff(A,B,'rows')

将 A 的每一行和 B 的每一行视为单个实体,并返回 A 中不在 B 中的行。返回矩阵的行按顺序排列。

'rows' 选项不支持元胞数组。

9

setxor

设置两个数组的异或

10

联合

设置两个数组的并集

11

独特

数组中的唯一值


MATLAB

  1. MATLAB - 图形
  2. MATLAB - 集成
  3. MATLAB - M-Files
  4. MATLAB - 运算符
  5. MATLAB - 绘图
  6. MATLAB - 微积分