MATLAB 运算符

在这里插入图片描述

MATLAB 运算符

运算符是一个符号,告诉编译器执行特定的数学或逻辑操作。MATLAB设计为主要在整个矩阵和数组上运行。因此,MATLAB中的运算符既可以处理标量数据,也可以处理非标量数据。MATLAB允许以下类型的基本运算-

算术运算符

关系运算符

逻辑运算符

按位运算符

集合运算符

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

矩阵算术运算

数组算术运算

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

矩阵运算符和数组运算符之间用句点(。)符号进行区分。但是,由于矩阵和数组的加法和减法运算相同,因此两种情况下的运算符均相同。下表简要介绍了运算符-

算术运算符示例

序号 运算符和说明
1
+

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

2

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

3
*

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

Matrix Multiplication

对于非标量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是标量,那么Xp是p的幂。如果p是整数,则通过重复平方计算幂。如果整数是负数,则X先倒数。对于p的其他值,计算涉及特征值和特征向量,因此如果[V,D]=eig(X),那么Xp=V*D.^p/V。

10
.^

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

11

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

12
.’

数组转置 a’是 a 的数组转置。对于复杂的矩阵,这不涉及共轭。

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

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

关系运算示例

序号 运算符和说明
1
<

小于

2
<=

小于或等于

3

大于

4

=

大于或等于

5

等于

6
~=

不等于

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

元素级-这些运算符对逻辑数组的相应元素进行操作。

短路-这些运算符对标量和逻辑表达式进行运算。

逐个元素的逻辑运算符在逻辑数组上逐个元素地进行操作。符号&,|和〜是逻辑数组运算符AND,OR和NOT。

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

逻辑运算示例

按位运算
按位运算符对位进行运算并执行逐位运算。&,|和^的真值表如下-

p q p&q p | q 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)
整数 a 和 b 的位与

bitcmp(a)
a的逐位补码

bitget(a,pos)
在整数数组a的指定位置获取位

bitor(a, b)
整数a和b的位或

bitset(a, pos)
将bit设置为a的特定位置pos

bitshift(a, k) 返回一个由向左移动ķ比特,相当于乘以2 ķ。k的负值对应于右移位或除以2 | k | 并朝负无穷大四舍五入到最接近的整数。任何溢出位都将被截断。
bitxor(a, b)
整数 a 和 b 的位异或

swapbytes
整数 a 和 b 的位异或

集合运算符
MATLAB提供了用于集合操作的各种功能,例如联合,交集和集合成员资格的测试等。

下表显示了一些常用的设置操作-

集合运算示例

序号 功能说明
1
intersect(A,B)

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

2
intersect(A,B,‘rows’)

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

3
ismember(A,B)

返回一个与A大小相同的数组,其中包含1(true),其中A的元素位于B中。在其他位置,它返回0(false)。

4
ismember(A,B,‘rows’)

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

5
issorted(A)

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

6
issorted(A, ‘rows’)

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

7
setdiff(A,B)

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

8
setdiff(A,B,‘rows’)

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

“rows”选项不支持单元格数组。

9
setxor

两个数组的异或

10
union

两个数组的并集

11
unique

数组中的唯一值

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/315414.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【linux】Linux第一个小程序-进度条

1. 预备知识&#xff1a;回车和换行 回车&#xff08;Carriage Return&#xff0c;CR&#xff09;&#xff1a; 在早期的机械打字机中&#xff0c;回车指的是将打字机的打印头移回到行首的操作&#xff0c;这样打印头就可以开始新的一行的打印。在ASCII编码中&#xff0c;回车用…

数据库介绍(Mysql安装)

前言 工程师再在存储数据用文件就可以了&#xff0c;为什么还要弄个数据库? 一、什么是数据库&#xff1f; 文件保存数据有以下几个缺点&#xff1a; 文件的安全性问题文件不利于数据查询和管理文件不利于存储海量数据文件在程序中控制不方便 数据库存储介质&#xff1a; 磁…

编译支持播放H265的cef控件

接着在上次编译的基础上增加h265支持编译支持视频播放的cef控件&#xff08;h264&#xff09; 测试页面&#xff0c;直接使用cef_enhancement,里边带着的那个html即可&#xff0c;h265视频去这个网站下载elecard,我修改的这个版本参考了里边的修改方式&#xff0c;不过我的这个…

Blender面操作

1.细分Subdivide -选择一个面 -右键&#xff0c;细分 -微调&#xff0c;设置切割次数 2.删除 -选择一个或多个面&#xff0c;按X键 -选择要删除的是面&#xff0c;线还是点 3.挤出面Extrude -选择一个面 -Extrude工具 -拖拽手柄&#xff0c;向外挤出 -微调&#xff…

Opencv | 边缘提取

目录 一. 边缘检测1. 边缘的定义2. Sobel算子 边缘提取3. Scharr算子 边缘提取4. Laplacian算子 边缘提取5. Canny 边缘检测算法5.1 计算梯度的强度及方向5.2 非极大值抑制5.3 双阈值检测5.4 抑制孤立弱边缘 二. 轮廓信息1. 获取轮廓信息2. 画轮廓 一. 边缘检测 1. 边缘的定义…

