matlab插值法.ppt





《matlab插值法.ppt》由会员分享,可在线阅读,更多相关《matlab插值法.ppt(94页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1.1 插值法插值法插值问题的背景插值问题的背景 在生产和实验中,函数 f(x)或者其表达式不便于计算, 或者无表达式而只有函数在给定点的函数值(或其导数值) ,此时我们希望建立一个简单的而便于计算的近似函数(x),来逼近函数 f(x)。 常用的函数逼近方法有: 插值法; 最小二乘法(或称均方逼近); 一致逼近等。插值法插值法 插值法是函数逼近的重要方法之一,有着广泛的应用。简单地说,插值法就是用给定的(未知)函数 f(x)的若干点上的函数值(或其导数值) 来构造 f (x)的近似函数(x),要求(x)与 f(x)在给定点的函数值相等。 有很多种插值法,其中以拉格朗日(Lagrange)插值和
2、牛顿(Newton)插值为代表的多项式插值最有特点,常用的插值还有Hermite插值,分段插值和样条插值。函数可以未知,只需已知若干点上的值。设 f(x)为a,b上的函数,在互异点x0 , x1, . , xn 处的函数值分别为 f(x0) , f (x1) , , f (xn) ,构造一个简单函数 (x) 作为函数 f(x) 的近似表达式y= f(x) (x),使 (xi)f(xi) , i0, 1, 2, ,n (1.0)则称(x) 为关于节点x0 , x1, . , xn的插值函数;称 x0 , x1, . , xn 为插值节点;称(xi, f (xi), i=1,2, , n 为插值点
3、;f(x) 称为被插值函数。 (1.0)式称为插值条件。这类问题称为插值问题。 构造出(x),对 f(x)在a,b上函数值的计算,就转化为(x)在对应点上的算。插值法的定义插值法的定义1.2 Lagrange插值插值 选用代数多项式作为插值函数。Lagrange插值就是选用节点上的函数值作为插值条件。1.2.1 线性插值线性插值 给定两个点(x0,y0),(x1,y1),x0 x1,确定一个一次多项式插值函数,简称线性插值线性插值。待定系数法待定系数法 设 L1(x)=a0+a1x, 代入插值点当x0 x1时,方程组的解存在唯一。01000111aa xyaa xy即插值条件:L1(xi)=
4、f(xi)=yi,i=0,1解之得解之得, 因此,因此, (1.1)式称为一次Lagrange插值插值。 由求解过程知,用待定系数法,需要求解线性方程组,当已知节点较多时,即方程的未知数多,计算量较大,不便向高阶插值推广。011001010101,.x yx yyyaaxxxx0110011010101010110( )(1.1)x yx yyyL xxxxxxxxxxyyxxxx插值基函数法插值基函数法 分别构造两个节点上的一次函数,使其在本节点上的函数值为1,而在其他节点上的函数值为0。设l0(x), l1(x)分别为满足上述条件的一次函数,即 或简单地记为 对于过两个节点x0 , x1的
5、线性插值(1.1)式,令00100111()1,()0()0,()1lxl xlxl x1,()0,.ijijijlxij01010110( ), ( ),xxxxlxl xxxxx显然, l0(x), l1(x) 满足:线性插值函数可以写成节点上函数值的线性组合,即 L1(x) = l0(x) y0 + l1(x) y1 称l0(x), l1(x) 分别为x0, x1的插值基函数。线性插值误差线性插值误差定理定理 1 设L1(x)为一次Lagrange插值函数, 若 f (x) 一阶连续可 导,f (x)在(a, b)上存在,则对任意给定的x(a ,b), 至少存在一点(a,b),使得证明证
6、明 因为L(xi)= f(xi),i=0,1,所以,R1(x0)=R1(x1)=0, 即 x0,x1为R1(x)的两个根。因此,可设R1(x)为(), ,0,1.ijijl xi j易知满足插值条件:L1(xi) = yi , i=0,11101( )( )( )( )()()(1.3)2!fR xf xL xxxxx可设 R1(x) = k(x)(x-x0)(x-x1). 固定任一 x,作辅助函数,令 则 (xi )=0, i =1,2, (x)=0, 即 (t)有3个零点x0, x1, x。 假定,x0 x x1 , 分别在x0,x和x,x1上应用洛尔(Rolle)定理,可知, (t)在每
7、个区间上至少存在一个零点,1,2,使(1)=0,(2)=0(此即(t)有2个零点)。再利用洛尔定理知, (t)在1,2上至少有一个零点,使 ()=0。 对 (t)求2阶导数得, (t) = f (t) - -2!k(x), 因为 ()=0,所以,有 k(x) = f () / /2!。 证毕。101( )( )( )( )()(),tf tL tk x txtx1.2.2 二次插值二次插值 给定3个互异插值点(xi, f (xi), i = 0,1,2,确定一个二次插值多项式函数,即抛物线插值(如图)。待定系数法 设L2(x)=a0+a1x+a2x2, 代入3个插值条件: L2(xi)= f(
8、xi), i = 0,1,2,解线形方程组可得a0, a1, a2。 插值基函数法插值基函数法 构造3个节点上2次插值基函数 l0(x), l1(x), l2(x), 使满足 li(xj)=ij , i, j = 0,1,2。 因为l0(x) 为2次插值基函数, 且l0(x1) = l0(x2) = 0, 所以可设 l0(x) = A (x - x1)(x - x2)。 由条件:l0(x0) = 1,得同理可得,二次Lagrange插值多项式为01021,()()Axxxx1200102()()( ).()()xxxxlxxxxx02011210122021()()()()( ),( ).()
9、()()()x xx xx xx xl xl xxxxxxxxx220011220( )( ) ()( ) ()( ) ()( ) ()(1.4)iiiLxlx f xl x f xlx f xl x f x 容易验证满足插值条件二次插值的误差二次插值的误差22012( )( )( )( )()()()(1.5)3!fRxf xLxxxxxxx 定理定理 设设L2(x)为二次Lagrange插值函数, 若 f (x) C3a,b , 则任给x(a ,b),至少存在一点=(x) (a,b),使 提示提示:因为R2(x0)=R2(x1)=R2(x2)=0,可设 作辅助函数 易知,x0, x1, x
10、2, x为(t)的4个零点,在4个点两两组成的区 间上,应用Rolle定理,然后再反复应用Rolle定理即得证。 2012( )( )()()().Rxk x xxxxxx2012( )( )( )( )()()(),tf tL tk x txtxtx例例1.1 给定sin11=0.190809,sin12=0.207912,求线性插 值,并计算sin1130和sin1030 。解解 x0= 11, x1= 12, y0= 0.190809, y1= 0.207912, sin1130L1(11.5)=0.199361, sin1030L1(10.5)=0.182258.由定理1知,误差为10
11、101(12)(11)( )(12)(11).11 1212 11xxL xyyx yxy准确值为:sin1130=0.199368sin1030=0.182236101( )sin( )( )()()(11)(12).2!2fR xxxxxxx11( )(11)(12)21(11.5 11)(11.5 12)0.125.2R xxx0111 1211.522xxx例例1.2 给定sin11=0.190809,sin12=0.207912, sin13=0.224951,构造二次插值,并计算 sin1130。 解解 x0= 11, x1= 12, x2= 13, y0= 0.190809, y
12、1= 0.207912,y2= 0.224951, sin1130L2(11.5) = 0.199369, sin1130= 0.199368.2(12)(13)(11)(13)( )0.1908090.207912(11 12)(11 13)(12 11)(12 13)(11)(12)0.224951(13 12)(13 12)xxxxL xxx 例例1.3 要制作三角函数sin x的值表,已知表值有四位小数,要求用线性插值引起的截断误差不超过表值的舍入误差,试确定其最大允许的步长。解解 f(x)=sin x, 设xi, xi为任意两个插值节点,最大允许步长记为 h = hi = xi xi
13、,111111121124( )sin( )()()()()2!211()()()()22221()(),88110 ,0.02.82iiiiiiiiiiiiiiiifR xxxxxxxxxxxxxxxxxxxhxxxxhh1.2.3 n次次Lagrange插值多项式插值多项式 已知 n+1个互异插值节点 (xi, f(xi), i=0, 1, 2, , n , 研究n次插值多项式的存在性及其表示形式。 存在性存在性 设 n 次多项式为 代入插值点,即插值条件:Pn (xi) = f (xi), i = 0, 1,2, , n , 得 其范德蒙德(Vandermonde)行列式为:20121(
14、 ),(1.6)nnnP xaa xa xa x20102000201121112012()()(1.6)()nnnnnnnnnnaa xa xa xf xaa xa xa xf xaa xa xa xf x 所以,(1.6)的解存在唯一。 解出(1.6)的解a0 , a1, , an ,代入(1.6)1即得 n 次插值多项式Pn(x)。 n 次插值多项式的构造次插值多项式的构造 有上面的讨论知,用待定系数法要求解一个线性方程组,计算量大,实际中不可取。20002111012011(,)1()0,nnnnnnnijj i nxxxxxxV xxxxxxxx 插值基函数法插值基函数法 分别构造x
15、0 , x1, , xn 上的 n 次插值基函数 l0(x), l1(x), , ln(x),满足性质: 即1,0,1,2,()0ijijijnl xij, 节点基函数x0 x1x2xnl0(x)1000l1(x)0100l2(x)0010ln(x)0001先构造 l0(x)。有上表知, x1 , x2, , xn 为 l0(x) 的零点,设由l0(x0)=1,得同理可设由li (xi)=1,得0012( )()()(),nlxaxxxxxx001020120010201,()()()()()()( ).()()()nnnaxxxxxxxxxxxxlxxxxxxx011( )()()()(),
16、iiiinl xa xxxxxxxx1111,()()()()iiiiiinaxxxxxxxx于是,所以我们得到 n 次Lagrange插值多项式: 容易验证, Ln(xi) = f (xi), i = 0, 1, 2, n.0110111()()()()( )()()()(),1,2,(1.7)iiniiiiiinnjijjj ixxxxxxxxl xxxxxxxxxxxinxx00110( )( ) ()( ) ()( ) ()( ) ()(1.8)nnnniiiLxlx f xl x f xlx f xl x f x例例1.4 已知插值点 (-2.00,17.00), (0.00,1.0
17、0), (1.00,2.00), (2.00,17.00), 求三次插值,并计算 f (0.6)。解解 先计算4个节点上的基函数:1230010203()()()( )()()()(0)(1.00)(2.00)( 2.000)( 2.00 1.00)( 2.002.00)1(1)(2),24xxxxxxlxxxxxxxxxxx xx 0231101213()()()1( )(2)(1)(2),()()()4xxxxxxl xxxxxxxxxx0132202123()()()1( )(2) (2),()()()3xxxxxxlxxx xxxxxxx 三次Lagrange插值多项式为: f (0.
18、6) L3(0.6) = -0.472.0123303132()()()1( )(2) (1).()()()8xxxxxxlxxx xxxxxxx3171( )(1)(2)(2)(1)(2)244217(2) (2)(2) (1).38L xx xxxxxxx xxx x n 次插值多项式的误差次插值多项式的误差 定理定理 2 2 设Ln(x)是a,b上过插值点(xi, f(xi)的 n 次 Lagrange插值多项式,节点xi两两互异,若 f(x)Cn+1a,b, 则 x a,b,存在=(x) a,b,使得 证明提示:因为Rn(xi)=0, i =0, 1, 2, , n, 令 作辅助函数
19、显然, (t)有 n+2 个零点x0,x1,xn,x,反复应用Rolle 定理,由(n+1)()=0,定理得证。(1)01( )( )()()()(1.9)(1)!nnnfRxxxxxxxn01( )( )()()().nnRxk x xxxxxx01( )( )( )( )()()(),nntf tL tk x txtxtx n 次插值多项式的几点说明次插值多项式的几点说明 若| f (n+1)(x)|M,xa,b,则由(1.9)得 当 f(x)为不高于n次的多项式时,因为Rn(x)=0,则 Ln(x) = f (x). 特别地,取 f(x) = xk, k = 0,1,2,n, 则 令 k
20、 =0,可知 n 次Lagrange基函数li(x)满足0( )(1.12)(1)!nniiMRxxxn 即 f(x)为不超过n次的多项式时,插值多项式就是被插函数本身00( )( ) ()( )( ),0,1,2, .nnkkniiiiiiLxl x f xl x xf xxkn0( )1.niil x 实际计算中,如果 f (x)的形式未知,也就无法求出 f (n+1)(x)或估计出其较精确的上界。所以也就无法估计|Rn(x)|。 我们采用事后估计,即给定 n+2个节点,x0, x1, xn, xn+1,构造两个n次插值多项式Ln(x)和 ,用它们来估计|Rn(x)|。 由定理 2,得(
21、)nLx( )0121nLxnnxxxxx ( )nLx (1)101()( )( )()()()(1.13)(1)!nnnff xLxxxxxxxn(1)211()( )( )()()()(1.14)(1)!nnnnff xLxxxxxxxn假定 f (n+1)(x) 在 a, b内连续, 且变化不大, 即 f (n+1)(1) f (n+1)(2).(1.13)和(1.14)两式相除,得解之得,于是,得误差01( )( ),( )( )nnnf xLxxxxxf xLx100110( )( )( ).nnnnnxxxxf xLxLxxxxx001( )( )( )( )( )(1.16)n
22、nnnnxxRxf xLxLxLxxx事后估计:即用求出的插值多项式来估计误差。 n 次插值多项式的算法描述次插值多项式的算法描述 输入节点数 n、插值点(xi, yi) (i=0,1,2, ,n)和要计算的函数点 x。 实现基函数 li(x)和插值 Ln(x): FOR i=0,1, , n tmp=1; FOR j=0, 1, , i1, i+1, , n tmp=tmp*(xxj)/(xixj); (实现 li(x) ) fx=fx+tmp*yi; (实现Ln(x) ) 输出 fx。2006年9月22日1.3 Newton插值插值 Lagrange插值的优缺点:插值的优缺点: 优点:优点
23、:形式整齐、规范,理论上保证插值的存在唯一性。 缺点:缺点:计算量大、不具有承袭性。1.3.1 差商及其性质差商及其性质一阶差商一阶差商:f (x)关于点x0,x1的一阶差商记为 f x0, x1,二阶差商:二阶差商: f (x)关于点x0,x1, x2的二阶差商记为 f x0, x1, x2,010101()(),.f xf xf xxxx011201202,.f xxf x xf xx xxx 一般地,k 阶差商 f x0, x1, xn 定义为: 差商的性质差商的性质 性质性质1 k 阶差商 f x0, x1, xk可表成节点上函数值 f(x0), f(x1), , f(xk) 的线性组
24、合,即 例如例如,k = 2时, (1.17)011120110,.kkkkkf xxxf x xxf xxxxxx0101101,().()()()()kkiiiiiiikif xxxf xxxxxxxxx011201202012010210122021,()()().()()()()()()f xxf x xf xx xxxf xf xf xxxxxxxxxxxxx性质性质 2 各阶差商具有对称性, 即改变差商中节点的次序不会 改变差商的值。设i0, i1, , ik为0, 1, , k的任一排列, 则 由性质1知,任意改变节点的次序,只改变(1.17)式右端求和的次序,故其值不变。例如,
25、由定义知,性质性质 3 若 f (x)为 n 次多项式,则一阶差商 f x, xi为n 1次 多项式。 由定义令x = xi, 则分子为0, 说明分子中含有因子x xi, 与分母约去。0101,.kkiiif xxxf xxx01011001()(),.f xf xf xxf x xxx( )() ,.iiif xf xf x xxx性质性质 4 若 f (x)在 a, b 存在 n +1阶导数,xi a, b , i = 0,1,n, 固定 xa, b, 则 n+1 阶差商与导数 存在如下关系:(1)01( ) ,( , ).(1)!nnff x xxxa bn 差商的计算差商的计算 由差商
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 插值法

限制150内