盛克平-修改稿2-ljg_第1页
盛克平-修改稿2-ljg_第2页
盛克平-修改稿2-ljg_第3页
盛克平-修改稿2-ljg_第4页
盛克平-修改稿2-ljg_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、 学科分类号0701本科生毕业论文(设计)题目(中文):插值方法及其MATLAB实现(英文):Interpolation Method and its Implementation inMatlab Its MATLAB学生姓名:盛克平学号:1209402023院别:数学与计算科学学院专业:信息与计算科学指导教师:刘建国 副教授起止日期:2015.2016.2016 年 月 15 10 日怀化学院本科毕业论文(设计)诚信声明作者郑重声明:所呈交的本科毕业论文(设计),是在指导老师的指导下,独立进行研究所取得的成果,成果不存在知识产权争议。除文中已经注明引用的内容外,论文不含任何其他个人或集体已

2、经发表或撰写过的成果。对论文的研究做出重要贡献的个人和集体均已在文中以明确的方式标明。本声明的法律结果由作者承担。本科毕业论文(设计)作者签名:手签年 月 日(5月10日-14日)目录摘 要I关键词IAbstractIKey wordsI1引言12插值法与MATLAB简介13几种常见插值法的插值公式及MATLAB实现23.1Lagrange插值23.1.1Lagrange插值法的MATLAB实现23.2Newton插值53.2.1Newton插值法的MATLAB实现53.3Hermite插值83.3.1Hermite插值法的MATLAB实现83.4分段插值103.4.1分段插值法的MATLAB

3、实现103.5三次样条插值123.5.1三次样条插值法的MATLAB实现124几种插值法的比较145结束语20参考文献21致 谢21附录121附录222附录322插值方法及其MATLAB实现摘要插值法是数值算法的最基本方法之一,同时也是函数逼近、数值积分、数值微分、微分方程数值解的基础,许多实际问题都需要运用插值法来解决。本文讨论了Lagrange插值公式、Newton插值公式、Hermite插值公式、分段低次插值公式、三次样条插值公式等几种常见的插值公式及其误差估计,总结和比较了它们的优缺点和适应范围,并给出具体算例和MATLAB实现。关键词数值分析数值方法, 插值法公式, 插值公式 误差,

4、 MATLAB Interpolation Method Interpolation Method and its Implementation in Matlaband Its MATLABAbstractInterpolation method is one of the most basic methods of numerical algorithmsmethods, but it is also the basis of other numerical methods such as function approximation, numerical integration, num

5、erical differentiation, numerical solution of differential equations basis,. many Many practical problems need to be solved using interpolation method. In Tthis article paper, several common interpolation methods such as Lagrange interpolation formula, Newton interpolation formula, Hermite interpola

6、tion formula, piecewise low-order interpolation formula and cubicspline interpolation formula and their error estimates are discusses discussed. Then, the advantages and disadvantages and adaptation of different interpolation methods are the Lagrange interpolation formula, Newton interpolationformul

7、a, Hermite interpolation formula, piecewise low-order interpolation formula, cubicspline interpolation formula such as several common interpolation formula and errorestimates, summarized and compared through their advantagesand disadvantages and Adaptation andgives concrete examples and MATLAB imple

8、mentation.Key wordsNumerical analysismethod, method of interpolation, formula, formula of interpolation,Error, MATLABII1 引言插值法是数值算法的最基本方法之一,同时也是函数逼近、数值积分、数值微分、微分方程数值解的基础。在全球化、信息化浪潮大力推动下,计算机技术得到了迅速的发展。插值法也在生活、工程和科学研究中得到了更为广泛的应用。比如在计算断面的面积、漏磁探伤和曲线拟和等诸多实际问题中,有的函数虽然给出了解析表达式,但往往过于复杂而难以计算,使用不方便;有的函数只能给出它在

