多项式插值实验报告

多项式插值实验报告

ID:20922842

大小:252.01 KB

页数:10页

时间:2018-10-17

多项式插值实验报告_第1页
多项式插值实验报告_第2页
多项式插值实验报告_第3页
多项式插值实验报告_第4页
多项式插值实验报告_第5页
资源描述:

《多项式插值实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验报告一题目:多项式插值摘要:熟悉插值多项式构造,通过计算机解决实验问题;龙格现象的发生、防止,通过拉格朗FI插值、分段线性插值以及三次样条插值进行插值效果的比较通过分析、推导,掌握数据插值的思想方法;通过对插值方法的进一步讨论,了解插值的“龙格”现象;熟悉常用的分段线性插值和样条插值的使用方法;掌握上机编程与调试能力。由于高次多项式插值不收敛,会产生Runge现象,本实验在给出具体的实例后,采用分段线性插值和三次样条插值的方法有效的克服Y这一现象,而且还取的很好的插值效果。前言:(目的和意义)1.掌握

2、拉格朗日插值法,分段线性插值法,三次样条插值法。2.深刻认识多项式插值的缺点。3.明确插值的不收敛性怎样克服。4.明确精度与节点和插值方法的关系。数学原理:在给定n+1个节点和相应的函数値以后构造n次的Lagrange插但多项式,实验结果表明(见后面的图)这种多项式并不是随着次数的升高对函数的逼近越来越好,这种现象就是Rung现象。解决Rung现象的方法通常有分段线性插值、三次样条插值等方法。分段线性插值:设在

3、x:问[6/,/?]上,给定n+1个插值节点a=xo7),

4、>,/,…,y„,,求作一个插值函数0(%),具育如卜*性质:1).)=y}j•二0,1,…,n。2)0(X)在每个区问[X/,X/]上是线性连续函数。则插值函数0(X)称为区问[^,上对应77个数据点的分段线性插值函数。三次样条插值:给定区间k,列一个分划/]:a=xo

5、nction的方式,如下functiony=f(x);y=l/(l+25*x*x);写成如上形式即可,下面给出主程序Lagrange插值源程序:function

6、p

7、=Lag_polyfit(X,Y)%Matlab函数文件Lag_polyfit.m%拉格朗日插值法多项式拟合P17%[p]=Lag_polyfit(X,Y)%X拟合自变量%Y拟合函数值%p所得的拟合多项式系数ifsize(X)〜=size(Y)error(1变量不匹配’);end出报错tic%开始记时formatlonggr=size(Y);

8、n=r(2);p=zeros(l,n);pO=p;b=0;W=poly(X);dW=po1yder(W);z=polyval(dW,X);A=fl1];r=A;fori=l:nA=[l,-X(i)];[pO,r]=deconv(W,A);b=Y(i)/z(i);pO=b.*pO;p=p+pO;enddisp(toc)%%如果耍拟合的函数值与自变景维数不一样,则退%设置最合适的数字格式%ri为要拟合的数据1<:度%保存所得多项式系数%工作变量%W为以X为根的多项式%dW为对多项式W求导后的多项式系数%z为以

9、dW为系数的多项式对X的值%A,r为长度为2的(1,2)向量%计算循环开始%A为一次多项式x-x⑴系数%进行多项式除法W/A,pO为商%p0为累加项%循环结束分段线性插值源程序clearn=i叩ut(’将区间分为的等份数输入:’);s=[-l+2/n*[0:n]];%%%给定的定点,Rf为给定的函数m=0;hh=O.001;forx=~l:hh:1;ff=O;fork=l:n+l;%%%求插值基函数switchkcase1ifx〈=s(2);l=(x-s(2))./(s(l)-s(2)):else1=

10、0;endcasen+1ifx>s(n);1=(x-s(n))•/(s(n+1)-s(n));else1=0;endotherwiseifx>=s(k-l)&x<=s(k);1=(x-s(k-1))./(s(k)-s(k-1));elseifx>=s(k)&x<=s(k+1);l=(x-s(k+l))./(s(k)—s(k+1));else1=0;endendendff=ff+Rf(s(k))*l;%%求插值函数值endm=m+1;f(ni)=ff;end%%%作出曲线x=-l:hh:1;plot(x,f

11、,’r');gridonholdon三次样条插值源程序:(采用第一边界条件)clearn=input(’将区间分为的等份数输入:%%%插值IX间a=-l;b=l;hh=0.001;s=[a+(b-a)/n氺[0:n]];%%%%第一边界条件Rf〃(-1),Rf〃⑴v=5000*l/(l+25*a*a)"3-50/(l+25*a*a)fork=l:n;h(k)=s(k+l)-s(k);endfork=l:n-1;la(k)=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。