arnoldi.m

来自「麻省理工ComputationalMethod」· M 代码 · 共 16 行

M
16
字号
function [Q,H]=arnoldi(A,b,k)

m=size(A,1);
Q=zeros(m,k);
H=zeros(k+1,k);
Q(:,1)=b/norm(b);
for n=1:k
  v=A*Q(:,n);
  for j=1:n
    H(j,n)=Q(:,j)'*v;
    v=v-H(j,n)*Q(:,j);
  end
  H(n+1,n)=norm(v);
  Q(:,n+1)=v/H(n+1,n);
end

⌨️ 快捷键说明

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