Calculate f(4) using newton's interpolating polynomials of order 1 through 4. Choose your base points to attain good accuracy.
42 次查看(过去 30 天)
显示 更早的评论
x = [1 2 3 5 7 8];
y = [3 6 19 99 291 444];
I know I need a polval function like
xx = 1:8;
yy = polyval(xx,n);
I just don't know where to go from there.
6 个评论
Jan
2016-11-2
@Quinten: We cannot guess, what f() is. Without knowing this detail, the question is not meaningful.
Walter Roberson
2016-11-2
Is the assignment to do with being passed in a function handle, and you are to apply the interpolation for the passed function handle evaluated at parameter 4?
回答(1 个)
Tamir Suliman
2016-12-14
Check this code though I m not sure
function newton_interpolation(x,y,n,xx)
% x and y are two Row Matrices
% and xx is point of interpolation
% n is the order number which should be less than the matrix size
a(1) = y(1);
for k = 1 : n - 1
d(k, 1) = (y(k+1) - y(k))/(x(k+1) - x(k));
end
for j = 2 : n - 1
for k = 1 : n - j
d(k, j) = (d(k+1, j - 1) - d(k, j - 1))/(x(k+j) - x(k));
end
end
d
for j = 2 : n
a(j) = d(1, j-1);
end
Df(1) = 1;
c(1) = a(1);
for j = 2 : n
Df(j)=(xx - x(j-1)) .* Df(j-1);
c(j) = a(j) .* Df(j);
end
fp=sum(c)
plot(x,y)
title('Newton Interpolation ')
xlabel('x - value')
ylabel('y - value')
axis([min(x)-1 max(x)+1 0 max(y)+50])
grid on
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Polynomials 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!