您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 市场营销 > 数值分析小论文-董安
0数值分析作业课题名称代数插值法-拉格朗日插值法班级Y110201研究生姓名董安学号S20110181学科、专业机械制造及其自动化所在院、系机械工程及自动化学院2011年12月26日1代数插值法---拉格朗日插值法数值分析中的插值法是一种古老的数学方法,它来自生产实践。利用计算机解决工程问题与常规手工计算的差异就在于它特别的计算方法.电机设计中常常需要通过查曲线、表格或通过作图来确定某一参量,如查磁化曲线、查异步电动机饱和系数曲线等.手工设计时,设计者是通过寻找坐标的方法来实现.用计算机来完成上述工作时,采用数值插值法来完成。因此学好数值分析的插值法很重要。插值法是函数逼近的重要方法之一,有着广泛的应用。在生产和实验中,函数f(x)或者其表达式不便于计算复杂或者无表达式而只有函数在给定点的函数值(或其导数值),此时我们希望建立一个简单的而便于计算的函数(x),使其近似的代替f(x),有很多种插值法,其中以拉格朗日(Lagrange)插值和牛顿(Newton)插值为代表的多项式插值最有特点,常用的插值还有Hermit插值,分段插值和样条插值.本文着重介绍拉格朗日(Lagrange)插值法。1.一元函数插值概念定义设有m+1个互异的实数1x,2x,···,mx和n+1个实值函数()0xj,()1xj,···()nxj,其中n£m。若向量组kf=(()0kxj,()1kxj,···,()kmxj)T(k=0,1,,n)线性无关,则称函数组{()kxj(k=0,1,,n)}在点集{ix(i=0,1,,m)}上线性无关;否则称为线性相关。例如,函数组{2+x,1-x,x+2x}在点集{1,2,3,4}上线性无关。又如,函数组{sinx,n2x,sin3x}在点集{0,3p,23p,p}上线性相关。给点n+1个互异的实数0x,1x,···,nx,实值函数()fx在包含0x,1x,···,nx的某个区间[],ab内有定义。设函数组{()kxj(k=0,1,,n)}是次数不高于n的多项式组,且在点集{0x,1x,···,nx}上线性无关。2现在提出如下的问题:在次数不高于n的多项式集合nD=Span{0j,1j,···,nj}中寻求多项式()npx=()0nkkkcxj=å(1.1)使其满足条件()nipx=()ifx(i=0,1,,n)(1.2)此问题称为一元函数的代数插值问题。0x,1x,···,nx称为插值节点;()fx称为被插值函数;()kxj(k=0,1,,n)称为插值基函数;条件(1.1)称为插值条件;满足插值条件(1.2)的多项式(1.1)称为插值多项式。由于插值基函数组{()kxj(k=0,1,,n)}在点集{ix(i=0,1,,n)}上线性无关,所以满足插值条件(1.2)的n次插值多项式()npx是存在且唯一的。又由于插值基函数组限定为次数不高于n的多项式组,所以对于不同的插值基函数组,只要满足同一插值条件(1.2),则所得的n次插值多项式也是唯一的。2.Lagrange插值方法2.1.Lagrange插值基函数nkjjjkjkxxxxxl0)(()0,1,,kn=称为Lagrange插值基函数。显然,()klx()0,1,,kn=都是n次多项式,且具有下列性质()kilx=)(0)(1kiki因此,函数组()klx()0,1,,kn=必在点集{0x,1x,···,nx}上线性无关,并且()npx=()()0nkkklxfx=å或3()npx=()00nnjkkjkjjkxxfxxx==¹骣琪-琪琪-琪桫Õå就是满足插值条件(1.2)的n次插值多项式。2.2.Lagrange插值多项式设给定n+1个互异点(,())kkxfx,0,1,,kn=,ijxx¹,ij¹,满足插值条件)()(kknxfxL,nk,,1,0的n次多项式nknkjjjkjkknkknxxxxxfxlxfxL000))(()()()(为Lagrange插值多项式,称njjxnnxxnfxLxfxE0)1()()!1()()()()(为插值余项,其中()xxxx=Î(a,b)。3.例题分析例1.设0x,1x,···,nx为n+1个互异的插值节点,()0lx,()1lx,…,()nlx为Lagrange插值基函数,证明:0()1njjlx=ºÕ证考虑()1fxº,利用Lagrange插值余项定理)())(()!1()()()(101nnnxxxxxxnfxLxf显然1)()(xfxLn。利用Lagrange基函数插值公式,有kjnjkjjnjjnxxlxxlxfxL)()()()(00例2给出下列表格:x00.20.40.60.81.0)(xS00.199560.396160.588130.772100.94608对于正弦积分4xtdttxS0sin)(,当()Sx=0.45时,求x的值。解利用拉格朗日插值计算线性插值,取0t=0.39616,1t=0.58813,0x=0.4,1x=0.639616.058813.039616.06.058813.039616.058813.04.0)(1tttL,456092097.0)45.0(1Lx。2次插值,取19956.00t,39616.01t,58813.02t,2.00x,4.01x,6.02x)58813.019956.0)(39616.019956.0()58813.0)(39616.0(2.0)(2tttL)58813.039616.0)(19956.039616.0()5813.0)(19956.0(4.0tt)39616.058813.0)(19956.058813.0()39616.0)(19956.0(6.0tt,455622509.0)45.0(2Lx。故x值约为0.456。例3取节点00x=,11x=对函数xye-=建立拉格朗日插值。解先构造00x=,11x=两点的拉格朗日插值多项式。因为x01y11eLagrange型插值多项式构造(0,1)和(1,1e-)的一次插值基,数)1()(1010xxxxxxl,xxxxxxl0101)(这样就容易得到5111001)1()()()(xexxlyxlyx例4试由()2xfx=的函数表X-101()fx0.512建立二次插值多项式()2px,用以计算0.32的近似值,并估计截断误差。解实用n=2的Lagrange插值多项式,得()2px=()()()()()()()()()()()()20111100.5120.250.751101001011110xxxxxxxx--+-+-++=++---+-+-截断误差:()()()()0.320.666020.30.310.300.310.030303!p-?--=4.数值试验分析已知数据如下:ix0.561600.562800.564010.56521iy0.827410.826590.825770.81495试用Lagrange插值多项式求x=0.5626,0.5635,0.5645时的函数近似值。编写Matlab函数M文件Lagrange如下:Functionyy=Lagrange(x,y,xi)m=length(x);n=length(y);if~m=n,error(‘向量x与y的长度必须一致’);ends=0;fori=1:nz=ones(1,length(xi))Forj=1:nif~j=iz=z.*(xi-x(j))/(x(i)-x(j));endends=s+z*y(i);endyy=s;在命令窗口调用函数M文件Lagrange,输出结果如下:6x=[0.5610,0.56280,0.56401,0.56521];y=[0.82741,0.82659,0.82577,0.82459];xi=[0.5625,0.5635,0.5645];yi=Lagrange(x,y,xi)yi=0.82680.82610.8254plot(x,y,`o`,xi,yi,g^`)5.算法评价及误差分析算法评价可对插值函数选择多种不同的函数类型,由于代数多项式具有简单和一些良好的特性,故常选用代数多项式作为插值函数。利用插值基函数很容易得到拉格朗日插值多项式,公式结构紧凑,在理论分析中甚为方便,但当插值节点增减时全部插值基函数()klx(k=0,1,…,n)均要随之变化,整个公式也将发生变化,这在实际计算中是很不方便的。误差分析依据f(x)数据表构造出来它的插值函数()npx,然后,在给定点x计算()npx的值作为f(x)的近似值,这一过程称插值。所谓“插值”,通俗地说,就是依据f(x)所给的函数表“插出”所要的函数值。由于插值函数()npx通常只是近似地刻划了原来的函数f(x),在插值点x处计算()npx作为f(x)的函数值,一般地说总有误差,称R(x)=f(x)-()npx为插值函数的截断误差,或称插值余项。用简单的插值函数()npx来替代很复杂的的函数f(x),这种做法究竟是否有效,要看截断误差是否满足所要求的精度。取n+1个节点进行插值时,插值多项式是唯一的。
本文标题:数值分析小论文-董安
链接地址:https://www.777doc.com/doc-4549426 .html