37、matlab矩阵运算

1、前言

矩阵运算是指对矩阵的各种操作和运算,包括矩阵加法、矩阵减法、矩阵乘法、矩阵转置、求逆矩阵等。以下是常见的矩阵运算:

  1. 矩阵加法:对应位置的元素相加,要求加数和被加数的维度相同。

    A + B = | a11 b11 | + | a12 b12 | | a21 b21 | | a22 b22 |

  2. 矩阵减法:对应位置的元素相减,要求减数和被减数的维度相同。

    A - B = | a11 b11 | - | a12 b12 | | a21 b21 | | a22 b22 |

  3. 矩阵乘法:按照行乘列的方式计算,要求左矩阵的列数等于右矩阵的行数。

    AB = A的行 * B的列

  4. 矩阵转置:将矩阵的行与列进行交换,即将A的第i行第j列元素变为转置矩阵A^T的第j行第i列元素。

    对于矩阵A,A^T表示其转置矩阵。

  5. 矩阵求逆:对于方阵,如果其行列式不为0,则可以求其逆矩阵A^-1。

    如果A是一个可逆矩阵,那么AA^-1 = A^-1A = I,其中I是单位矩阵。

矩阵运算在线性代数、数值分析、工程计算等领域有广泛的应用。例如,在解线性方程组、特征值问题、最小二乘拟合、图像处理等方面都需要用到矩阵运算。熟练掌握矩阵运算的规则和性质对于理解和应用数学模型非常重要。

2、transpose, .' 转置向量或矩阵

语法

B = A.' 返回 A 的非共轭转置,即每个元素的行和列索引都会互换。
B = transpose(A) 是执行 A.' 的另一种方式,它可以为类启用运算符重载。

1)实矩阵转置

代码及运算

A = magic(5)
B = A.'A =17    24     1     8    1523     5     7    14    164     6    13    20    2210    12    19    21     311    18    25     2     9B =17    23     4    10    1124     5     6    12    181     7    13    19    258    14    20    21     215    16    22     3     9

 2)复矩阵转置

代码及运算

A = [1 3 4-1i 2+2i; 0+1i 1-1i 5 6-1i]
B = A.'A =1.0000 + 0.0000i   3.0000 + 0.0000i   4.0000 - 1.0000i   2.0000 + 2.0000i0.0000 + 1.0000i   1.0000 - 1.0000i   5.0000 + 0.0000i   6.0000 - 1.0000iB =1.0000 + 0.0000i   0.0000 + 1.0000i3.0000 + 0.0000i   1.0000 - 1.0000i4.0000 - 1.0000i   5.0000 + 0.0000i2.0000 + 2.0000i   6.0000 - 1.0000i

3、 ctranspose, ' 复共轭转置

语法

B = A' 计算 A 的复共轭转置。
B = ctranspose(A) 是执行 A' 的替代方法

1)实矩阵的共轭转置

代码及运算

A = [2 1; 9 7; 2 8; 3 5]
B = A'A =2     19     72     83     5B =2     9     2     31     7     8     5

2) 复矩阵的共轭转置

代码及运算

A = [0-1i 2+1i;4+2i 0-2i]
B = A'A =0.0000 - 1.0000i   2.0000 + 1.0000i4.0000 + 2.0000i   0.0000 - 2.0000iB =0.0000 + 1.0000i   4.0000 - 2.0000i2.0000 - 1.0000i   0.0000 + 2.0000i

4、 mtimes, * 矩阵乘法

语法

C = A*B 是 A 和 B 的矩阵乘积。
C = mtimes(A,B) 是执行 A*B 这一操作的替代方法

1)将两个向量相乘

代码及运算

A = [1 1 0 0];
B = [1; 2; 3; 4];
C1 = A*B
C2 = B*AC1 =3C2 =1     1     0     02     2     0     03     3     0     04     4     0     0

 2)将两个数组相乘

代码及运算

A = [1 3 5; 2 4 7];
B = [-5 8 11; 3 9 21; 4 0 8];
C = A*BC =24    35   11430    52   162

5、 mpower, ^  矩阵幂

语法

C = A^B 计算 A 的 B 次幂并将结果返回给 C。
C = mpower(A,B) 是执行 A^B 的替代方法,但很少使用。

1)方阵幂运算

代码及运算

A = [1 2; 3 4];
C = A^2C =7    1015    22

 2)矩阵指数

代码及运算

 B = [0 1; 1 0];
C = 2^BC =1.2500    0.75000.7500    1.2500

6、 sqrtm 矩阵平方根

语法

X = sqrtm(A) 返回矩阵 A 的主要平方根(即 X*X = A)。
[X,residual] = sqrtm(A) 还会返回残差 residual = norm(A-X^2,1)/norm(A,1)
[X,alpha,condx] = sqrtm(A) 以 1-范数形式返回稳定因子 alpha 和 X 的矩阵平方根条件数的估计值,即 condx。

1)差分算子的矩阵平方根

代码及运算

