《插值法拉格朗日插值.ppt》由会员分享,可在线阅读,更多相关《插值法拉格朗日插值.ppt(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1问题的提出函数y=f(x)1)解析式未知;2)虽有解析式但表达式较复杂,通过实验计算得到的一组数据,即在某个区间a,b上给出一系列点的函数值yi=f(xi),xx0 x1x2 xny=f(x)y0y1y2yn3)列表函数问题:无法求出不在表中的点的函数值,也不能进一步研究函数的其他性质,如函数的积分和导数等。因此需寻找y=f(x)的近似函数p(x),但要求p(xi)=f(xi)。插值问题插值问题已知精确函数已知精确函数 y=f(x)在一系列节点在一系列节点 x0 xn 处测得函数值处测得函数值 y0=f(x0),yn=f(xn),由此构,由此构造一个简单易算的近似函数造一个简单易算的近似函数
2、 p(x)f(x),满足,满足条件条件p(xi)=f(xi)(i=0,n)。这里的。这里的 p(x)称称为为f(x)的的插值函数插值函数。最常用的插值函数是。最常用的插值函数是?多项式多项式x0 x1x2x3x4xp(x)f(x)1.1Taylor插值函数y=f(x)在点x0处展开有Taylor 多项式:可见:Pn(k)(x0)=f(k)(x0)k=0,1,n因此,Pn(x)在点x0邻近会很好的逼近f(x).Taylor展开方法就是一种插值方法.泰勒插值要求提供 f(x)在点x0处的各阶导数,这仅仅适用于 f(x)相当简单的情况.设函数y=f(x)在区间a,b上有定义,且给出一系列点上的函数值
3、yi=f(xi)(i=0,1,2,n),求作n次多项式pn(x)使得 pn(xi)=yi (i=0,1,2,n)函数pn(x)为f(x)的插值函数;称x0,x1,xn称为插值节点或简称节点。插值节点所界的区间a,b称为插值区间。pn(xi)=yi 称为插值条件。构造的n次多项式可表示为:Pn(x)=a0+a1x+a2x2+anxn 1.2 Lagrange插值定理定理 (插值多项式的插值多项式的存在唯一性存在唯一性)满足满足 的的 n 阶插值多项式是唯一存在的。阶插值多项式是唯一存在的。证明:证明:(利用利用Vandermonde 行列式行列式论证论证)这是一个关于这是一个关于a0,a1,an
4、 的的n+1元线性方程组元线性方程组,其系其系数行列式数行列式:由于由于i j时时,xi xj,因此因此 ,即方程组有即方程组有唯一解唯一解.2 拉格朗日插值公式拉格朗日插值公式 niyxPiin,.,0,)(=求求 n 次多项式次多项式 使得使得条件:条件:无重合节点,即无重合节点,即n=1已知已知 x0,x1;y0,y1,求,求使得使得111001)(,)(yxPyxP=可见可见 P1(x)是过是过(x0,y0)和和(x1,y1)两点的直线。两点的直线。)()(0010101xxxxyyyxP +=101xxxx 010 xxxx =y0+y1l0(x)l1(x)=10)(iiiyxl称为
5、称为拉氏基函数拉氏基函数直线方程的两点式:线性插值线性插值l0(x)l1(x)=10)(iiiyxlL1(x)抛物插值抛物插值l0(x)l1(x)l2(x)n 1li(x)每个每个 li 有有 n 个根个根 x0 xi xn=njj i jiniiixxCxxxxxxCxl00)().().()(=j i jiiiixxCxl)(11)(N次拉格朗日次拉格朗日插值多项式插值多项式与与 有关,而与有关,而与 无关无关节点节点f希望找到希望找到li(x),i=0,n 使得使得 li(xj)=;然后令;然后令=niiinyxlxP0)()(,则显然有,则显然有Pn(xi)=yi。n次多项式次多项式
6、插值余项插值余项/*Remainder*/设节点设节点在在a,b内存在内存在,考察截断误差考察截断误差,且,且 f 满足条件满足条件 ,用简单的插值函数用简单的插值函数L n(x)代替原复杂函数代替原复杂函数f(x),其其精度取决于截断误差精度取决于截断误差,即插值余项即插值余项.拉格朗日余项定理拉格朗日余项定理注:注:通常不能确定通常不能确定 ,而是估计而是估计 ,x(a,b)将将 作为误差估计上限。作为误差估计上限。当当 f(x)为任一个次数为任一个次数 n 的的多项式多项式时,时,,可知可知 ,即插值多项式对于次数,即插值多项式对于次数 n 的的多项式是多项式是精确精确的。的。例:例:已
7、知已知分别利用分别利用 sin x 的的1次、次、2次次 Lagrange 插值计算插值计算 sin 50 并估计误差。并估计误差。解:解:n=1分别利用分别利用x0,x1 以及以及 x1,x2 计算计算利用利用这里这里而而sin 50 =0.7660444)185(50sin10 p pL0.77614外推外推/*extrapolation*/的实际误差的实际误差 0.010010.01001利用利用sin 50 0.76008,内插内插/*interpolation*/的实际误差的实际误差 0.00596 0.00596内插通常优于外推。选择内插通常优于外推。选择要计算的要计算的 x 所在
8、的区间的所在的区间的端点,插值效果较好。端点,插值效果较好。n=2)185(50sin20 p pL0.76543sin 50 =0.76604442次插值的实际误差次插值的实际误差 0.00061 0.00061高次插值通常优于高次插值通常优于低次插值低次插值但绝对不是次数越但绝对不是次数越高就越好,嘿嘿高就越好,嘿嘿 拉格朗日插值多项式编程容易,只需双重循环拉格朗日插值多项式编程容易,只需双重循环 如果发现当前的插值方法不够精确,就要增如果发现当前的插值方法不够精确,就要增加插值点的个数,则拉格朗日插值基函数加插值点的个数,则拉格朗日插值基函数 li(x)都都将重新计算。将重新计算。牛顿插
9、值法将讨论该问题牛顿插值法将讨论该问题。例:已知数据表 xk10111213f(xk)2.302 62.397 92.484 92.564 9试用二次插值计算f(11.75)(计算过程保留4位小数)解:因为11.75更接近12,故应取11,12,13三点作二次插值先作插值基函数已知x0=11,y0=2.397 9,x1=12,y0=2.484 9,x2=13,y2=2.564 9 2(x)=f(11.75)2(11.75)=例 已知x=1,4,9的平方根值,用拉格朗日插值公式求71/2解:x0=1,x1=4,x2=9f(x0)=1,f(x1)=2,f(x2)=3 L2(7)=(14)(19)(74)(79)*1+(41)(49)(71)(79)*2+(91)(94)(71)(74)*3=2.7(x0 x1)(x0 x2)(xx1)(xx2)f(x0)+(x1x0)(x1x2)(xx0)(xx2)f(x1)+(x2x0)(x2x1)(xx0)(xx1)f(x2)L2(x)=