How can I constrcut this matrix for a problem?

1 visualizzazione (ultimi 30 giorni)

Risposta accettata

Torsten
Torsten il 2 Gen 2023
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 Commenti
Filippos Georgios Sarakis
Amazing, one last thing that I dont get, how can I make this code into a function so that I can put any input vector x and the output would be the conversion number of the matrix M?
Torsten
Torsten il 2 Gen 2023
Modificato: Torsten il 2 Gen 2023
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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Linear Algebra in Help Center e File Exchange

Prodotti


Release

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by