好文档 - 专业文书写作范文服务资料分享网站

matlab牛顿插值法三次样条插值法

天下 分享 时间: 加入收藏 我要投稿 点赞

.

图5-1 n?5时Nn(xk)、Sn(xk)与原始值f(xk)的对比图

n=20时,整个区间中的Nn(xk)和f(xk)以及Sn(xk)和f(xk)的对比如下面两图所示:

图5-2 n?20时Nn(xk)与原始值f(xk)的对比图

.

.

图5-3 n?20时Sn(xk)与原始值f(xk)的对比图

通过对比以上三个图可得到如下结论:

1、随着n的增大,使用Newton插值多项式会出现龙格现象(对比图5-1和图5-2中的Nn(xk))。

2、随着n的增大,三次样条插值多项式Sn(x)将越来越接近被插值的函数(对比图5-1和图5-3中的Sn(xk))。

4、根据第3问中得到的数据可以很容易的得到E(Nn)和E(Sn),它们的值如下表所示:

n值 5 20 E(Nn) 0.43269 58.2781 E(Sn) 0.42348 0.00309 当n=20时,使用Newton插值多项式出现龙格现象,其最大误差达到58.2781,而相应的三次样条插值多项式Sn(x)的最大误差仅为0.00309。可见,n越大,Newton插值越可能偏离被插值函数,而相应的三次样条插值则能更接

.

.

近于被插值函数。

x=a:(b-a)/n:b; %插值节点 y=f(x);

plot(x,y,'b') %用蓝色线作被插函数图象 hold on

z=a:(b-a)/(2*n):b; n=length(x); for j=2:n for i=n:-1:j

y(i)=(y(i)-y(i-1))/(x(i)-x(i-j+1));%计算差商 end end u=y(n); m=length(z); for j=1:m for i=n-1:-1:1

u=y(i)+u*(z(j)-x(i)); %计算牛顿插值多项式的值 v(j)=u; end u=y(n); end

plot(z,v,'r') %用红色线作牛顿插值多项式图象

hold off

.

matlab牛顿插值法三次样条插值法

.图5-1n?5时Nn(xk)、Sn(xk)与原始值f(xk)的对比图n=20时,整个区间中的Nn(xk)和f(xk)以及Sn(xk)和f(xk)的对比如下面两图所示:图5-2n?20时Nn(xk)与原始值f(
推荐度:
点击下载文档文档为doc格式
5bkkd65gr52nsft0iuth97tl37kuug00rdw
领取福利

微信扫码领取福利

微信扫码分享