矩阵的运算:加减乘除与转置#matlab

  1. 转置

        矩阵A的转置用 A .  表示,一般大家会直接用A    表示,这是不对的,这是因为前者是转置而后者是转置后再求共轭复数。之所以大家平常用的时候没有影响是因为1,2,3,4...这类的数据是虚部为0的复数,即是实数,若虚部不为0,那么就会产生错误运算了。

矩阵的运算和单个数值的运算是不同的,以下介绍加减乘除

  1. 加法

矩阵的加法是一种相对简单的运算,它要求两个矩阵具有相同的维度,即它们必须有相同的行数和列数。在矩阵加法中,我们将两个矩阵对应位置的元素相加,以产生结果矩阵中相应位置的元素。

假设我们有两个m×n的矩阵A和B,矩阵C是它们的和,则C的每个元素C[i][j]是A和B对应位置元素的和:

C[i][j] = A[i][j] + B[i][j]

其中,i表示行数(从1到m),j表示列数(从1到n)。

下面是一个具体的例子来说明矩阵的加法运算:

假设矩阵A和B都是2×2的矩阵:

A = [1 2; 3 4];B = [5 6; 7 8]

根据矩阵加法的规则,我们将对应位置的元素相加:

C[1][1] = A[1][1] + B[1][1] = 1 + 5 = 6
C[1][2] = A[1][2] + B[1][2] = 2 + 6 = 8
C[2][1] = A[2][1] + B[2][1] = 3 + 7 = 10
C[2][2] = A[2][2] + B[2][2] = 4 + 8 = 12

因此,矩阵C,即A和B的和,是:C = [6 8; 10 12]

这就是矩阵加法的基本过程。如果两个矩阵的维度不同,那么它们就不能进行加法运算

  1. 减法

减法与加法同理。

  1. 乘法(A*BA.*B

矩阵的乘法与矩阵元素的乘法是不同的,需要注意:

  1. 矩阵A和矩阵B的乘积A*B的计算

过程可以分为以下几个步骤,这里我们假设A是一个m×n的矩阵,B是一个n×p的矩阵,因此它们的乘积C将是一个m×p的矩阵。

前提条件矩阵A的列数必须等于矩阵B的行数,即n必须相同,这样A和B才能相乘。

计算步骤:

3.1.1 计算C的每个元素

对于C中的每个元素C[i][j](其中i从1到m,j从1到p):

找到A的第i行和B的第j列。

将A的第i行的每个元素与B的第j列的对应元素相乘。

将这些乘积相加,得到C[i][j]的值。

用数学公式表示,C[i][j] = Σ(A[i][k] * B[k][j]),其中k从1到n。

3.1.2 示例

假设我们有以下两个矩阵:

A = [1 2 3; 4 5 6] (一个2×3的矩阵);B = [7 8; 9 10; 11 12] (一个3×2的矩阵)

则它们的乘积C将是一个2×2的矩阵。我们可以按照上述步骤计算C的每个元素:

C[1][1] = 1*7 + 2*9 + 3*11 = 7 + 18 + 33 = 58

C[1][2] = 1*8 + 2*10 + 3*12 = 8 + 20 + 36 = 64

C[2][1] = 4*7 + 5*9 + 6*11 = 28 + 45 + 66 = 139

C[2][2] = 4*8 + 5*10 + 6*12 = 32 + 50 + 72 = 154

因此,C = [58 64; 139 154]。

  1. 元素对元素的乘法A.*B

元素对元素的乘法(也称为数组乘法)将两个矩阵中对应位置元素相乘。它要求两个矩阵具有相同的维度。如果两个矩阵不是同型矩阵(即它们的维度不完全相同),则操作可能无法进行,除非其中一个矩阵是标量(单个数值),在这种情况下,标量将与另一个矩阵的每个元素相乘。

举例:

A = [1 2; 3 4]; C = A .* A;

则C=[1 4;9 16];

A = [1 2; 3 4]; D = 2; E = A .* D;

则E=[2 4;6 8];

  1. 除法

在矩阵运算中,对于A/B的运算,实际上并不是直接进行除法操作,而是通过矩阵的逆和乘法来实现类似的功能。因此,对于A和B矩阵,有以下要求:

矩阵B的要求:

B必须是方阵(即行数和列数相等),因为矩阵的逆运算只适用于方阵。

B必须是非奇异矩阵(即其行列式不为0),这样B才存在逆矩阵B^-1(inv(B))。如果B是奇异矩阵(行列式为0),那么它就没有逆矩阵,无法进行A/B的运算。

矩阵A的要求:

A的列数必须与B的行数相同,这是进行矩阵乘法的基本要求。当进行A/B的运算时,实际上是计算A * B^-1,因此A的列数(即B^-1的行数)必须与B的行数(即B^-1的列数)相等。

举例:

假设有两个2x2的矩阵A和B:

A = [1 2; 3 4] ;B = [5 6; 7 8]

我们想找到一个矩阵X,使得AX=B。X=B/A

步骤1:判断A是否可逆

首先,我们需要确认矩阵A是否可逆。一个矩阵A是可逆的当且仅当它的行列式不为0。对于2x2矩阵,其行列式det(A) = a11a22 - a12a21。

计算A的行列式:det(A) = 14 - 23 = 4 - 6 = -2 ≠ 0

由于det(A)不为0,所以A是可逆的。

步骤2:求A的逆矩阵A^-1

对于2x2矩阵,其逆矩阵的公式为:A^-1 = (1/(det(A))) * [a22 -a12; -a21 a11]

将A的元素代入公式中,得到:A^-1 = (1/(-2)) * [4 -2; -3 1] = [-2 1; 1.5 -0.5]

步骤3:计算X

现在我们可以用A的逆矩阵和B来计算X:

X = A^-1B

将A^-1和B的具体值代入公式中,进行矩阵乘法运算:

X = [-2 1; 1.5 -0.5] * [5 6; 7 8]= [-25 + 17 -26 + 18; 1.55 - 0.57 1.56 - 0.58]
= [-10 + 7 -12 + 8; 7.5 - 3.5 9 - 4]= [-3 -4; 4 5]

  • 19
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值