1、数值分析报告六实验报告 课程名称: 数值分析 姓 名: xxx 学 号: xxxxxx 任课老师: xxx 实验一:插值法的应用实验名称:牛顿插值法和样条差值实验目的与要求:学会使用牛顿插值法和样条差值法实验内容:1.已知函数在下列各点的值为0.20.40.60.81.0f()0.980.920.810.640.38试用4次牛顿插值多项式及三次样条函数S(x)对数据进行插值。用图给出(),=0.2+0.08i,i=0,1,11,10,及S(x)。2.在区间-1,1上分别取用两组等距节点对龙格函数f(x)=)做多项式及三次样条差值,对每个n值,分别画出差值函数及f(x)的函数.实验环境与器材:9
2、#505 一人一机实验过程(步骤)或程序代码:第一题: 程序:牛顿插值程序:function L=Newton(a,b,a0)syms xn=length(a);L=b(1);b1=0;l=1;for i=1:n-1 for j=i+1:n b1(j)=(b(j)-b(i)/(a(j)-a(i) end c(i)=b1(i+1); l=l*(x-a(i); L=L+c(i)*l; simplify(L); b=b1;endif(i=n-1) if(nargin=3) L=subs(L,x,a0); else L=collect(L); L=vpa(L,6); endenda=0.2 0.4 0
3、.6 0.8 1.0;b=0.98 0.92 0.81 0.64 0.38;a0=0.2 0.28 1.08 1.0L=Newton(a,b,a0)L=Newton(a,b)b0=interp1(a,b,a0,spline)plot(a0,b0,-ro)图像:三次样条函数S(x)插值程序为:a=0.2 0.4 0.6 0.8 1.0;b=0.98 0.92 0.81 0.64 0.38;a0=0.2 0.28 1.08 1.0b0=interp1(a,b,a0,spline)plot(a,b,rs,a0,b0)图像:y x第二题程序:Lagrange多项式插值程序为:function L=la
4、grange(a,b,a0)syms xn=length(a)L=0.0for i=1:n l=b(i); for j=1:i-1 l=l.*(x-a(j)/(a(i)-a(j); end for j=i+1:n l=l.*(x-a(j)/(a(i)-a(j); end L=L+l; simplify(L);endL=collect(L)L=vpa(L,6)L=subs(L,x,a0);end clear allsubplot(1,2,1);a=linspace(-1,1,10);b=1./(1+25.*a.2);L=Lagrange(a,b)b0=subs(L,x,a);plot(a,b0,
5、rs)hold onplot(a,b)title(n=10时的插值函数);subplot(1,2,2);a=linspace(-1,1,20);b=1./(1+25.*a.2);L=Lagrange(a,b)b0=subs(L,x,a);plot(a,b0,rs);hold on;plot(a,b)title(n=20时的插值函数);图像:y x三次样条插值函数插值程序:subplot(1,2,1);a=linspace(-1,1,5);b=1./(1+25.*a.2);a0=linspace(-1,1,10);b0=spline(a,b,a0);plot(a,b,rs,a0,b0)hold onplot(a,b,G)title(n=10时的插值函数);subplot(1,2,2);a=linspace(-1,1,5);b=1./(1+25.*a.2);a0=linspace(-1,1,20);b0=spline(a,b,a0);plot(a,b,rs,a0,b0)hold onplot(a,b,G)title(n=10时的插值函数);图像:y x实验结果与分析:第一题结果:L =0.833333*x3 - 0.520833*x4 - 1.10417*x2 + 0.191667*x + 0.98b0 = 0.9800 0.9617 0.2430 0.3800成绩:教师签名:月 日
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2