22 lines
351 B
Mathematica
22 lines
351 B
Mathematica
|
function [Q R] = Alg11(A)
|
||
|
% Algorithm 11: QR factorization via Housholder algorithm.
|
||
|
|
||
|
[m, n] = size(A);
|
||
|
|
||
|
if ~ (m>=n)
|
||
|
error("m has to be greater or equal n!")
|
||
|
end
|
||
|
|
||
|
for j = 1:n
|
||
|
[v, beta] = householder(A(j:m, j))
|
||
|
A(j:m, j:n) = (eye(m-j+1)-beta*(v*v.'))*A(j:m, j:n)
|
||
|
if j < m
|
||
|
A(j+1:m, j) = v(2:m-j+1)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
R = triu(A)
|
||
|
|
||
|
end
|
||
|
|