第二章 矩阵和数组及其运算
第八节 矩阵的除法
如果A和B是维数相同的两个方阵,而且B是可逆方阵,則它的逆矩阵B-1是另一个同维数的方阵。
因为矩阵乘法并没有交换律,所以B-1A和AB-1一般而言并不相等。因此MATLAB提供两种除法运算符号(左除 “\”和右除“/”)。凡是按矩阵规则可以和逆矩阵B-1相乘的矩阵(两个矩阵的内维相同),都可以根据左乘或右乘而做“除\”或“除以/”的计算。
1.矩阵的左除(运算符号“\”)
在矩阵A的左边乘B-1,即B-1A,称为矩阵B除矩阵A,运算符号是B\A。如果矩阵A是一个非奇异方阵,矩阵的左除A\B等于矩阵A的逆与B的左乘inv(A)B。应当指出:
1)如果矩阵A是一个方阵,表示矩阵方程AX=B的解是X=A\B,或X=inv(A)B,这里的X具有与矩阵B相同的维数。
2)如果矩阵B是一个列向量b时,则X=A\B是线性系统AX=b的解。
3)如果矩阵A是一个m×n矩阵(m>n),X=A\B得到矩阵方程AX =B的最小二乘解inv(A)B。
2.矩阵的右除(运算符号“/”)
在矩阵A的右边乘B-1,即B-1A,称为矩阵A除以矩阵B,运算符号是A/B。如果矩阵A是一个非奇异方阵,矩阵的右除A/B等于矩阵A的逆与B的右乘B inv(A)。
矩阵方程XA=B的解是X=B/A,或X=B inv(A)。
例2-6 试对两个2行2列的方阵A=[1 2;3 4]和B=[5 6;7 8]进行除法运算。
>> A=[1 2;3 4]
A =
1 2
3 4
>> B=[5 6;7 8]
B =
5 6
7 8
>> Left=A\B % 矩阵左除
Left =
-3.0000 -4.0000
4.0000 5.0000
>> Right=B/A % 矩阵右除
Right =
-1 2
-2 3
>> L=inv(A)*B % 矩阵A的逆与矩阵B的左乘
L =
-3.0000 -4.0000
4.0000 5.0000
>> R=B*inv(A) % 矩阵A的逆与矩阵B的右乘
R =
-1.0000 2.0000
-2.0000 3.0000
线性联立方程组的矩阵形式可以写成Ax=b,其中A是一个n维可逆方阵,b是一个n维列向量。从矩阵除法可知,则x=A\b就是线性联立方程组的一组解。
例2-7 利用矩阵除法求解线性方程组
>>A=[4,6,?1;5,?8,3;1,4,1]; % 线性方程组的系数矩阵
>>b=[1;0;0]; % 线性方程组的常数列向量
>>x=A\b % 运用矩阵左除求解线性方程组
x =
0.1667
0.0167
-0.2333
>>r=A*x?b % 计算残量
r =
1.0e?015 *
-0.1110
0
0.0278
>>R=norm(r) % 计算残量的向量范数
R =
1.1444e?016
说明:理论上残量应该是零向量,但是因为数值计算不可避免产生误差,其结果未必真的是零。命令语句中函数norm(X)是计算三维向量X的范数,通常只要残量的向量范数在10-14以下,就认为数值解是十分精确的。
因为矩阵乘法并没有交换律,所以B-1A和AB-1一般而言并不相等。因此MATLAB提供两种除法运算符号(左除 “\”和右除“/”)。凡是按矩阵规则可以和逆矩阵B-1相乘的矩阵(两个矩阵的内维相同),都可以根据左乘或右乘而做“除\”或“除以/”的计算。
1.矩阵的左除(运算符号“\”)
在矩阵A的左边乘B-1,即B-1A,称为矩阵B除矩阵A,运算符号是B\A。如果矩阵A是一个非奇异方阵,矩阵的左除A\B等于矩阵A的逆与B的左乘inv(A)B。应当指出:
1)如果矩阵A是一个方阵,表示矩阵方程AX=B的解是X=A\B,或X=inv(A)B,这里的X具有与矩阵B相同的维数。
2)如果矩阵B是一个列向量b时,则X=A\B是线性系统AX=b的解。
3)如果矩阵A是一个m×n矩阵(m>n),X=A\B得到矩阵方程AX =B的最小二乘解inv(A)B。
2.矩阵的右除(运算符号“/”)
在矩阵A的右边乘B-1,即B-1A,称为矩阵A除以矩阵B,运算符号是A/B。如果矩阵A是一个非奇异方阵,矩阵的右除A/B等于矩阵A的逆与B的右乘B inv(A)。
矩阵方程XA=B的解是X=B/A,或X=B inv(A)。
例2-6 试对两个2行2列的方阵A=[1 2;3 4]和B=[5 6;7 8]进行除法运算。
>> A=[1 2;3 4]
A =
1 2
3 4
>> B=[5 6;7 8]
B =
5 6
7 8
>> Left=A\B % 矩阵左除
Left =
-3.0000 -4.0000
4.0000 5.0000
>> Right=B/A % 矩阵右除
Right =
-1 2
-2 3
>> L=inv(A)*B % 矩阵A的逆与矩阵B的左乘
L =
-3.0000 -4.0000
4.0000 5.0000
>> R=B*inv(A) % 矩阵A的逆与矩阵B的右乘
R =
-1.0000 2.0000
-2.0000 3.0000
线性联立方程组的矩阵形式可以写成Ax=b,其中A是一个n维可逆方阵,b是一个n维列向量。从矩阵除法可知,则x=A\b就是线性联立方程组的一组解。
例2-7 利用矩阵除法求解线性方程组
>>A=[4,6,?1;5,?8,3;1,4,1]; % 线性方程组的系数矩阵
>>b=[1;0;0]; % 线性方程组的常数列向量
>>x=A\b % 运用矩阵左除求解线性方程组
x =
0.1667
0.0167
-0.2333
>>r=A*x?b % 计算残量
r =
1.0e?015 *
-0.1110
0
0.0278
>>R=norm(r) % 计算残量的向量范数
R =
1.1444e?016
说明:理论上残量应该是零向量,但是因为数值计算不可避免产生误差,其结果未必真的是零。命令语句中函数norm(X)是计算三维向量X的范数,通常只要残量的向量范数在10-14以下,就认为数值解是十分精确的。