数值分析试验报告_第1页
数值分析试验报告_第2页
数值分析试验报告_第3页
数值分析试验报告_第4页
数值分析试验报告_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验报告实验工程名称函数逼近与快速傅里叶变换实验室数学实验室所属课程名称数值逼近实验类型算法设计实验日期班级学号姓名成绩专业资料实验概述:【实验目的及要求】本次实验的目的是熟练?数值分析?第三章“函数逼近与快速傅里叶变换的相关内容,掌握切比雪夫多项式、勒让德多项式、n次曲线拟合以及快速傅里叶变换.本次试验要求编写牛顿多项式插值,三次样条插值,拉格朗日插值的程序编码以及画图,并在MATLAB软件中去实现.【实验原理】?数值分析?第三章“函数逼近与快速傅里叶变换的相关内容,包括: 切比雪夫多项式、 勒让德多项式、n次曲线拟合以及快速傅里叶变换的相应算法和相关性质.【实验环境】(使用的软硬件)软件:

2、MATLAB2022a硬件:电脑型号:联想Lenovo昭阳E46A笔记本电脑操作系统:Windows8专业版处理器:Intel(R)Core(TM)i3CPUM3502.27GHz2.27GHz专业资料实验内容:【实验方案设计】第一步,将书上关于切比雪夫多项式、 勒让德多项式、n次曲线拟合以及快速傅里叶变换的内容转化成程序语言,用MATLAB实现;第二步,分别用切比雪夫多项式、勒让德多项式、n次曲线拟合以及快速傅里叶变换求解不同的问题.【实验过程】(实验步骤、记录、数据、分析)实验的主要步骤是:首先分析问题,根据分析设计MATLAB程序,利用程序算出问题答案,分析所得答案结果,再得出最后结论.

3、实验一:编写程序实现-1,1上n阶切比雪夫多项式,并作画(n=0,1,10在一个figure中).要求:输入Chebyshev(-1,1,n),输出如anxn+an-1xn-1+多项式.在MATLAB的Editor中建立一个M-文件,输入程序代码,实现切比雪夫多项式的程序代码如下:functionPn=Chebyshev(n,x)symsx;ifn=0Pn=1;elseifn=1Pn=x;专业资料elsePn=expand(2*x*Chebyshev(n-1)-Chebyshev(n-2);endendx=-1:0,01:1;A=sym2poly(Pn);yn=polyval(A,x);plo

4、t(x,yn);holdonendend在commandWindows中输入命令:Chebyshev(10),得出的结果为:Chebyshev(10)ans=512*xA10-1280*xA8+1120*xA6-400*xA4+50*xA2-1并得到Figure,图像如下:专业资料实验二:编写程序实现-1,1上n阶勒让德多项式,并作画(n=0,1,10在一个巾gure中).要求:输入Legendre(-1,1,n),输出如anxn+an-ixn-1+多项式.在MATLAB的Editor中建立一个M-文件,输入程序代码,实现勒让德多项式的程序代码如下:functionPn=Legendre(n,

5、x)symsx;ifn=0Pn=1;elseifn=1Pn=x;elsePn=expand(2*n-1)*x*Legendre(n-1)-(n-1)*Legendre(n-2)/(n);end专业资料x=-1:0.1:1;A=sym2poly(Pn);yn=polyval(A,x);plot(x,yn,-o);holdonendend在commandWindows中输入命令:Legendre(10),得出的结果为:Legendre(10)ans=(46189*xA10)/256-(109395*xA8)/256+(45045*xA6)/128(15015*xA4)/128+(3465*xA2)

6、/256-63/256并得到Figure,图像如下:专业资料实验三:利用切比雪夫零点做拉格朗日插值,并与以前拉格朗日插值结果比较.在MATLAB的Editor中建立一个M-文件,输入程序代码,实现拉格朗日插值多项式的程序代码如下:functionC,D=lagr1(X,Y)n=length(X);D=zeros(n,n);D(:,1)=Y;forj=2:nfork=j:nD(k,j)=(D(k,j-1)-D(k-1,j-1)/(X(k)-X(k-j+1);endendC=D(n,n);fork=(n-1):-1:1C=conv(C,poly(X(k);m=length(C);C(m)=C(m)

7、+D(k,k);end在commandWindows中输入如下命令:clear,clf,holdon;k=0:10;专业资料X=cos(21-2*k)*pi)./22);%这是切比雪夫的零点Y=1./(1+25*XA2);C,D=lagr1(X,Y);x=-1:0.01:1;y=polyval(C,x);plot(x,y,X,Y,.);gridon;xp=-1:0.01:1;z=1./(1+25*xp.A2);plot(xp,z,r)得到Figure,图像如下所示:比拟后发现,使用切比雪夫零点做拉格朗日插值不会发生龙格现象.1实验四:对于给定函数f(x)=2在区间-1,1上取为=-1+0.2i

8、(i=0,1,110),125x试求3次曲线拟合,试画出拟合曲线并打印出方程,与第2章计算实习题2的专业资料结果比拟.在MATLAB的Editor中输入程序代码,实现3次曲线拟合的程序代码如下:x=-1:0.2:1;y=1./(1+25*xA2);p=polyfit(x,y,3);yp=polyval(p,x);plot(x,y,o-,x,yp,*-)fp=poly2sym(p)commandWindows中输出:fp=(8299760523663595*x)/649037107316853453566312041152512-(3305*xA2)/5746-(572862092712169*

9、xA3)/81129638414606681695789005144064+4360609662300613/9007199254740992并得到Figure,图像如下:专业资料第2章计算实习题2的结果如下:牛顿插值多项式:216ft* *! !I IJfHliHliR RIhIh*J J . .*-i-i1 1 fsymsx;fx=xA2*cos(x)an,bn,f=fseries(fx,x,16,-pi,pi)得到结果如下:an=-4,piA2/3+1/2,-20/9,5/8,-68/225,13/72,-148/1225,25/288,-260/3969,41/800,-404/980

10、1,61/1800,-580/20449,85/3528,-788/38025,113/6272,-1028/65025bn=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0-(68*cos(4*x)/225+(25*cos(7*x)/288-(404*cos(10*x)/9801+(85*cos(13*x)/3528-(788*cos(14*x)/38025+(113*cos(15*x)/6272-(1028*cos(16*x)/65025+cos(x)*(piA2/3+1/2)-2【结论】结果利用切比雪夫多项式零点进行高次多项式插值可防止龙格现象,可保证整个专业资料区间上收敛.函数给定的一组可能不精确表示函数的数据时,我们通常考虑用最小二乘的曲线拟合.数据假设是呈周期性,那么考虑用三角插值,用快速傅里叶进行计算.【小结】f=(5*cos(3*x)/8(13*cos(5*x)/72(260*cos(8*x)/3969(61*cos(11*x)/1800-(20*cos(2*x)/9(148*cos(6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论