9、平面上一些离散的点和这些点的函数值,而函数的具体解析表达式则不能给出,在这样的情况下,选用近似函数来逼近函数。加一段研究背景、意义和研究进展!在实际问题中碰到的函数是各种各样的,有的甚至给不出表达式,只提供了一些离散数据,例如,在查对数表是,要查的数据在表中找不到,就先找出它相邻的数,再从旁边找出它的修正值,按一定关系把相邻的数加以修正,从而找出要找的数,这种修正关系实际上就是一种插值。在实际应用中选用不同类型的插值函数,逼近的效果也不同。因此通过总结和比较不同插值法的优缺点,使我们在以后的应用中能更好、更快的解决问题。MATLAB集计算和绘图等功能于一体,操作简单易上手,在数学领域中具有非常

10、重要的地位。在插值法中MATLAB可以通过改变插值函数的参数,来实现不同的插值方式。本文对几种插值法作归纳、总结并比较和讨论几种插值法的优缺点,总结出规律,并给出具体算例及MATLAB实现,以便进一步理解插值法,更好地运用其方法解决实际工程问题。2 插值法与MATLAB简介每一级标题前后要有段前段后间距,后面都作相应格式修改!每一个公式都要采用公式编辑器打出来,下面的飞f(x)等。插值法是利用函数f(x)在某区间中已知的若干点的函数值,作出适当的特定函数,在区间的其他点上用这特定函数的值作为函数f(x)的近似值,这种方法称为插值法。如果这特定函数是多项式,就称它为插值多项式。其常见的几种插值法

11、有:Lagrange插值法,Newton插值法,Hermite插值法,分段插值法,三次样条插值法。上面对插值法的介绍最好给出其定义和来源!MATLAB语言是1980年由美国的Cleve Moler博士研发的,它以矩阵运算为基础,把计算、可视化、程序设计融合到一个简单易用的交互式工作环境中,可实现工程计算、算法研究、符号运算、建模和仿真、原型开发、数据分析及可视化、科学和工程绘图、应用程序设计等功能.MATLAB具有强大的数值分析、矩阵运算、信号处理、和图形显示功能,其强大的数据处理能力和丰富的工具箱使得它的编程极为简单,也成为目前世界上应用最为广泛的科学计算软件之一。MATLAB的基本数据单位

12、是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C、FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件.在新的版本中也加入了对C、FORTRAN、C+ 、JAVA的支持.可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用。MATLAB是一个包含大量计算算法的集合,其拥有600多个工程中要用到的数学运算函数,可以方便地实现用户所需的各种计算功能.函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下

13、,可以用它来代替底层编程语言,如C和C+ ,在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数.函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。3 几种常见插值法的插值公式及MATLAB实现3.1 Lagrange插值3.1.1 Lagrange插值法的MATLAB实现加一两句引入!已知Lagrange插

14、值是为次多项式插值,首先考察低次的插值多项式。当时,要构造出过两点与的多项式(次数不超过1次且),使得。则可以写成:它是两个线性函数 ,的线性组合,所以称为线性插值多项式. 当时,相应的构造出过三点;的多项式(次数不超过2且),使得。则可写成: 式被称为抛物线插值多项式。公式编号右对齐!,后面都改!新起一段空两格! 同理,当为插值节点时,有,则可写成: 式被称为Lagrange插值多项式. 在,式子中,均为插值基函数,且满足:,即得. 误差估计由定理形式给出: 定理:设为区间上互不相同的节点,且在内存在,满足的插值多项式,则对,使得.还可写成其截断误差:.其中,.Lagrange插值是n次多项

15、式插值,其成功地用构造插值基函数的方法解决了求n次多项式插值函数问题。基本思想是将待求的n次多项式插值函数pn(x)改写成另一种表示方式,再利用插值条件确定其中的待定函数,从而求出插值多项式。以下面例题为例,在MATLAB中实现Lagrange插值。例题加编号,粗体!后面都要修改! 例: 用MATLAB实现y = 1./(x.2+1);(-1<=x<=1)的拉格朗日插值 解:1)定义函数:y = 1./(x.2+1);将其保存在f.m 文件中,程序如下:function y = f1(x)y = 1./(x.2+1); 2)定义拉格朗日插值函数:将其保存在lagrange.m 文件

16、中,具体编程如下:注意程序格式,参照教程!function y = lagrange(x0,y0,x)m = length(x);     /区间长度/n = length(x0);for i = 1:nl(i) = 1;endfor i = 1:mfor j = 1:nfor k = 1:nif j = kcontinue;endl(j) = ( x(i) -x0(k)/( x0(j) - x0(k) )*l(j);endendendy = 0;for i = 1:ny = y0(i) * l(i) + y;end3)建立测试程序,保存在text.m文

