《MATLAB/Simulink系统仿真超级学习手册》——2.3 MATLAB下矩阵的运算

简介:

本节书摘来自异步社区《MATLAB/Simulink系统仿真超级学习手册》一书中的第2章,第2.3节,作者:MATLAB技术联盟 , 石良臣著,更多章节内容可以访问云栖社区“异步社区”公众号查看

2.3 MATLAB下矩阵的运算

MATLAB/Simulink系统仿真超级学习手册
矩阵运算是MATLAB最重要的运算,因为MATLAB的运算大部分都建立在矩阵运算的基础之上。MATLAB有三种矩阵运算类型:矩阵的代数运算、矩阵的关系运算和矩阵的逻辑运算。其中,矩阵的代数运算应用最广泛。

根据不同的应用目的,矩阵的代数运算又包含两种重要的运算形式:按矩阵整体进行运算,按矩阵单个元素进行运算的元素群运算。

2.3.1 矩阵的代数运算
1.矩阵的算术运算
矩阵算术运算的书写格式与普通算术运算相同,包括优先顺序规则,但其乘法和除法的定义和方法与标量截然不同,读者应在矩阵的运算意义上加以理解和应用。

表2-6是MATLAB矩阵的算术运算符及其说明。
screenshot

下面为两矩阵的加法、乘法、乘方运算示例,运算失败时MATLAB会提示出错。

>> A=[1,1;2,2];B=[1,1;2,2];A+B
ans =
   2   2
   4   4
>> A=[1,1;2,2;3,3];B=[1,1;2,2];A+B
Error using  + 
Matrix dimensions must agree.
>> A=[1,1;2,2];B=[1,1;2,2];A*B
ans =
   3   3
   6   6
>> A=[1,1;2,2];B=[1,1;2,2;3,3];A*B
Error using  * 
Inner matrix dimensions must agree.
>> A=[1,1;2,2];B=2;A^B
ans =
   3   3
   6   6
>> A=[1,1;2,2];B=[1,2];A^B
Error using  ^ 
Inputs must be a scalar and a square matrix.
To compute elementwise POWER, use POWER (.^) instead.

注意:

(1)若A、B两矩阵进行加、减运算,则A、B必须维数相同,否则系统提示出错;

(2)若A、B两矩阵进行乘运算,则前一矩阵的列数必须等于后一矩阵的行数(内维数相等);

(3)若A、B两矩阵进行右除运算,则两矩阵的列数必须相等(实际上,X=B/A=B×A-1 );

(4)若A、B两矩阵进行左除运算,则两矩阵的行数必须相等(实际上,X=A B=A-1· B)。

2.矩阵的运算函数
MATLAB系统函数库中提供了一些常用的矩阵运算函数,熟悉这些对读者非常有用。例如,矩阵的加、减、乘、除等运算对参与运算的矩阵都有各自的矩阵维数匹配要求。

表2-7列出了部分常用的矩阵运算函数。
screenshot

下面为常用矩阵运算函数的示例。

>> A=[1,2,3;4,5,6;7,8,9];size(A)
ans =
   3   3
>> A=[1,2,3;4,5,6;7,8,9];length(A)
ans =
   3
>> A=[1,2,3;4,5,6;7,8,9];sum(A)
ans =
  12  15  18
>> A=[1,2,3;4,5,6;7,8,9];max(A)
ans =
   7   8   9

3.矩阵的元素群运算
元素群运算,是指矩阵中的所有元素按单个元素进行运算。为了与矩阵作为整体的运算符号相区别,元素群运算约定:在矩阵运算符“*”、“/”、“”、“^”前加一个点符号“.”,以表示在做元素群运算,而非矩阵运算。元素群加、减运算的效果与矩阵加、减运算是一致的,运算符也相同。

表2-8为矩阵的元素群运算符及其说明。
screenshot

下面为元素群运算的示例。