A = [5 -4 1 0 0; -4 6 -4 1 0; 1 -4 6 -4 1; 0 1 -4 6 -4; 0 0 1 -4 6]
X = sqrtm(A)A =5    -4     1     0     0-4     6    -4     1     01    -4     6    -4     10     1    -4     6    -40     0     1    -4     6X =2.0015   -0.9971    0.0042    0.0046    0.0032-0.9971    2.0062   -0.9904    0.0118    0.00940.0042   -0.9904    2.0171   -0.9746    0.02630.0046    0.0118   -0.9746    2.0503   -0.92000.0032    0.0094    0.0263   -0.9200    2.2700

 2)具有多个平方根的矩阵

代码及运算

 A = [7 10; 15 22];
Y1 = [1.5667 1.7408; 2.6112 4.1779];
A - Y1*Y1
Y2 = [1 2; 3 4];
A - Y2*Y2
Y = sqrtm(A)ans =1.0e-03 *-0.1258   -0.1997-0.2995   -0.4254ans =0     00     0Y =1.5667    1.74082.6112    4.1779

 7、expm 矩阵指数

语法

Y = expm(X) 计算 X 的矩阵指数。

1)指数运算

代码及运算

A = [1 1 0; 0 0 2; 0 0 -1];
expm(A)ans =2.7183    1.7183    1.08620    1.0000    1.26420         0    0.3679

8、 logm 矩阵对数

语法

L = logm(A) 是 A 的主矩阵对数,即 expm(A) 的倒数。

1)矩阵对数

代码及运算

 A = [1 1 0; 0 0 2; 0 0 -1];
P = logm(Y)P =-0.3504    0.92941.3940    1.0436

9、cross 叉积

语法

C = cross(A,B) 返回 A 和 B 的叉积。
C = cross(A,B,dim) 计算数组 A 和 B 沿维度 dim 的叉积。

1)向量的叉积

代码及运算

A = [4 -2 1];
B = [1 -1 3];
C = cross(A,B)C =-5   -11    -2

 2)矩阵的叉积

代码及运算

A = randi(15,3,5)
B = randi(25,3,5)
C = cross(A,B)A =13    15     6     3    1011     1    12     8    115     7    12     7    12B =7     5    24     6    1317     3     9    19    1817    13    15     7    23C =102    -8    72   -77    37-186  -160   198    21   -74144    40  -234     9    37

10、 dot 点积

语法

C = dot(A,B) 返回 A 和 B 的标量点积。
C = dot(A,B,dim) 计算 A 和 B 沿维度 dim 的点积。

1)实数向量的点积

代码及运算

A = [4 -1 2];
B = [2 -2 -1];
C = dot(A,B)C =8

 2)复数向量的点积

代码及运算

A = [1+i 1-i -1+i -1-i];
B = [3-4i 6-2i 1+2i 4+3i];
C = dot(A,B)
D = dot(A,A)C =1.0000 - 5.0000iD =8

 3)矩阵的点积

代码及运算

 A = [1 2 3;4 5 6;7 8 9];
B = [9 8 7;6 5 4;3 2 1];
C = dot(A,B)C =54    57    54

 4)多维数组的点积

代码及运算

A = cat(3,[1 1;1 1],[2 3;4 5],[6 7;8 9])
B= cat(3,[2 2;2 2],[10 11;12 13],[14 15; 16 17])
C = dot(A,B,3)A(:,:,1) =1     11     1A(:,:,2) =2     34     5A(:,:,3) =6     78     9B(:,:,1) =2     22     2B(:,:,2) =10    1112    13B(:,:,3) =14    1516    17C =106   140178   220

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

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

相关文章

PyQt5 强制退出进程

1.增加包,如下 import osimport signal 2.重写def closeEvent(self, event)函数,如下 def closeEvent(self, event):try:pidvalue os.getpid() # 获取当前进程的PIDos.kill(pidvalue, signal.SIGTERM) # 主动结束指定ID的程序运行except Exception …

C++中变量的使用细节和命名方案

C中变量的使用细节和命名方案 C提倡使用有一定含义的变量名。如果变量表示差旅费,应将其命名为cost_of_trip或 costOfTrip,而不要将其命名为x或cot。必须遵循几种简单的 C命名规则。 在名称中只能使用字母字符、数字和下划线()。 名称的第一个字符不能是数字。 区分…

【Python入门与进阶】Python模块的导入与使用

在Python中,模块是包含Python代码的文件,通常包含函数、类和变量的定义。要使用一个模块,你可以通过import语句导入它。以下是如何导入和使用模块的基本方法: 导入整个模块:你可以使用import关键字来导入整个模块&…

FRP 内网穿透 | 实现远程访问与安全管理

唠唠闲话 内网穿透简介 在互联网上,两个不同主机进行通信需要知道对方的 IP 地址。由于世界人口和设备众多,IPv4 资源相对紧缺,因此绝大部分情况下是通过路由器或交换机转换公网 IP 后才上网。 位于路由器或交换机后的设备通常是内网设备&…

C#操作MySQL从入门到精通(22)——创建表与操纵表

