ImageVerifierCode 换一换
格式:DOC , 页数:8 ,大小:303.69KB ,
资源ID:10642042      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-10642042.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数值分析第二次程序题.doc)为本站会员(精品资料)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

数值分析第二次程序题.doc

1、数值分析第二次程序作业 1数值分析第二次程序题插值法1.对 Runge 函数 在区间-1,1作下列插值逼近,并和 R(x)的图像进行比较,21()5Rx并对结果进行分析。(1) 以 为节点,Newton 插值-1,0.,ixhi图 1 -0.7,0.7上的 Newton 插值 图 2 -1,1上的 Newton 插值由上图可以看出,在区间-0.7,0.7上,插值多项式可以比较好地逼近被插值函数。而当区间改为-1,1时,边界附近插值多项式与被插值函数的差别很大。即出现了Runge现象。由于边界接近60的误差,图像中间部分的变化几乎不可见。主要原因是被插值函数的任意阶导数不能达到一致有界。其插值余

2、项不趋近零。插值多项式不能收敛到被插值函数。(1)1()!nnnfRxx(牛顿差值函数function f=niudun(z,N,n)f=N(1,1);x=-1:0.1:1;for k=2:n a=1; for r=1:(k-1) a=a*(z-x(r); end f=f+N(k,k)*a; end主程序x=-1:0.1:1;n=length(x);for i=1:ny(i)=1/(1+25*x(i)*x(i);endN=zeros(n,n); N(:,1)=y; for j=2:n for k=j:n N(k,j)=(N(k,j-1)-N(k-1,j-1)/(x(k)-x(k-j+1); e

3、nd end for t=1:nc(t)=N(t,t);endz=-1:0.001:1;m=size(z,2);for i=1:mRunge(i)=1/(1+25*z(i)*z(i);f(i)=niudun(z(i),N,n);endplot(z,Runge,k,z,f,r)数值分析第二次程序作业 2(2)以 为节点,Lagrange 插值21cos(,0,24iixi) ( , , , )图 3 以 Chebyshev 多项式零点为插值点 图 4 以等距节点为插值点如图所示,使用 Chebyshev 多项式零点构造的 Lagrange 插值多项式比较接近原函数,没有出现 Runge 现象,图

4、 4 为第一小问中的等距节点插值,可以明显的看出以 Chebyshev多项式零点为插值点的优势。主要原因是其多项式误差为 ,(1)()-2(!nnnfxLf(在区间内一致收敛。Lagrange 函数function lag=lagrange(z,x,y)for i=1:21l(i)=1;for j=1:21if j=il(i)=l(i)*(z-x(j)/(x(i)-x(j); endendendl=l;lag=y*l;主程序for i=1:21x(22-i)=cos(2*i-1)*pi/42);endfor i=1:21y(i)=1/(1+25*x(i)*x(i);endz=-1:0.001:

5、1;m=length(z);for i=1:mf(i)=1/(1+25*z(i)*z(i);lag(i)=lagrange(z(i),x,y);endplot(z,f,k,z,lag,r)(3)以 为节点,分段线性插值-1,0.,2ixhi如下图所示,分段线性插值多项式比较接近原函数,没有出现 Runge 现象。但是可以明显地看到在区间-0.1,0.1中,线性插值的拟合度较低,因为这一部分的函数的曲率较大,也就是二阶导数较大。由误差估计公式 可知这一部分的误差2h)max8nRf(数值分析第二次程序作业 3较大。图 5 线性插值(4)以 为节点,三次自然样条插值-1,0.,2ixhi图 6 三

6、次自然样条插值函数图像由上图可以看出,三次样条插值函数的曲线及其光滑,图中并没有将插值函数连起来,否则基本无法分辨出原函数和插值函数的图像,说明得到的函数十分接近被插值函数。另外,题目要求自然样条插值,也就是再两端的二阶导数为 0,需在变成过程中加以注意。x=-1:0.1:1;n=length(x);for i=1:ny(i)=1/(1+25*x(i)*x(i);endfor i=1:n-1h(i)=x(i+1)-x(i);endfor i=1:n-2u(i)=h(i)/(h(i+1)+h(i);r(i)=1-u(i);endG=zeros(n-2,n-2);for i=1:n-2G(i,i)

7、=2;end数值分析第二次程序作业 4for i=2:n-2G(i,i-1)=u(i-1);G(i,i+1)=r(i-1);endd=zeros(1,n-2);for i=1:n-2d(i)=6*(y(i+2)-y(i+1)/h(i+1)-(y(i+1)-y(i)/h(i)/(h(i+1)+h(i);endd=d;M=Gd;M=0;M;0;for i=1:n-1z=x(i):0.01:x(i+1);m=length(z);for j=1:ms(j)=M(i)*(x(i+1)-z(j)3/0.6+M(i+1)*(z(j)-x(i)3/0.6+(y(i)-M(i)*0.01/6)*(x(i+1)-

8、z(j)/0.1+(y(i+1)-M(i+1)*0.01/6)*(z(j)-x(i)/0.1;endplot(z,s,* r,MarkerSize,3)hold onendhold onz=-1:0.01:1;for i=1:201f(i)=1/(1+25*z(i)*z(i);endplot(z,f,b)2.对函数:在区间-1,1 作下列插值逼近,并和被插值函数的图像进行比较,并对结果进行分析。(1) 以 为节点,Newton 插值-1,0.,2ixhi首先对函数进行简要分析,函数 f(x)是分段函数,并且在 x=0 处不连续,对于插值计算,只需要函数值,所以除了函数作图和计算函数值有所不同以

9、外,程序的主体部分没有明显改动,所以将本题程序统一放在最后。本小题中数值分析第二次程序作业 5图 7 -1,1上的 Newton 插值 图 8 -0.7,0.7上的 Newton 插值由上图可以看出,在区间-0.7,0.7上,插值多项式可以已经无法较好地逼近被插值函数了,而当区间改为-1,1时,边界附近插值多项式与被插值函数的差别迅速扩大。即出现了 Runge 现象。由于边界接近 1000 的误差,图像中间部分的变化几乎不可见。相比于第一题 Runge 现象更为明显。主要原因是被插值函数不连续,导致其插值余项 可能无穷大。(1)1()!nnnfRxx(插值多项式不能收敛到被插值函数。(2)以

10、为节点,Lagrange 插值21cos(,0,24iixi) ( , , , )图 9 以 Chebyshev 多项式零点为插值点如图所示,使用 Chebyshev 多项式零点构造的 Lagrange 插值多项式比较接近原函数,没有出现 Runge 现象,并且可以看出,在不连续点位置插值效果一般,但是在函数两端的拟合效果明显要好,说明使用 Chebyshev 多项式零点构造的 Lagrange 插值多项式在连续函数上的应用效果更佳。(3)以 为节点,分段线性插值-1,0.,2ixhi数值分析第二次程序作业 6图 10 21 个插值点线性插值 图 11 201 个插值点线性插值如下图所示,分段

11、线性插值多项式比较接近原函数,没有出现 Runge 现象。此例中我们看到了线性插值的强大优势,当原函数较为光滑,曲率较小,即使是分段函数对线性插值的影响也极为有限,当插值点个数扩大 10 倍达到 201 个时,可以明显的看出线性插值的优势所在。(4)以 为节点,三次自然样条插值-1,0.,2ixhi图 12 三次自然样条插值函数图像由上图可以看出,三次样条插值函数的曲线及其光滑,但是与其他多项式拟合一样在不连续点处存在较大的误差,但是与第一二小问中的 Lagrange 插值多项式相比,三次样条插值可以更快的脱离不连续点的影响,并在其他位置上表现出很好的拟合效果。综合以上 2 题我们可以初步得出

12、这样的结论:当函数连续光滑,使用 Chebyshev 多项式零点构造的 Lagrange 插值多项式可以有效地数值分析第二次程序作业 7避免 Runge 现象,但三次样条插值函数的曲线更为优秀。但是当函数出现不连续点时,分段线性插值的优势明显,可以在不连续段处达到很好的拟合效果,并且可以迅速脱离不连续点的影响,所以在做函数插值时在斜率很大的部分可以考虑使用分段线性插值,其他部分采用三次样条效果最好。牛顿插值x=-1:0.1:1;n=length(x);for i=1:10y(i)=sin(pi*x(i);endfor i=11:15y(i)=cos(pi*x(i);endfor i=15:ny

13、(i)=0;endN=zeros(n,n); N(:,1)=y; for j=2:n for k=j:n N(k,j)=(N(k,j-1)-N(k-1,j-1)/(x(k)-x(k-j+1); end end for t=1:nc(t)=N(t,t);endz=-0.1:0.01:0.1;m=length(z);for i=1:mnd(i)=niudun(z(i),N,n);endv=linspace(-1,0,100);u=sin(pi*v);plot(v,u,k)hold onv=linspace(0,0.5,50);u=cos(pi*v);plot(v,u,k)hold onv=lins

14、pace(0.5,1,50);u=0;plot(v,u,k)hold onplot(z,nd,r)以 Chebyshev 多项式零点为插值点for i=1:21x(22-i)=cos(2*i-1)*pi/42);endfor i=1:21if x(i)0.5y(i)=0;else y(i)=cos(pi*x(i);endendz=-1:0.001:1;m=length(z);for i=1:mlag(i)=lagrange(z(i),x,y);endv=linspace(-1,0,100);u=sin(pi*v);plot(v,u,k)hold onv=linspace(0,0.5,50);u

15、=cos(pi*v);plot(v,u,k)hold onv=linspace(0.5,1,50);u=0;plot(v,u,k)hold onplot(z,lag,r)线性插值x=-1:0.01:1;for i=1:201if x(i)0.5y(i)=0;else y(i)=cos(pi*x(i);endendz=-1:0.001:1;n=length(z);m=floor(z+1)/0.01)+1;for i=1:n-1l(i)=y(m(i)+(y(m(i)+1)-y(m(i)/(x(m(i)+1)-x(m(i)*(z(i)-x(m(i);endl(2001)=y(201);f(2001)

16、=y(201);v=linspace(-1,0,100);u=sin(pi*v);plot(v,u,k)数值分析第二次程序作业 8hold onv=linspace(0,0.5,50);u=cos(pi*v);plot(v,u,k)hold onv=linspace(0.5,1,50);u=0;plot(v,u,k)hold onplot(z,l,r)三次样条插值x=-1:0.1:1;n=length(x);for i=1:21if x(i)0.5y(i)=0;else y(i)=cos(pi*x(i);endendfor i=1:n-1h(i)=x(i+1)-x(i);endfor i=1:

17、n-2u(i)=h(i)/(h(i+1)+h(i);r(i)=1-u(i);endG=zeros(n-2,n-2);for i=1:n-2G(i,i)=2;endfor i=2:n-2G(i,i-1)=u(i-1);G(i,i+1)=r(i-1);endd=zeros(1,n-2);for i=1:n-2d(i)=6*(y(i+2)-y(i+1)/h(i+1)-(y(i+1)-y(i)/h(i)/(h(i+1)+h(i);endd=d;M=Gd;M=0;M;0;for i=1:n-1z=x(i):0.01:x(i+1);m=length(z);for j=1:ms(j)=M(i)*(x(i+1)-z(j)3/0.6+M(i+1)*(z(j)-x(i)3/0.6+(y(i)-M(i)*0.01/6)*(x(i+1)-z(j)/0.1+(y(i+1)-M(i+1)*0.01/6)*(z(j)-x(i)/0.1;endplot(z,s,* r,MarkerSize,3)hold onendv=linspace(-1,0,100);u=sin(pi*v);plot(v,u,k)hold onv=linspace(0,0.5,50);u=cos(pi*v);plot(v,u,k)hold onv=linspace(0.5,1,50);u=0;plot(v,u,k)hold on

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报