hey!! i am stuck here. i am new. help please.
2 views (last 30 days)
Show older comments
my task is to do this:
i have wrote the codde as:
clc
clear all
xdata=linspace(-1,1,9);
ydata=1./(1+14*xdata.^2);
x=linspace(-1,1,1000);
y=lagrangeInterp(xdata,ydata,x);
plot(x,y,'b',xdata,ydata,'*r');
function [yhat]=lagrangeInterp(x,y,interpx)
X=x;
f=y;
x=interpx;
l=0;
for i=1:length(X)
li=1;
for j=1:length(X)
if i~=j
li=(li).*((x-X(j))/(X(i)-X(j)));
end
end
l=(l)+((li)*f(i));
end
yhat=l;
end
Can you tell me what will happen if we use nodes that are not equispaced in x. Instead,
use the Chebyshev nodes {xk}given by
xk = -cos(pi * k/n); k = 0, 1, ..... ,n
0 Comments
Accepted Answer
Andy
on 22 Oct 2020
You do not say why this is wrong, the code runs. Is there an issue with the number of nodes and the linspace. The question says use n=9 (i.e. 10 nodes) but using xdata=linspace(-1,1,9); only generates 9 nodes. If you change to
xdata=linspace(-1,1,10);
This gives 10 nodes and perhaps the answer you are looking for.
5 Comments
Andy
on 22 Oct 2020
Sorry, I can't help with that, I'm not familiar with use of the interpolation functions.
More Answers (0)
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!