1、最佳平方逼近多项式的收敛性 实验报告 数值实验7.2 最佳平方逼近多项式的收敛性 学号:P200909071 姓名:孙闯 一、实验目的 若已知给定区间[a,b]上的连续函数f(x),寻找一个简单、易于计算的函数P(x)来代替f(x)使用,即用P(x)去近似f(x),这就是函数逼近要研究的问题。而逼近的方法有很多,本实验中主要讨论最佳平方逼近。 二、实验题 用matlab求解f(x)=| x |在区间[-1,1]上关于Legendre 多项式和Chebychev多项式的展开式。 分别取展开式的4 次、8 次…截断多项式,画出f(x)及各次截断多项式的图像,观察收敛性。
2、三、实验结果 Ⅰ、①f(x)=| x |在区间[-1,1]上关于Legendre 多项式的4次截断多项式f(x)=5/128+105/64*x^2-105/128*x^4 收敛性:收敛。 拟合图像如图1。 图1 Legendre正交多项式四次截断多项式拟合 ②f(x)=| x |在区间[-1,1]上关于Legendre 多项式的8次截断多项式 f(x)=2205/32768+24255/8192*x^2-105105/16384*x^4+63063/8192*x^6-109395/32768*x^8 收敛性:收敛。 拟合图像如图2。 图2 Legendre正交
3、多项式八次截断多项式拟合 ③f(x)=| x |在区间[-1,1]上关于Legendre 多项式的16次截断多项式 f(x)=78217425/2147483648+1486131075/268435456*x^2-24273474225/536870912*x^4+66994788861/268435456*x^6-854525368125/1073741824*x^8+398778505125/268435456*x^10-860175122625/536870912*x^12+247945660875/268435456*x^14-472749726735/2147483648*x^
4、16 收敛性:收敛。 拟合图像如图3。 图3 Legendre正交多项式十六次截断多项式拟合 Ⅱ、①f(x)=| x |在区间[-1,1]上关于Chebychev多项式的4次截断多项式。 f(x)=5734161139222659/45035996273704960+17202483417667977/11258999068426240*x^2-1911387046407553/2814749767106560*x^4 收敛性:收敛。 拟合图像如图4。 图4 Chebyshev四次截断多项式拟合 ②f(x)=| x |在区间[-1,1]上关于Chebyshev多项式
5、的8次截断多项式。 f(x)=1911387046407553/27021597764222976+9556935232037765/3377699720527872*x^2-9556935232037765/1688849860263936*x^4+13379709324852871/2111062325329920*x^6-1911387046407553/738871813865472*x^8 收敛性:收敛。 拟合图像如图5。 图5 Chebyshev八次截断多项式拟合 ③f(x)=| x |在区间[-1,1]上关于Chebyshev多项式的16次截断多项式。 f(x)=
6、5734161139222659/153122387330596864+51607450253003931/9570149208162304*x^2-200695639872793065/4785074604081152*x^4+1324591223160434229/5981343255101440*x^6-2838409763915216205/4186940278571008*x^8+273328347636280079/224300372066304*x^10-47437151242660179/37383395344384*x^12+6616339776026145/93458488
7、36096*x^14-1911387046407553/11682311045120*x^16 收敛性:收敛。 拟合图像如图6。 图6 Chebyshev十六次截断多项式拟合 四、实验分析 1、由实验可知,用Legendre正交多项式在区间[-1,1]上逼近函数f(x)=| x |,不管是4次、8次或者是16次的截断多项式,其结果都是收敛的。当节点取的越多,则函数的逼近效果则越好。 2、同样由实验可知,用Chebyshev正交多项式在区间[-1.,1]上逼近函数 f(x)=| x |,不管是4次、8次或者是16次的截断多项式,其结果也都是收敛的。当节点取的越多,则函数的逼近效
8、果则越好。 3、对于用Legendre正交多项式逼近和用Chebyshev正交多项式进行逼近,值得注意的是,对于Legendre正交多项式,其权函数为1,所以在进行内积计算的时候,不要考虑权函数的问题。但是对于Chebyshev正交多项式,计算内积时需加入函数进行运算。否则实验图像将不会与原函数逼近。 4、通过利用Legendre正交多项式逼近和用Chebyshev正交多项式对函数进行逼近,观察图像可以看出,在函数的间断点0处的误差是最大的点。同样的,当截断多项式次数越高时,则0点出的误差也越来越小。 - 6 - 附录:MATLAB程序 主程序1: clear clc
9、 syms x r; y=abs(x); n=4; a0=1/2*int(y,-1,1); s=a0; for i=1:n p=Legendre(i); a=(2*i+1)/2*int(p*y,-1,1); s=s+a*p; end k=-1:0.1:1; m=subs(s,k); n=subs(y,k); plot(k,m,'.-') hold; plot(k,n) legend(‘四次多项式拟合’,'|x|') z=y-s 主程序2: clear;clc; syms x; y=abs(x); n=16; a0=1
10、/pi*int(y/sqrt(1-x^2),-1,1); s=a0; for i=1:n T=Chebyshev(i); a=2/pi*int(T*y/sqrt(1-x^2),-1,1); s=s+a*T; end s k=-1:0.1:1; m=subs(s,k); n=subs(y,k); plot(k,m,'-*') hold; plot(k,n) legend('16次多项式拟合','|x|') Chebyshev程序: function T=Chebyshev(n) syms x; if (n==0) T=1; elseif (n==1) T=x; else T=collect(2*x*Chebyshev(n-1)-Chebyshev(n-2),x); end Legendre程序: function P=Legendre(n) syms x real; if (n==0) P=1; elseif (n==1) P=x; else P=collect(((2*n-1)*x*Legendre(n-1)-(n-1)*Legendre(n-2))/(n),x); end






