我应该通过以下输入创建Hilbert-Matrix H:
希尔伯特(N = 4):
这就是我尝试过的。这是垃圾。有人可以帮帮我吗?
function H = hilbertmatrix(n)
i=1;
for i=1:n;`
H=[(1:(1/i+1)) (1:(1/i+1);
(1:(1/i+1)) (1:(1/i+1)]; `
end
endfunction
答案 0 :(得分:0)
只需使用hilb
即可hilb(4)
ans =
1.00000 0.50000 0.33333 0.25000
0.50000 0.33333 0.25000 0.20000
0.33333 0.25000 0.20000 0.16667
0.25000 0.20000 0.16667 0.14286
答案 1 :(得分:0)
好的,我想我明白了。所以我会回答我自己的问题。
`function [H,h] = hilbertmatrix(n)
J = 1:n;
J = J(ones(n,1),:);
I = J';
E = single(ones(n,n));
H = E./(I+J-1); %H will give the hilbertmatrix in accordance to the
%code above
h = hilb(n); %h is for reference.
end
endfunction`