前言 我们新建数据库以后,最需要做的就是创建表,对数据库的操作绝大多数情况下都是都对表的操作,本文就是讲解如何创建表以及修改表中的列,修改表名等操作。由于创建表的方法基本上有两种,一种是使用带有界面的工具比如Navicate来创建表,另一种是使用sql语句来创建表,实…

SAP 价格金额信息控制

1)migo / mb51/mb51/mb59 关于价格和金额的显示,需要权限控制,当权限对象F_BKPF_BUK,检查对应【公司代码】 和 ACTVT有03’的权限,如果没有03的权限,对应行的价格和金额显示为空 关于价格和金额的显示,需要权限控制&a…

景联文科技:打造亿级高质量教育题库,赋能教育大语言模型新未来

随着人工智能技术的持续进步,从广泛的通用大语言模型到针对各行业的垂直大语言模型,已成为人工智能大语言模型技术深化演进的必然趋势。 教育大语言模型是适用于教育场景、具有庞大规模参数、融合了广泛的通用知识和专业知识训练形成的人工智能模型。能为…

多商户小程序开发步骤和方法

在当今的数字经济中,多商户小程序作为一种创新的商业平台,提供了一种新的商业模式,使多个商户能够在同一平台上展示和销售他们的产品或服务。这种模式不仅增强了消费者选择的多样性,也为商家提供了一个更广泛的销售渠道。以下是详…

Modbus协议转Profinet协议网关与气体监测系统配置案例

一、背景;Modbus协议和Profinet协议作为工业领域常见的两种通讯协议,各自具有一定的特点和应用范围。Modbus转Profinet网关(XD-MDPN100/300)在工业自动化控制系统中,可以将Modbus协议转换为Profinet协议,以…

基于栅格占据概率和距离场的机器人覆盖轨迹模拟

基于栅格占据概率和距离场的机器人覆盖轨迹模拟 简介 辐射场模型实现 理论基础 指数函数建模 我们使用指数函数来表示机器人在某个栅格上停留时间对覆盖概率的影响: p ( t ) 1 − e − λ t p(t) 1 - e^{-\lambda t} p(t)1−e−λt 其中 λ \lambda λ 是控制增长速率…

import accimage报错,accimage安装

使用终端命令安装: conda install -c conda-forge accimage

gitlab下载及安装

目录 1、gitlab下载 2、gitlab安装 3、完全卸载GitLab 1、gitlab下载 首页:https://about.gitlab.com 安装:https://about.gitlab.com/install rpm包:https://packages.gitlab.com/gitlab/gitlab-ce 2、gitlab安装 2.1 CentOS 7 rpm -iv…

【SpringBoot+Vue】后端代码学习记录——登录功能开发

参考资料 https://www.cnblogs.com/three-fighter/p/14332288.html 零、前端开发 略。之前有过。 一、后端开发 1、统一结果封装 创建了一个 Result 类,用于异步统一返回的结果封装。一般来说,结果里面有几个要素必要的 是否成功,可用 c…

不会开发的你也能管理好企业漏洞,开源免费工具:洞察(insight II)

公司刚开始建设安全管理时,都是从一片混沌开始的,资源总是不够的,我们每个做安全的人员,又要会渗透,又要抓制度,还得管理各种漏洞。在管理楼栋是,我相信大家都遇到过以下几个问题: …

什么是React的虚拟DOM?它如何工作以提高性能?

React的虚拟DOM(Virtual DOM)是React框架中的一个核心概念,它是一个轻量级的JavaScript对象树,用于描述真实DOM的结构和属性。虚拟DOM的引入极大地提高了React应用程序的性能,其工作原理主要体现在以下几个方面&#x…

李宏毅深度学习01——基本概念简介

视频链接 基本概念 Regression(回归): 类似于填空 Classification(分类): 类似于选择 Structure Learning(机器学习): ?? 机器学习找对应函数…

CVE-2020-1472域渗透 NetLogon 权限提升漏洞

文章目录 一、漏洞描述二、影响版本三、漏洞编号四、漏洞环境0x01、漏洞利用(CVE-2020-1472)0x02、上线CS0x03、补充:配置代理过程0x04、远程域控免责声明一、漏洞描述 在2020年8月份微软发布的安全公告中,有一个十分紧急的漏洞CVE-2020-1472 NetLogon 权限提升漏洞。通过该漏…

Python基础教程(十六):正则表达式

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 💝&#x1f49…

查分易老师怎么用?

老师们想知道怎么样创建一个查分易成绩查询系统吗?" 这是许多老师在学期结束时关心的问题。别担心,查分易小程序让查询发布工作变得省事又高效。 首先成绩Excel表格格式要设置正确。第一行必须是表头,包含学生的"姓名"、"…

kotlin 语法糖

Use of “when” Expression Instead of “switch” fun getDayOfWeek(day: Int): String {return when (day) {1 -> "Monday"2 -> "Tuesday"3 -> "Wednesday"4 -> "Thursday"5 -> "Friday"6 -> "Sa…