![MATLAB Simulink 2020系统仿真从入门到精通](https://wfqqreader-1252317822.image.myqcloud.com/cover/221/44175221/b_44175221.jpg)
2.5 MATLAB下矩阵的运算
2.5.1 矩阵的代数运算
矩阵的代数运算包括加、减、乘、数乘、点乘、乘方、左除、右除等。其中加、减、乘与大家所学的线性代数中的定义是一样的,相应的运算符为“+”“-”“*”。
对于上述的运算,需要注意的是,矩阵的加、减、乘运算对维数要求与线性代数中的要求一致。
1.矩阵的加减运算
设A=(aij),B=(bij)都是m× n矩阵,矩阵A与B的和记成A+B,规定为:
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/39_02.jpg?sign=1739595228-VVCKoXaMLkElJP6BuBMe7SGJB9u6L4g2-0-9dd1c583ca927d58b66bcd8c765daf75)
1)交换律:A+B=B+A。
2)结合律:(A+B)+C=A+(B+C)。
例2-16:验证加法法则。本实例验证矩阵加法的交换律与结合律。
解:MATLAB程序如下。
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/39_03.jpg?sign=1739595228-pn9MlsGL2obbo2yjTdd67gze385fFa5t-0-36c1582d34ae16e4df929aeae5229a8f)
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/39_04.jpg?sign=1739595228-tg8mMCXdPes0j4hRV2Zyga261fMmiBkl-0-7bb549352c7b276011afeefc457c25d4)
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/40_01.jpg?sign=1739595228-H3HywrC22dFAw5lBoE4h2YbQ908YLOnG-0-2915faed8fc1d51b3f9ff271cb206394)
减法运算法则为:A-B=A+(-B)。
例2-17:矩阵求差。本实例求矩阵的减法运算。
解:MATLAB程序如下。
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/40_02.jpg?sign=1739595228-0wrGOdxAqBEKTUx44BujUHKOBE6tlCWl-0-9b1de61d12ab0caa3d0b024f7b2039ec)
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/40_03.jpg?sign=1739595228-OeoWtDBZYk2YWRVfwW8GdbS5tzUWsNzm-0-ca7c748dec48d5c008118b81e07c928f)
2.矩阵的乘法运算
(1)数乘运算
数λ与矩阵A=(aii)m×n的乘积记成λA或Aλ,规定为:
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/40_04.jpg?sign=1739595228-QhWE2exHKHQ3Zei70ulUWirahJOL44oS-0-1e221898af99938dd4cbf56b768a8053)
同时,矩阵还满足下面的规律:
λ(μA)=(λμ)A
(λ+μ)A=λA+μA
λ(A+B)=λA+λB
其中,λ,μ为数,A,B为矩阵。
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/41_01.jpg?sign=1739595228-O2hauATrbyjNW0FrjMKqAWfRLehFbczD-0-7ff9e64fc47162f72af47796d893ed20)
(2)乘运算
若3个矩阵有相乘关系,设A=(aij)是一个m× s矩阵,B=(bij)是一个s× n矩阵,规定A与B的积为一个m× n矩阵C=(cij):
cij=ai1b1j+ai2b2j+…+aisbsji=1,2,…,m; j=1,2,…,n
即C=A*B,需要满足以下3种条件。
◆ 矩阵A的列数与矩阵B的行数相同。
◆ 矩阵C的行数等于矩阵A的行数,矩阵C的列数等于矩阵B的列数。
◆ 矩阵C的第m行n列元素值等于矩阵 A的 m行元素与矩阵 B的 n列元素对应值积的和。
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/41_02.jpg?sign=1739595228-rzw8bAV423kqxma0c2vELrlHScBczZa4-0-271fcfbf6ec10161fb33e4b7c6df3c4f)
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/41_03.jpg?sign=1739595228-sTveYjEL5n1VimRjPW7ULIAkNhj2NpYA-0-3e06582d04b30110cf0fb5d33f804010)
注意:
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/41_05.jpg?sign=1739595228-sSsquj8YzvrVFuZRzER2EOcGiBDgbZon-0-b8fdae99ba9819000ae2c093a6803ab2)
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/42_01.jpg?sign=1739595228-KgnaS5jBHHo617hzakSfjtZhwJ8dwK0l-0-cd71a79a07c5cdd1c1bad60df0511e3b)
若矩阵A、B满足AB=0,未必有A=0或B=0的结论。
3.点乘运算
点乘运算是指将两矩阵中相同位置的元素进行相乘运算,将积保存在原位置组成新矩阵。
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/42_02.jpg?sign=1739595228-qN8kDC1kAz5xNE0SGmu0h8hxWPjFpctR-0-17025b1ac18e5b06862fa05cd373cc76)
例2-18:矩阵点乘运算。
解:MATLAB程序如下。
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/42_03.jpg?sign=1739595228-kVxV0jlFmQugSxQetnbOU7IkaeCXPILS-0-2f3e141db35bcadd018c7d3e7aeffc97)
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/42_04.jpg?sign=1739595228-CJXW8Ku1kvV7oDg1NarVgNxXMDKX6gwu-0-a539a16e8188f88cc1933765bccafb54)
4.矩阵的除法运算
由于矩阵的特殊性计算左除A\ B时,A的行数要与B的行数一致,计算右除A/B时,A的列数要与B的列数一致。
(1)左除运算
A*B通常不等于B*A,除法也一样。因此除法要区分左除和右除。
线性方程组D*X=B,如果 D非奇异,即它的逆矩阵inv(D)存在,则其解用MTLAB表为:
X=inv(D)*B=D\B
符号“\”称为左除,即分母放在左边。
左除的条件:B的行数等于D的阶数(D的行数和列数相同,简称阶数)。
例2-19:求解矩阵左除。
解:MATLAB程序如下。
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/43_01.jpg?sign=1739595228-3UCPt3glRSkvKviggm2l7kgcfVbAHGYz-0-2a68e423c64070973cd0e97bd7786752)
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/43_02.jpg?sign=1739595228-DlidE04nRYEvfoe8GHd9ReDAar4NUvRQ-0-43e10573efcef33c0a3971c50833d560)
(2)右除运算
若方程组表示为X*D1=B1,D1非奇异,即它的逆阵inv(D1)存在,则其解为:
X=B1*inv(D1)=B1/D1
符号“/”称为右除。
右除的条件:B1的列数等于D的阶数(D的行数和列数相同,简称阶数)。
例2-20:验证矩阵的右除。
解:MATLAB程序如下。
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/43_03.jpg?sign=1739595228-irX2jDWIwKUyYipz3C2lhOlnrmbXov9K-0-0ef1521fced90877c4d45206f42aa70f)
![](https://epubservercos.yuewen.com/9B02D1/23446275609890206/epubprivate/OEBPS/Images/43_04.jpg?sign=1739595228-yeeQHHWHK32n9xGd8zZugt7sDaLGszWg-0-4abdaf87a9db1420fc1b4cf3c7a86cf4)