给定一个具有独立列的矩阵 A(不一定是方阵),我能够应用 Gram-Schmidt 迭代并使用 Matlab 函数为其列空间(以正交矩阵 Q 的形式)生成正交基qr
A=[1,1;1,0;1,2]
[Q,R] = qr(A)
and then
>> Q(:,1:size(A,2))
ans =
-0.577350269189626 -0.000000000000000
-0.577350269189626 -0.707106781186547
-0.577350269189626 0.707106781186547
您可以验证列是否正交
Q(:,1)'*Q(:,2) equals zero and
norm(Q(:,1)) equals norm(Q(:,2)) equals 1
给定一个具有独立列的矩阵(如 A),R 中是否有一个函数可以生成 (Gram-Schmidt) 正交矩阵 Q ? R的qr
函数不会产生正交 Q。
qr
有效,但它使用独特的约定并产生qr
您进一步操作的对象qr.Q
and qr.R
:
> A
[,1] [,2]
[1,] 1 1
[2,] 1 0
[3,] 1 2
> A.qr <- qr(A)
> qr.Q(A.qr)
[,1] [,2]
[1,] -0.5773503 -5.551115e-17
[2,] -0.5773503 -7.071068e-01
[3,] -0.5773503 7.071068e-01
> qr.R(A.qr)
[,1] [,2]
[1,] -1.732051 -1.732051
[2,] 0.000000 1.414214
这是你想要的输出吗?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)