17、件中,实现画图:x=-1:0.001:1;y = 1./(x.2+1);p=polyfit(x,y,n);py=vpa(poly2sym(p),10)plot_x=-5:0.001:5;f1=polyval(p,plot_x);figureplot(x,y,r',plot_x,f1)图 3.1图题了?后面都修改!3.2 Newton插值3.2.1 Newton插值法的MATLAB实现在介绍Newton插值法之前,先来了解一下什么是差商 给定了函数在节点处的函数值。那么有形如:,称为函数关于节点处的一阶差商。同理给出在节点处的函数值。则被称为函数关于节点的阶差商。所以可得到差商表如下所示

18、:表3.1 差商表一阶差商二阶差商三阶差商 由差商的定义可以得出:所以有:其中:。即是过n+1个插值点的n阶Newton插值多项式,为插值多项式误差。由于次Newton插值多项式与次Lagrange插值多项式是恒等的,只是表达方式不同,即Newton插值多项式的余项和Lagrange插值多项式的余项相同:.Newton插值也是n次多项式插值,它提出另一种构造插值多项式的方法,与Lagrange插值相比,具有承袭性和易于变动节点的特点。基本思想是将待求的n次插值多项式Pn(x)改写为具有承袭性的形式,然后利用插值条件确定Pn(x)的待定系数,以求出所要的插值函数。以例题为例,在MATLAB中实现

19、Newton插值。 例:给定函数,已知用牛顿插值法求4次Newton插值多项式在2.15处的值。解:1)编辑Newton插值法MATLAB程序,以文件名newdscg.m保存。具体程序如下:function y,L=newdscg(X,Y,x)n=length(X); z=x; A=zeros(n,n);A(:,1)=Y's=0.0; p=1.0;for  j=2:nfor i=j:nA(i,j)=(A(i,j-1)- A(i-1,j-1)/(X(i)-X(i-j+1);endendC=A(n,n);for

