拉格朗日插值

function f=lagfun(x)
a=[0.2,0.4,0.6,0.8,1.0];
b=[0.98,0.92,0.81,0.64,0.38];
for i=1:5
L(i)=1;
for j=1:5
if j~=i
L(i)=填空 ;
end
end
end
f=0;
for i=1:5
f=填空 ;
end

程序 x0=[0.2,0.4,0.6,0.8,1.0]; y0=[0.98,0.92,0.81,0.64,0.38];
plot(x0,y0,‘o’) hold on grid on fplot(‘lagfun’,[0,1]);hold on
legend(‘离散点’,‘Lagrange插值’)

实现效果

牛顿插值

function y=newton(x0,y0,x) %牛顿插值法, %x0为插值点的向量,y0为插值点处的函数值向量,x为未知的点向量
n=length(x0); m=length(x); d=zeros(n,n); %d为差商表矩阵 for j=1:n
d(j,1)=y0(j); %差商表第一列 end for j=2:n %差商表为下三角矩阵 for i=j:n
d(i,j)=(d(i,j-1)-d(i-1,j-1))./(x0(i)-x0(i-j+1)); %求差商表矩阵中各值 end end for k=1:m
z=x(k);
result=d(1,1);
temp=1; for i=2:n
temp=temp*填空 ;
result=填空 ; end y(k)=result; end

实现效果