hey!! i am stuck here. i am new. help please.
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Andy
2020-10-22
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 个评论
Andy
2020-10-22
Sorry, I can't help with that, I'm not familiar with use of the interpolation functions.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!