# Calculate f(4) using newton's interpolating polynomials of order 1 through 4. Choose your base points to attain good accuracy.

263 views (last 30 days)
Quinten on 1 Nov 2016
Answered: Tamir Suliman on 14 Dec 2016
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.

Quinten on 2 Nov 2016
i'm not sure, but i'm suppose to use newton's interpolating polynomial
Jan on 2 Nov 2016
@Quinten: We cannot guess, what f() is. Without knowing this detail, the question is not meaningful.
Walter Roberson on 2 Nov 2016
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?

Tamir Suliman on 14 Dec 2016
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