现在时间是:
当前位置:首 页 >> 矩阵计算>> 教学区>> 文章列表

130213004 葛嫚嫚 householder变换和givens变换QR分解

作者:葛嫚嫚   发布时间:2015-06-23 16:36:21   浏览次数:187

function [V,B]=house(x)
%Householder变换
%将x的除了第一行外,全化为0
n=length(x)
h=norm(x,inf);
x=x/h;
o=x(2:n)'*x(2:n);
V=zeros(n,1);
V(1)=1;
V(2:n)=x(2:n);
if o==0
    B=0
else
    d=sqrt(V(1)^2+o)
    if x(1)<=0
        V(1)=x(1)-d;
    else
        V(1)=-o/(x(1)+d);
    end
    B=2/((o+V(1)^2)/V(1)^2);
    V=V/V(1);
end

x=[1 0 4 6 3 4]'
n=length(x);
[V,B]=house(x);
I=eye(n);
w=B*x'*V;
Hx=x-V*w';
H=I-B*V*V';
A=eye(6);
H=A([2,5,6],[2,5,6])

运行结果:

x =

     1
     0
     4
     6
     3
     4


n =

     6


d =

    1.7717


H =

     1     0     0
     0     1     0
     0     0     1
 

 







上一篇:没有了    下一篇:没有了

Copyright ©2019    计算数学达人 All Right Reserved.

技术支持:自助建站 | 领地网站建设 |短信接口 |燕窝 版权所有 © 2005-2019 lingw.net.粤ICP备16125321号 -5