function f=mnhf_lagrangeP(xt,ft,x) %MNHF_LAGRANGEP contructs a Lagrange polynomial from discrete data. % % (xt,ft) - discrete data (xt unequally-spaced) % x - x-coordinate of interpolated values. % f - y-coordinate of interpolated values. % % Usage: mnhf_lagrangeP([1,2,3.5,5],[1,4,3.5^2,25],[3,4]) nx = length(xt); ny = length(ft); m = length(x); if nx~=ny error(' (xt,ft) do not have the same number of values') end % Initialize. delt = zeros(1,nx); f = zeros(1,m); for k=1:m sum = 0; for i=1:nx delt(i)=1; for j=1:nx if j~=i delt(i) = delt(i)*(x(k)-xt(j))/(xt(i)-xt(j)); end end sum = sum + ft(i) * delt(i) ; end f(k) = sum; end