How can I constrcut this matrix for a problem?
1 次查看(过去 30 天)
显示 更早的评论
采纳的回答
Torsten
2023-1-2
If x = [x0,x1,...,xn] is an 1x(n+1) row vector, you could use
M = zeros(n+1);
for i = 1:n+1
M(i,:) = psi(x(1:n+1)-x(i));
end
M = M - diag(diag(M)) + eye(n+1)
if psi is a function that accepts array input.
4 个评论
Torsten
2023-1-2
编辑:Torsten
2023-1-2
Save "untitled245.m" as "fun.m" in your working directory and try again.
Because your function psi satisfies psi(0)=1, you can remove the line
M = M - diag(diag(M)) + eye(n+1);
in the code.
If you want to use the code for other functions, too, that might not satisfy psi(0)=1, better keep it.
Maybe besides x, you should pass "psi" to "fun" as a function handle to keep the code more flexible.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!