Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function [Q, R] = Givens2(A);
- [m, n] = size(A);
- Q = eye(m);
- for k = 1 : min (m - 1, n)
- for l = k + 1 : n
- r = sqrt(A(k, k) * A(k, k) + A(l, k) * A(l, k));
- c = A(k, k) / r;
- s = A(l, k) / r;
- Ri=eye(n);
- Ri(k,k)=c;
- Ri(l,k)=s;
- Ri(k,l)=-s;
- Ri(l,l)=c;
- %Ri*Ri'
- Ri*A
- if k==1 & l==2 G=Ri;
- else G=G*Ri;
- end
- if k==min(m-1,n) & l==n
- Ri*A
- end
- G
- %A([k, l], :) = [c, s; -s, c] * A([k, l], :);
- %Q([k, l], :) = [c, s; -s, c] * Q([k, l], :);
- end
- end
- R=A;
Advertisement
Add Comment
Please, Sign In to add comment