MATLAB中调用牛顿插值应该用什么函数?

下面是函数文件代码,可以自己创建一个函数文件保存。

函数s =牛顿(x,y,x0,nn)

%牛顿插值,其中x是插值点,y是其函数值。

%x0是待插值点的x坐标值,nn是牛顿插值多项式的阶。

nx =长度(x);

ny =长度(y);

如果nx~=ny

警告(“向量x和y应该有相同的长度”)

返回

结束

m =长度(x0);

%根据公式计算所需插值点x0的每个元素。

因为i=1:m

t = 0.0

j = 1;

YY = y;

kk = j;

而(kk & lt=nn)

kk = kk+1;

对于k=kk:nx

YY(k)=(YY(k)-YY(kk-1))/(x(k)-x(kk-1));

结束

结束

t = YY(1);

对于k=2:nn

u = 1.0;

jj = 1;

while(jj & lt;k)

u = u *(x0(I)-x(jj));

jj = jj+1;

结束

t = t+YY(k)* u;

结束

s(I)= t;

结束