给定具有独立列的矩阵A(不一定是正方形),我能够应用Gram-Schmidt迭代并使用Matlab函数为其列空间(以正交矩阵Q的形式)生成标准正交基础 qr
A=[1,1;1,0;1,2]
[Q,R] = qr(A)
Run Code Online (Sandbox Code Playgroud)
然后
>> Q(:,1:size(A,2))
ans =
-0.577350269189626 -0.000000000000000
-0.577350269189626 -0.707106781186547
-0.577350269189626 0.707106781186547
Run Code Online (Sandbox Code Playgroud)
您可以验证列是否是正交的
Q(:,1)'*Q(:,2) equals zero and
norm(Q(:,1)) equals norm(Q(:,2)) equals 1
Run Code Online (Sandbox Code Playgroud)
给定具有独立列(如A)的矩阵,R中是否存在产生(Gram-Schmidt)正交矩阵Q?的函数.R的qr函数不产生正交Q.
Ric*_*ron 12
qr工作,但它使用一个独特的约定,并生成一个qr您进一步操作的对象qr.Q和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
Run Code Online (Sandbox Code Playgroud)
这是你想要的输出吗?
| 归档时间: |
|
| 查看次数: |
7476 次 |
| 最近记录: |