househ.m

来自「用matlab写的一些数值算法」· M 代码 · 共 10 行

M
10
字号
function  u = househ(x)
% Compute Householder vector u so that (I - 2u*u')*x = N*e1,
% where  |N| = ||x||2  and e1 is the first unit vector.

% Version 2.6.2004.  INCBOX 

v = x;   nx = norm(x);
if  x(1) < 0,  v(1) = x(1) - nx;
else,          v(1) = x(1) + nx; end
u = (1/sqrt(2*nx*(nx + abs(x(1))))) * v;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?