📄 newtonp.m
字号:
function [coe,DD]=newtonp(x,y)
%Newton 插值函数
%输入参数 x= [x0 x1 ... xN]
% y= [y0 y1 ... xN]
%输出参数 n= Newton系数
N=length(x)-1; %这里说明了给定的参数的个数就决定了数据拟合的阶数
DD=zeros(N+1,N+1);
DD(1:N+1,1)=y';
for k=2:N+1
for m=1:N+2-k
DD(m,k)=(DD(m+1,k-1)-DD(m,k-1))/(x(m+k-1)-x(m));
end
end
a=DD(1,:);
coe=a(N+1);
for k=N:-1:1
coe=[coe a(k)]-[0 coe*x(k)];
end
%补兖:牛顿拟合的原理
%对于给定的数据系列{(x0,y0),(x1,y1),...(xN,yN)}可以被下面的多项式循环引用,满足
%下面的N个数据系列{(x0,y0),(x1,y1),...(xN,yN)}的等式
%nN(x)=a0+a1(x-x0)+a2(x-x0)(x-x1)+...=nN-1(x)+aN(x-x0)(x-x1)...(x-xN-1)同时满足
%n0(x)=a0
%由此得到
%a0=y0
%a1=(y1-a0)/(x1-x0)=(y1-y0)/(x1-x0)=Df0
%a2=(Df1-Df0)/(x2-x0)=D^2f0
%aN=D^Nf0
%
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -