How can I constrcut this matrix for a problem?

1 visualización (últimos 30 días)
Filippos Georgios Sarakis
Filippos Georgios Sarakis el 2 de En. de 2023
Editada: Torsten el 2 de En. de 2023

Respuesta aceptada

Torsten
Torsten el 2 de En. de 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 comentarios
Filippos Georgios Sarakis
Filippos Georgios Sarakis el 2 de En. de 2023
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 el 2 de En. de 2023
Editada: Torsten el 2 de En. de 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.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Linear Algebra en Help Center y File Exchange.

Productos


Versión

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by