Help plotting interpolation ploynomial.

Hi, I was asked to plot psi_n(x) = (x-x_0)(x-x_1)...(x-x_n) for n = 3,7,10,17 evenly distributed nodes in [-5,5] with resolution 0.01. Below is my code:
x=-5:0.01:5;
n=[3 7 10 17];
for j=1:4
node=-5;
psi=1;
while (node <= 5)
psi=psi.*(x-node);
node=node + 10/n(j);
end
subplot(2,2,j);
plot(psi)
hold on
end
Which doesn't quite yield the desired output. Or does it? In any case, it doesn't seem to match what I am getting via using Wolfram. My question is why and, of course, how may I correct it? I'd sincerely appreciate your assistance. Thanks in advance!

2 comentarios

Simon
Simon el 1 de Nov. de 2013
Hi!
What is x_0, x_1, ...?
Yuval
Yuval el 1 de Nov. de 2013
The nodes. x_0 is x index zero.

Iniciar sesión para comentar.

Respuestas (1)

Matt J
Matt J el 1 de Nov. de 2013
Editada: Matt J el 1 de Nov. de 2013
node=linspace(-5,5,n);
p=poly(node);
f=@(z) polyval(p,z);
x=-5:0.01:5;
plot(x,f(x));

4 comentarios

Yuval
Yuval el 1 de Nov. de 2013
Hi Matt, Thank you for your reply. Would you kindly care to explain your code? Also, did you realise I wasn't trying to actually plot the interpolation polynomial but merely the product function psi? I just tried using your code and it yielded the following error message: ??? Error using ==> mrdivide Matrix dimensions must agree.
Error in ==> linspace at 22 y = [d1+(0:n-2)*(d2-d1)/(floor(n)-1) d2]; Error in ==> psierror at 2 node=linspace(-5,5,n);
Matt J
Matt J el 1 de Nov. de 2013
Editada: Matt J el 1 de Nov. de 2013
Also, did you realise I wasn't trying to actually plot the interpolation polynomial but merely the product function psi?
From your description of psi_n(x), it appears to be a polynomial function of x with roots at the nodes x_0,...,x_n. That is what I have given you.
I just tried using your code and it yielded the following error message:
In my code, n is assumed to be a scalar. It runs error-free for me when this is the case.
Victor McNstein
Victor McNstein el 20 de Mzo. de 2021
Hello Matt. How does on combine your code with Yuval's initial work, for better results?
Matt J
Matt J el 21 de Mzo. de 2021
I do not see what Yuval thought was incomplete about my code. I think my code already fulfills the entire task.

Iniciar sesión para comentar.

Categorías

Más información sobre Polynomials en Centro de ayuda y File Exchange.

Preguntada:

el 1 de Nov. de 2013

Comentada:

el 21 de Mzo. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by