>> A=[1,2;3,4];B=[1,2;3,4];A.*B
ans =
   1   4
   9  16
>> A=[1,2;3,4];B=[3,4;5,6];A.\B
ans =
  3.0000  2.0000
  1.6667  1.5000
>> A=[1,2;3,4];B=[3,4;5,6];A./B
ans =
  0.3333  0.5000
  0.6000  0.6667
>> A=[1,2;3,4];B=[3,4;5,6];A.^B
ans =
       1      16
     243    4096

4.元素群的函数
MATLAB提供了几乎所有初等函数,包括三角函数、对数函数、指数函数和复数运算函数等。大部分的MATLAB函数运算都是分别作用于函数变量(矩阵)的每一个元素,这意味着这些函数的自变量可以是任意阶的矩阵。

表2-9列出了MATLAB常用初等函数名及其对应功能。
screenshot

在MATLAB命令窗口中输入下面语句并按回车键确认。

>> x=[0,pi/6,pi/4,pi/3];y=tan(x)

运行结果如下:

y =
     0  0.5774  1.0000  1.7321

2.3.2 矩阵的关系运算
MATLAB语言定义了各种矩阵的关系运算,表2-10列出了MATLAB的关系运算符及其意义。
screenshot

在使用关系运算时,首先应保证两个矩阵的维数相等或至少一个为标量。若参与运算的对象为两个矩阵,则关系运算对两个矩阵的对应元素进行关系比较,若关系满足,则将结果矩阵中该位置的元素置1,否则置0。若参与运算的对象之一为标量,则关系运算将矩阵的每一个元素与该标量逐一进行关系比较,若关系满足,则将结果矩阵中该位置的元素置1,否则置0。

注意:关系运算比算术运算具有更高的优先权。

下面为矩阵A=[1,1;1,1]和矩阵B=[0,1;2,3]作关系比较的运算结果示例。

>> A=[1,1;1,1];B=[0,1;2,3];A>B
ans =
   1   0
   0   0
>> A=[1,1;1,1];B=[0,1;2,3];A>=B
ans =
   1   1
   0   0
>> A=[1,1;1,1];B=[0,1;2,3];A==B
ans =
   0   1
   0   0
>> A=[1,1;1,1];B=[0,1;2,3];A~=B
ans =
   1   0
   1   1

2.3.3 矩阵的逻辑运算
在逻辑运算中,所有非零元素的逻辑值为“真”,用代码“表示;值为零的元素的逻辑值为“假”,用代码“表示。

逻辑运算规则与关系运算基本一致,也是针对两个矩阵的对应元素。逻辑运算真值表与一般二值运算真值表完全一致。

表2-11为MATLAB矩阵的基本逻辑运算符号及其意义。
screenshot