20、 k=(n-1):-1:1C=conv(C,poly(X(k);d=length(C);C(d)=C(d)+A(k,k);endy(k)= polyval(C, z);L(k,:)=poly2sym(C);t=2,2.1,2.2,2.3,2.4;fx=sqrt(t); 2)在MATLAB命令窗口输入:   >> X=2,2.1,2.2,2.3,2.4;  Y =1.414214,1.449138,1.483240,1.516575,1.549193;    x=2

21、.15; y,P=newdscg(X,Y,x)运行得到  y =1.46633.3 Hermite插值3.3.1 Hermite插值法的MATLAB实现 定义:设在个不同的插值节点上,给定,。要求一个次数不超过的多项式,使得满足条件:,.则称满足这种条件的多项式为Hermite插值多项式。 由于Hermite插值是带有导数的插值法,所以在运用Hermite插值法时就必须知道在节点处的函数值和其导数值,且还要求它们相等.如表3.2所示,知道了节点处的函数值和其导数值:表3.2 节点数据表由表3.2可构造出一个次数不高于的多项式,则称为Hermite插值多项式,即。其中,为插值

22、基函数,则对,使得误差函数或余项.Hermite插值是利用未知函数f(x)在插值节点上的函数值及导数值来构造插值多项式的。基本思想是利用Lagrange插值函数的构造方法,先设定函数形式,再利用插值条件求出插值函数。以下面例题为例,在MATLAB中实现Hermite插值。 例:已知数表: x11.21.41.61.8 y11.09541.18321.26491.3416 y'0.50.45640.42260.39530.3727根据所列的数据点求出其Hermite插值多项式,并计算当x=2.0时的y值。解:1)编辑Hermite插值法MATLAB程序:function f=Hermit

23、e(x,y,y_1,x0)syms t;f=0.0;if(length(x)=length(y)if(length(y)=length(y_1)n=length(x);elsedisp('y和y的导数的维数不相等!');return;endelsedisp('x和y的维数不相等!');return;endfor i=1:nh=1.0;a=0.0;for j=1:nif(j=i)h=h*(t-x(j)2/(x(i)-x(j)2);a=a+1/(x(i)-x(j);endendf=f+h*(x(i)-t)*(2*a*y(i)-y_1(i)+y(i);if(i=n)i

24、f(nargin=4)f=subs(f,'t',x0);elsef=vpa(f,6);endendend 2)在MATLAB中输入下面命令x=1:0.2:1.8; y=1,1.0954,1.1832,1.2649,1.3416; x1=x; y1=0.5,0.4564,0.4226,0.3953,0.3727; h,yy=HermiteInt1(x,y,x1,y1,2) 运行得到:h=43215754781469129/1099511627776000-1145972591322841157/4398046511104000*t+163294776469783529843/21

25、1106232532992000*t2+1665485238488168375/60798594969501696*t8+15318604908211965505/30399297484750848*t6-4691451189851556625/30399297484750848*t7-50392743046091368807/37999121855938560*t3-63885352929874938617/60798594969501696*t5+441043429159790924983/303992974847508480*t4-130567005823358125/607985949

26、69501696*t9yy=1.41123.4 分段插值3.4.1 分段插值法的MATLAB实现设有n+1个节点,对应的函数值为.若记,有满足: (1)属于; (2); (3)在任一个小区间上,是线性多项式.则称为分段线性插值函数(其中).所以在每个小区间上,可表示为:误差估计由定理给出:定理:若,记,则对.有误差函数或余项估计:. 在实际运用函数作插值多项式时,并不是插值多项式的次数越高,插值余项就越小,值就越精确。这时就出现了计算出来的值与真实值相差很大的问题,比如说常见的龙格现象。分段插值就是克服龙格现象引入的插值方法,基本思想是将被插值函数fx的插值节点 由小到大排序,然后每对相邻的两

27、个节点为端点的区间上用m 次多项式去近似fx。以下面例题为例,在MATLAB中实现分段插值。 例:用MATLAB实现y = 1./(x.2+1);(-1<=x<=1)的分段插值 解:1)建立分段线性插值函数:div_linear.m 文件。具体编程如下function y = div_linear(x0,y0,x,n)%for j = 1:length(x)for i = 1:n-1if (x >= x0(i) && (x <= x0(i+1)y  = (x - x0(i+1)/(x0(i) - x0(i+1)*y0(i) + ( x - x0

28、(i)/(x0(i+1) - x0(i)*y0(i+1);elsecontinue;endend%end 2)建立测试程序:x0 = linspace( -5,5,50);y0= 1./(x0.2+1);y=interp1(x0,y0,x0,'linear')plot(x0,y0,x0,y,'p'); 3)运行测试程序:图 3.23.5 三次样条插值3.5.1 三次样条插值法的MATLAB实现设区间上有个节点,节点为,且这些节点的函数值分别为。现在假如存在一个分段函数,且使得在以下条件:(1); (2)的二阶导数在上连续; (3)在每个小区间为三次多项式.恒成立

29、,其中(),则称为三次样条插值函数,常用的三次样条函数的边界条件有三种类型: 型: , 型: , 其特殊情况为 型: , =0,1,2,此条件称为周期样条函数 误差估计由定理给出:定理:设,且记,则对,都有的误差估计式:三次样条插值是一种改进的分段插值。基本思想是利用拟合的多项式计算函数值,将计算的函数值插入到原有的实验点之间,然后再根据所有的实验点拟合成曲线,获得的曲线具有很高的精度。以下面例题为例,在MATLAB中实现三次样条插值。 例:给定如下数值表,试求三次样条插值函数满足边界条件28.72829304.14.34.13.0解:1)型三次样条插值函数在实际应用中的重要地位,故采用的是型

30、边界条件,取名为spline2.m。 MATLAB代码如下: function s=spline2(x0,y0,y21,y2n,x)%s=spline2(x0,y0,y21,y2n,x)%x0,y0 are existed points,x are insert points,y21,y2n are the second%dirivitive numbers given.n=length(x0);km=length(x);a(1)=-0.5;b(1)=3*(y0(2

31、)-y0(1)/(2*(x0(2)-x0(1);for j=1:(n-1)h(j)=x0(j+1)-x0(j);endfor j=2:(n-1)alpha(j)=h(j-1)/(h(j-1)+h(j);beta(j)=3*(1-alpha(j)*(y0(j)-y0(j-1)/h(j-1)+alpha(j)*(y0(j+1)-y0(j)/h(j);a(j)=-alpha(j)/(2+(1-alpha(j)*a(j-1);b(j)=(beta(j)-(1-alpha(j)*b(j-1)/(2+(1-alpha(j)*a(j-1);endm(n)=(3*(y0(n)-y0(n-1

32、)/h(n-1)+y2n*h(n-1)/2-b(n-1)/(2+a(n-1);for j=(n-1):-1:1m(j)=a(j)*m(j+1)+b(j);endfor k=1:kmfor j=1:(n-1)if(x(k)>=x0(j)&(x(k)<x0(j+1)l(k)=j;endendendfor k=1:kmsum=(3*(x0(l(k)+1)-x(k)2/h(l(k)2-2*(x0(l(k)+1)-x(k)3/h(l(k)3)*y0(l(k);sum=sum+(3*(x(k)-x0(l(k)2/h(l(k)2-2*(x(k)-x

33、0(l(k)3/h(l(k)3)*y0(l(k)+1);sum=sum+h(l(k)*(x0(l(k)+1)-x(k)2/h(l(k)2-(x0(l(k)+1)-x(k)3/h(l(k)3)*m(l(k);s(k)=sum-h(l(k)*(x(k)-x0(l(k)2/h(l(k)2-(x(k)-x0(l(k)3/h(l(k)3)*m(l(k)+1);End 2)在MATLAB命令窗口中输入:x=28.7 28 29 30;y=4.1 4.3 4.1 3.0;x0=28.7:0.15:30; y=spline2(x,y,0,0,x0);plot(x0,y)3)运行得到图形如下:图 3.34 几种

34、插值法的比较5 叙述一种插值法的优缺点后要给出具体算例加以验证,再进行总结。算例应该显示出其优缺点和适应条件!两两进行比较!拉格朗日插值法的公式结构整齐紧凑,在理论分析中十分方便,然而在计算中,当插值点增加或减少一个时,所对应的基本多项式就需要全部重新计算,于是整个公式都会变化,非常繁琐,而且当插值点比较多的时候,拉格朗日插值多项式的次数可能会很高,因此具有数值不稳定的特点,也就是说尽管在已知的几个点取到给定的数值,但在附近却会和“实际上”的值之间有很大的偏差。 牛顿插值公式是n次插值多项式的又一种构造形式,但它克服了拉格朗日插值多项式的缺点,它的一个明显优点是,每增加一个插值节点,只要在原牛

35、顿插值公式中增添一项便可形成高一次的插值公式。而且在实际应用中,经常会遇到插值节点是等距分布的情况,这时,牛顿插值公式可以进一步简化,得到等距节点的插值公式,从而能够大大的缩短实际运算时间。但是这种代数插值,只要求插值多项式在插值节点处与被插值函数有相同的函数值,但是这种插值多项式往往还不能全面反映被插值函数的性态,许多实际问题不但要求插值函数与被插值函数在各节点的函数值相同,而且还要求插值多项式在某节点或全部节点上与被插值函数的导数值也相等,甚至要求高阶导数值也相等。而这时拉格朗日插值与牛顿插值就不满足这种要求了。 埃尔米特插值是知道了函数在某些点的函数值,而且插值函数在这些点的导数也和被插

36、函数一致,所以在几何上,这种插值函数不仅和被插函数在插值节点处有相同的函数值“过点”,而且和被插函数在节点处有相同的切线“相切”。因此,插值函数和被插函数的贴合程度要比多项式的程度好。但是埃尔米特插值只有当被插值函数在插值节点处的函数值和导数值已知时才能使用,这在实际问题中是很难实现的,因为在一般情况下不可能也没有必要知道函数在插值节点处的导数值,所以是否知道插值函数在节点处的导数值成为能否运用埃尔米特插值的一个重要因素。 分段线性插值在计算上具有简洁方便的特点,分段线性插值与三次多项式插值函数在每个小区间上相对于原函数都有很强的收敛性,(舍入误差影响不大),数值稳定性好且容易在计算机上编程实

37、现等优点。缺点是分段线性插值在节点处具有不光滑性的缺点(不能保证节点处插值函数的导数连续),从而不能满足某些工程技术上的要求,而三次样条插值却具有在节点处光滑的特点。对三次样条插值函数来说,当插值节点逐渐加密时,不但样条插值函数收敛于函数本身,而且其微商也收敛于函数的微商,这种性质要比多项式插值优越得多,而且样条函数不一定必须是逐段三次多项式,也可以是逐段一个简单函数,且连续点保持足够光滑。通过以上分析,下面给出例题加以说明:例1给出自然对数和它的导数的数表如下:表4.1 数据表0.400.500.700.80-0.9162912.50-0.6931472.00-0.3566751.43-0.

38、2231441.25(1) 利用Lagrange插值公式求的近似值并估计误差;(2) 利用Newton插值公式求的近似值并估计误差;(3) 利用Hermite插值公式求的近似值并估计误差. 分析 本题有多种解法,除了要求的几种方法外,还可以用待定系数法、逐次线性插值法求解.解:(1)利用Lagrange插值公式,得用和作3次Lagrange插值多项式, 则把代入中得: 由于 即有 (2)利用Newton插值公式,得差商表如下表4.2 差商表一阶差商二阶差商三阶差商0.40-0.9162910.50-0.6931472.231440.70-0.3566751.6823575-1.8302750.

39、80-0.2231441.33531-1.1568251.684375所以 把代入中得:(3) 利用Hermite插值公式得:其中 把代入中得: 则由于所以注:本题的真解,由于相同次数的Lagrange插值多项式和Newton插值多项式是恒等关系,只是它们的表达形式不同,所以用它们算出来的结果也应该相同。然而从例题中可以发现分别用Lagrange插值公式和Newton插值公式计算出来的结果了出现差异,那是因为计算的次数不同,舍入的误差不同造成的。 总结: 通过例题我们可以看到Lagrange插值多项式表达式简单明确、便于推导、格式整齐规范;但在计算过程中我们也可以发现若需要增加、减少新的节点或

40、节点位置变化时就要重新计算没有承上启下性且计算量很大。 Newton插值多项式的优点是计算较高次的插值时,只需添加一项对应的节点和在这节点处的计算即可,而表达式前面的计算仍然有效,从而节省了计算量。相比Lagrange插值多项式计算较高次的插值时Newton插值多项式克服了承上启下的问题。缺点是随着次数n的增大,其误差不是很稳定,所以Newton插值对高次插值是不可取的。 Hermite插值多项式的优点是能够克服插值函数在节点处不光滑、不可导的缺点.缺点是在运用Hermite插值公式计算不但要求在节点处的导数值相等,甚至高阶导数也要求相等,条件太高。同时从例题中还可以看出用Hermite插值公

41、式计算得出的结果远比运用Lagrange插值公式和Newton插值公式得到的结果精确.例2给定一个函数,现在给出等距离的插值节点,其中.分别试用Lagrange插值法、分段低次插值法、三次样条插值法作出其图像,并与原图像相比较,再分析其差异.解:首先用Lagrange插值法进行计算,当时,在MATLAB的中输入命令见附录1,得到以下图像:图 4.1由图4.1可以知道在运用高次Lagrange插值多项式逼近被插函数时,并不是插值多项式的次数越高越好,随着节点的增多,用Lagrange插值法计算出来的结果与真实值相差就越大,其误差也就越大,也就出现了发散的现象,这就是我们常说的龙格现象。然后再在图4.1的基础上用分段插值法计算,并在MATLAB上实现见附录2,得出图像如下:图 4.2由图4.2中可以看出,用分段插值法计算出来的结果与真实值相差很小,所以分段插值法克服了高次Lagrange插值法的缺点,不但不会出现龙格的现象,也不会出现不收敛的现象。但是它还是具有插值精度低、节点处不光滑的缺点。同理运用三次样条插值法计算,由MATLAB得到以下图像见附录3: 图

温馨提示

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

评论

0/150

提交评论