MATLAB Simulink 2020系统仿真从入门到精通
上QQ阅读APP看书,第一时间看更新

2.5 MATLAB下矩阵的运算

2.5.1 矩阵的代数运算

矩阵的代数运算包括加、减、乘、数乘、点乘、乘方、左除、右除等。其中加、减、乘与大家所学的线性代数中的定义是一样的,相应的运算符为“+”“-”“*”。

对于上述的运算,需要注意的是,矩阵的加、减、乘运算对维数要求与线性代数中的要求一致。

1.矩阵的加减运算

A=(aij),B=(bij)都是m× n矩阵,矩阵AB的和记成A+B,规定为:

1)交换律:A+BB+A

2)结合律:(A+B)+CA+(B+C)。

例2-16:验证加法法则。本实例验证矩阵加法的交换律与结合律。

解:MATLAB程序如下。

减法运算法则为:A-BA+(-B)。

例2-17:矩阵求差。本实例求矩阵的减法运算。

解:MATLAB程序如下。

2.矩阵的乘法运算

(1)数乘运算

λ与矩阵A=(aiim×n的乘积记成λA,规定为:

同时,矩阵还满足下面的规律:

λμA)=(λμA

λ+μAλA+μA

λA+B)=λA+λB

其中,λμ为数,AB为矩阵。

(2)乘运算

若3个矩阵有相乘关系,设A=(aij)是一个m× s矩阵,B=(bij)是一个s× n矩阵,规定AB的积为一个m× n矩阵C=(cij):

cijai1b1j+ai2b2j+…+aisbsji=1,2,…,mj=1,2,…,n

CA*B,需要满足以下3种条件。

◆ 矩阵A的列数与矩阵B的行数相同。

◆ 矩阵C的行数等于矩阵A的行数,矩阵C的列数等于矩阵B的列数。

◆ 矩阵C的第mn列元素值等于矩阵 Am行元素与矩阵 Bn列元素对应值积的和。

注意:

若矩阵AB满足AB=0,未必有A=0或B=0的结论。

3.点乘运算

点乘运算是指将两矩阵中相同位置的元素进行相乘运算,将积保存在原位置组成新矩阵。

例2-18:矩阵点乘运算。

解:MATLAB程序如下。

4.矩阵的除法运算

由于矩阵的特殊性计算左除AB时,A的行数要与B的行数一致,计算右除A/B时,A的列数要与B的列数一致。

(1)左除运算

A*B通常不等于B*A,除法也一样。因此除法要区分左除和右除。

线性方程组D*XB,如果 D非奇异,即它的逆矩阵inv(D)存在,则其解用MTLAB表为:

X=inv(D)*BDB

符号“\”称为左除,即分母放在左边。

左除的条件:B的行数等于D的阶数(D的行数和列数相同,简称阶数)。

例2-19:求解矩阵左除。

解:MATLAB程序如下。

(2)右除运算

若方程组表示为X*D1=B1,D1非奇异,即它的逆阵inv(D1)存在,则其解为:

XB1*inv(D1)=B1/D1

符号“/”称为右除。

右除的条件:B1的列数等于D的阶数(D的行数和列数相同,简称阶数)。

例2-20:验证矩阵的右除。

解:MATLAB程序如下。