相关文章
|
10天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于BP神经网络的苦瓜生长含水量预测模型matlab仿真
本项目展示了基于BP神经网络的苦瓜生长含水量预测模型,通过温度(T)、风速(v)、模型厚度(h)等输入特征,预测苦瓜的含水量。采用Matlab2022a开发,核心代码附带中文注释及操作视频。模型利用BP神经网络的非线性映射能力,对试验数据进行训练,实现对未知样本含水量变化规律的预测,为干燥过程的理论研究提供支持。
|
1天前
|
存储
基于遗传算法的智能天线最佳阵列因子计算matlab仿真
本课题探讨基于遗传算法优化智能天线阵列因子,以提升无线通信系统性能,包括信号质量、干扰抑制及定位精度。通过MATLAB2022a实现的核心程序,展示了遗传算法在寻找最优阵列因子上的应用,显著改善了天线接收功率。
|
3天前
|
监控 算法 数据安全/隐私保护
基于三帧差算法的运动目标检测系统FPGA实现,包含testbench和MATLAB辅助验证程序
本项目展示了基于FPGA与MATLAB实现的三帧差算法运动目标检测。使用Vivado 2019.2和MATLAB 2022a开发环境,通过对比连续三帧图像的像素值变化,有效识别运动区域。项目包括完整无水印的运行效果预览、详细中文注释的代码及操作步骤视频,适合学习和研究。
基于毕奥-萨伐尔定律的交流电机的4极旋转磁场matlab模拟与仿真
本课题基于毕奥-萨伐尔定律研究交流电机的4极旋转磁场,对比不同定子半径和2极旋转磁场。通过MATLAB2022a进行仿真,核心程序计算每个导线对空间点的磁场贡献,并绘制磁场分布。毕奥-萨伐尔定律描述了电流元产生的磁场分布,对于理解交流电机中旋转磁场的形成至关重要。
|
11天前
|
算法
基于粒子群算法的分布式电源配电网重构优化matlab仿真
本研究利用粒子群算法(PSO)优化分布式电源配电网重构,通过Matlab仿真验证优化效果,对比重构前后的节点电压、网损、负荷均衡度、电压偏离及线路传输功率,并记录开关状态变化。PSO算法通过迭代更新粒子位置寻找最优解,旨在最小化网络损耗并提升供电可靠性。仿真结果显示优化后各项指标均有显著改善。
|
11天前
|
算法 5G 数据安全/隐私保护
MIMO系统中差分空间调制解调matlab误码率仿真
本项目展示了一种基于Matlab 2022a的差分空间调制(Differential Space Modulation, DMS)算法。DMS是一种应用于MIMO通信系统的信号传输技术,通过空间域的不同天线传输符号序列,并利用差分编码进行解调。项目包括算法运行效果图预览、核心代码及详细中文注释、理论概述等内容。在发送端,每次仅激活一个天线发送符号;在接收端,通过差分解调估计符号和天线选择。DMS在快速衰落信道中表现出色,尤其适用于高速移动和卫星通信系统。
|
6天前
|
机器学习/深度学习 算法 数据挖掘
基于GWO灰狼优化的GroupCNN分组卷积网络时间序列预测算法matlab仿真
本项目展示了基于分组卷积神经网络(GroupCNN)和灰狼优化(GWO)的时间序列回归预测算法。算法运行效果良好,无水印展示。使用Matlab2022a开发,提供完整代码及详细中文注释。GroupCNN通过分组卷积减少计算成本,GWO则优化超参数,提高预测性能。项目包含操作步骤视频,方便用户快速上手。
|
8天前
|
机器学习/深度学习 算法 数据处理
基于最小二乘法的太阳黑子活动模型参数辨识和预测matlab仿真
本项目基于最小二乘法,利用Matlab对太阳黑子活动进行模型参数辨识和预测。通过分析过去288年的观测数据,研究其11年周期规律,实现对太阳黑子活动周期性的准确建模与未来趋势预测。适用于MATLAB2022a版本。
|
8天前
|
固态存储
螺旋卫星通信天线设计与有限元分析matlab仿真
本课题研究了尺寸为10cm*10cm*30cm的卫星上搭载的螺旋型天线,工作于UHF频段(1-3GHz)。通过MATLAB2022a进行系统仿真,展示了天线的辐射特性。螺旋天线因其低轴比、宽带宽和紧凑结构而适用于卫星通信。采用有限元法分析天线的电磁性能,计算了天线的关键性能指标,包括S参数、增益、轴比等。
|
8天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于WOA鲸鱼优化的GroupCNN分组卷积网络时间序列预测算法matlab仿真
本项目展示了一种基于WOA优化的GroupCNN分组卷积网络时间序列预测算法。使用Matlab2022a开发,提供无水印运行效果预览及核心代码(含中文注释)。算法通过WOA优化网络结构与超参数,结合分组卷积技术,有效提升预测精度与效率。分组卷积减少了计算成本,而WOA则模拟鲸鱼捕食行为进行优化,适用于多种连续优化问题。

热门文章

最新文章