一般地,实数矩阵A可进行QR分解,即A=QR。其中,Q为正交矩阵,R为上三角矩阵。
在MATLAB中,QR分解可由qr函数实现。常用的语法格式如下。
[B,C]=qr(A):返回的矩阵C为上三角矩阵,矩阵B为满秩矩阵。
[Q,R,E] = qr(A):返回的矩阵E是置换矩阵,矩阵R是上三角矩阵,矩阵Q是满秩矩阵。上述矩阵满足关系A*E = Q*R。
在命令窗口中输入
code.matlab
>> a=[1 2 0;2 5 -1;4 10 -1];
>> [b,c,e]=qr(a)
b =
-0.1761 0.4598 -0.8704
-0.4402 -0.8276 -0.3482
-0.8805 0.3219 0.3482
c =
-11.3578 1.3207 -4.5783
0 0.5058 0.0920
0 0 -0.1741
e =
0 0 1
1 0 0
10 1 0