% ランダム Hessenberg 行列 function ret = rand_h(n) ret = triu(rand(n,n)) + diag(rand(n-1,1),-1); % ランダム三重対角行列 function ret = rand_t(n) ret=diag(rand(n,1),0)+diag(rand(n-1,1),1)+diag(rand(n-1,1),-1); % ランダム実対称三重対角行列 function ret = rand_st(n) u=rand(n-1,1); ret=diag(rand(n,1),0)+diag(u,1)+diag(u,-1); % ランダム実対称行列 function ret = rand_s(n) a=rand(n,n); ret = (a+a')/2; % QR 変換 (回数指定) function QR = qr_iteration(a,n) QR = a; for i=1:n [q r]=qr(QR); QR=r*q; end % 下三角部分のノルム function n = norm_l(a) n = norm(a-triu(a));