自动化爬虫工具:you-get安装与使用

Windows下的安装命令&#xff1a; pip install you-get linux下的安装命令&#xff1a; pip3 install you-get 下载完成后&#xff0c;我们可以看到如下的警告&#xff0c;意思就是这个工具并未被添加到环境变量中&#xff0c;如果我们想在命令行中直接调用&#xff0c;需要…

sql今天学习总结

排序order by&#xff08;默认升序&#xff09; order by id desc(降序排序&#xff09; order by id,number&#xff08;先按id排再按name排序&#xff09; in,not in and or 通配符 where name like "Aa%";选取所有以Aa开头的名字 like "%r" 以r结…

Matlab 使用subplot绘制多个子图,一元拟合

实现效果&#xff1a; clc; clear;filename sri.xlsx; % 确认文件路径data readtable(filename); datavalue data{:,2:end}; datavalue datavalue;fig figure(Position, [0, 0, 1500, 900]); indexString ["(a)","(b)","(c)","(d)&qu…

python自动生成SQL语句自动化

&#x1f47d;发现宝藏 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 Python自动生成SQL语句自动化 在数据处理和管理中&#xff0c;SQL&#xff08;Structured …

opencv图片绘制图形-------c++

绘制图形 #include <opencv2/opencv.hpp> #include <opencv2/core.hpp> #include <filesystem>bool opencvTool::drawPolygon(std::string image_p, std::vector<cv::Point> points) {cv::Mat ima cv::imread(image_p.c_str()); // 读取图像&#xf…

国外企业使用生成式人工智能实例100

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

将游戏界面与注册/登录界面连接到一起

一、 导包 在注册页面中导入一个import subprocess包 二、 使用代码将其连接到一起 在循环中加入下面这一行代码&#xff0c;用来实现效果 subprocess.run(["python", "game代码.py"]

Linux中的vi与vim:编辑器的王者之争与深度探索

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《Linux &#xff1a;从菜鸟到飞鸟的逆袭》&#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、前言 1、Linux的起源与发展 2、vi与vim的历史与发展 …

符合医药行业规范的液氮罐运输和存储温度监测解决方案

API原料药、冻干物质和人体样本必须在玻璃相中以尽可能低的温度运输和存储。专门的低温容器——干式液氮罐——可通过液氮&#xff08;LN2&#xff09;将温度保持在-196 C。由于温度极低&#xff0c;低温容器的温度数据监测不仅具有挑战性&#xff0c;而且还需要更复杂的过程&a…

【论文阅读】ViTAE:Vision transformer advanced by exploring intrinsic inductive bias

ViTAE:Vision transformer advanced by exploring intrinsic inductive bias 论文地址摘要&#xff1a;简介&#xff1a;3 方法论3.1 重温视觉变压器3.2 ViTAE3.3 缩减单元3.4 Normal cell3.5 模型细节 4 训练4.1 Implementation details4.2 Comparison with the state-of-the-…

云原生Service Mesh服务网格简单介绍

serviceMesh是什么 Service Mesh是一个用于处理服务间通信的基础设施层&#xff0c;旨在实现云原生应用复杂服务拓扑中的可靠请求传递。其基本构成是一组与应用一起部署的轻量级网络代理&#xff0c;这些代理对应用来说是透明的。Service Mesh通过统一的方式来控制和处理服务间…

EasyCVR视频汇聚平台无法自动播放视频的原因排查与解决

国标GB28181协议EasyCVR安防视频监控平台可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等丰富的视频能力&#xff0c;平台支持7*24小时实时高清视频监控&#xff0c;能同时播放多路监控视频流…

Canopen的cia402协议下通过SDO报文控制步进电机

Canopen的cia402协议控制步进电机 硬件搭建软件使用发送写SDO报文格式如下对于0x27、0x22、0x23、0x27、0x2B、0x2F解释简单的驱动器相关参数通常速度模式控制步骤如下 发送数据和驱动器返回数据如下图发送读SDO报文格式如下 硬件搭建 在某宝上随便买个支持CANopen协议的驱动&…

Redis入门到通关之数据结构解析-SkipList

文章目录 ☃️概述☃️总结 欢迎来到 请回答1024 的博客 &#x1f353;&#x1f353;&#x1f353;欢迎来到 请回答1024的博客 关于博主&#xff1a; 我是 请回答1024&#xff0c;一个追求数学与计算的边界、时间与空间的平衡&#xff0c;0与1的延伸的后端开发者。 博客特色&…

网站被SmartScreen标记为不安全怎么办?

在互联网时代&#xff0c;网站的安全性和可信度是用户选择是否继续访问的重要因素之一&#xff0c;然而&#xff0c;网站运营者偶尔会发现使用Edge浏览器访问网站时&#xff0c;会出现Microsoft Defender SmartScreen&#xff08;以下简称SmartScreen&#xff09;提示网站不安全…