计算方法-实验一牛顿插值法.doc
文本预览下载声明
计算方法课程设计报告
实验一 牛顿K次插值多项式
姓名:黄仁化
学号:031010151551017
班级:计算机科学与技术2004班
日期 :二○○六年六月十日
一、实验目的:
1、掌握牛顿插值法的基本思路和步骤。
培养编程与上机调试能力。
二、牛顿插值法基本思路与计算步骤:
给定插值点序列(。构造牛顿插值多项式。输入要计算的函数点并计算的值,利用牛顿插值公式,当增加一个节点时,只需在后面多计算一项,而前面的计算仍有用;另一方面的各项系数恰好又是各阶均差,而各阶均差可用均差公式来计算。
牛顿插值法计算步骤:
输入值及(;要计算的函数点。
对给定的由
计算的值。
3.输出。
三:程序流程图:
四:程序清单:
function[c, d]=newpoly(x, y)
%牛顿插值的MATLAB实现
%这里 x为n个节点的横坐标所组成的向量,y为纵坐标所组成的向量。
%c为所求的牛顿插值多项式的系数构成的向量。
n=length(x);%取x的个数。
d=zeros(n, n);
d(: , 1)=y;
for j=2 : n
for k=j : n
d(k, j)=(d(k, j-1) - d(k-1, j-1)) / (x(k)-x(k-j+1));
end
end
c =d(n, n);
for k=(n-1) : - 1 : 1
c =conv(c, poly(x(k)));
m=length(c);
c(m)=c(m)+d(k, k);
end
五、测试数据与结果:
测试数据:(第三章习题第三题第2题)
f(x)=lnx的数值如表所示, 构造牛顿插值X 0.4 0.5 0.6 0.7 0.8 lnx -0.916291 -0.693147 -0.510826 -0.357765 -0.223144 解Y0=-0.916291, y1=-0.693147, y2=-0.510826, y3=-0.357765, y4=-0.223144
newpoly([0.4,0.5,0.6,0.7,0.8],[ -0.916291, -0.693147, -0.510826, -0.357765, -0.223144])
计算结果如下:
ans =
-0.3096 2.6083 -5.4861 5.6921 -2.4744
由此看出所求的牛顿多项式为:
P(x)= -0.3096x4+2.6083x3-5.4861x2+5.6921x-2.4744
P(0.53)= -0.6347。
六、小结:
本实验通过MATLAB编程实现求解牛顿K次插值多项式,能加深对牛顿插值法的基本思路和步骤的理解。
1
姓名:黄仁化 学号:031010151551017 实验一 牛顿K次插值多项式
显示全部