1 计算结果表明除法求解比求逆求解速度明显快精度相当但除法的 相对残差几乎是机器零而逆阵法的相对残差高得多
2 MATLAB 在设计求逆函数inv 时采用的是Gauss 消去法
3 MATLAB 在设计左除运算解恰定方程时并不求逆而是直接采用
Gauss 消去法求解有效地减少了残差所以即便在高条件数下也能得到较 好的结果
3.5.2 矩阵除法解超定方程组
1 求正则方程Normal equations ( AT A)x = AT b 的解
2 用Householder 变换Householder transformation 直接求原超定方程的最 小二乘解
由于第二种方程法采用的是正交变换据最小二乘理论可知第二种
方法所得的解的准确性可靠性都比第一种方法好得多MATLAB 解超定方程 组用的就是第二种方法
例除运算解超定方程的简单算例
a=[1 2 3;4 5 -6;7 8 9;10 11 12]; b=[1:4]'; x=a\\b
x = -0.3333 0.6667 0.0000
3.5.3 矩阵除法解欠定方程组
欠定方程的解是不唯一的用除法运算所得的解有两个重要特征1
在解中至多有Rank(A)个非零元素2 它是这类型解中范数最小的一个 例除运算解欠定方程的简单算例
a=[1 2 3;4 5 -6;7 8 9;10 11 12]; b=a';
c=[1 3 3]'; x=b\\c x = 2.0000 0.1667 0
-0.1667
南京航空航天大学 王正盛21
3.6 矩阵分解函数 3.6.1 LU 分解
[L,U]=lu(X) 产生一个上三角矩阵U 和一个心理上下三角矩阵L 即由下 三角 矩阵和置换矩阵构成使得X=L*U
[L,U,P]=lu(X) 产生一个上三角矩阵U 和一个下三角矩阵L 以及一个置换矩阵 P 使得P*X=L*U 注意X 必须是方阵
例1 用lu 分解的两种指令格式对矩阵A 进行 LU 分解 解 A=[1 –1 1; 5 –4 3; 2 1 1]
[L,U]=lu(A) [L,U,P]=lu(A) A = 1 -1 1 5 -4 3 2 1 1
[L,U]=lu(a) L =
0.2000 -0.0769 1.0000 1.0000 0 0
0.4000 1.0000 0 U =
5.0000 -4.0000 3.0000 0 2.6000 -0.2000 0 0 0.3846 [L,U,P]=lu(a) L =
1.0000 0 0
0.4000 1.0000 0
0.2000 -0.0769 1.0000 U =
5.0000 -4.0000 3.0000 0 2.6000 -0.2000 0 0 0.3846 P = 0 1 0 0 0 1 1 0 0
例2 A 为严格对角占优矩阵
A=[4 1 2 ;2 5 –1; 5 3 11] [L,U]=lu(a) A = 4 1 2 2 5 -1 5 3 11
[L,U]=lu(A)
南京航空航天大学 王正盛22
L=
0.8000 -0.3684 1.0000 0.4000 1.0000 0 1.0000 0 0 U =
5.0000 3.0000 11.0000 0 3.8000 -5.4000
0 0 -8.7895
例3 利用 LU 分解求解线性方程组AX=b A=[1,-1,1;5,-4,3;2,1,1] A = 1 -1 1 5 -4 3 2 1 1 b=[2;-3;1] b = 2 -3 1
[L,U,P]=lu(A) L =
1.0000 0 0
0.4000 1.0000 0
0.2000 -0.0769 1.0000 U =
5.0000 -4.0000 3.0000 0 2.6000 -0.2000 0 0 0.3846 P = 0 1 0 0 0 1 1 0 0
y=L\\(P*b) y = -3.0000 2.2000 2.7692 x=U\\y x = -3.8000 1.4000 7.2000
1.0.0 QR 分解
[Q,R]=qr(A) 产生一个与矩阵A 相同维数的上三角矩阵R 和一个酉阵 Q 使 得A=Q*R
[Q,R,E]=qr(A) 产生一个置换矩阵E 上三角矩阵R 和一个酉阵 Q 使得 A*E=Q*R 例1
a=[1 –1 1;5 –4 3;2 1 1]
南京航空航天大学 王正盛23
[Q,R]=qr(a) [Q,R,E]=qr(a) a =
1 -1 1 5 -4 3 2 1 1
[Q,R]=qr(a)
Q = -0.1826 -0.1501 -0.9717 -0.9129 -0.3412 0.2242 -0.3651 0.9279 -0.0747 R =
-5.4772 3.4689 -3.2863 0 2.4427 -0.2456 0 0 -0.3737 [Q,R,E]=qr(a) Q =
-0.1826 -0.1501 -0.9717 -0.9129 -0.3412 0.2242 -0.3651 0.9279 -0.0747 R =
-5.4772 3.4689 -3.2863 0 2.4427 -0.2456 0 0 -0.3737 E = 1 0 0 0 1 0 0 0 1
例2 a 为严格对角占优矩阵
a=[10 –1 1;5 –14 3;2 1 21] [Q,R]=qr(a) Q =
-0.1826 -0.1501 -0.9717 -0.9129 -0.3412 0.2242 -0.3651 0.9279 -0.0747 R =
-5.4772 3.4689 -3.2863 0 2.4427 -0.2456 0 0 -0.3737 [Q,R,E]=qr(a) Q =
-0.0471 -0.0678 -0.9966 -0.1413 -0.9872 0.0738 -0.9889 0.1443 0.0369 R =
-21.2368 1.0359 -3.1549 0 14.0331 -5.3254 0 0 -9.5230

