第5章数值积分《计算方法与实习》第5章数值积分§1插值型求积公式§2复化求积公式§3龙贝格(Romberg)求积方法§4数值微分第5章数值积分《计算方法与实习》1.1牛顿―柯特斯(Newton―Cotes)公式在一元函数的积分学中,我们已经熟知,若函数f(x)在区间[a,b]上连续且其原?函数为F(x),则可用牛顿―莱布尼兹公式()()()bafxFbFa(5―1)第5章数值积分《计算方法与实习》来求定积分。公式(5―1)虽然在理论上或在解决实际问题中都起了很大的作用,?但它并不能完全解决定积分的计算问题。因为定积分的计算常常会碰到以下三种?情况:(1)被积函数f(x)的原函数F(x)不易找到。许多很简单的函?数,例如等,其原函数都不能用初等函数表示成有限形式。2sin1,,lnxxexx第5章数值积分《计算方法与实习》(2)被积函数f(x)没有具体的解析表达式。其函数关系由表格或图形表?示,无法求出原函数。(3)尽管f(x)的原函数能表示成有限形式但其表达式相当复杂。例如定?积分的被积函数的原函数就比较复杂,从数值计算角度来?看,计算量太大。41badxx411x第5章数值积分《计算方法与实习》如图5.1,若用?左矩形近似地代替曲边梯形,则得到左矩形公式()()()()()()babafxdxbafafxdxbafb同样可得到右矩形公式(5―2)(5―3)第5章数值积分《计算方法与实习》图5.1第5章数值积分《计算方法与实习》如图5.2,若用梯形的面积近似地代替曲边梯形的面积,则得到计算定积分?的梯形公式()[()()]2babafxdxfafb(5―4)如图5.3,若用抛物线代替曲线f(x),则可得到抛物线公式(?或辛普生公式)()[()4()()]2babaabfxdxfaffbb(5―5)第5章数值积分《计算方法与实习》图5.2图5.3第5章数值积分《计算方法与实习》1.1牛顿―柯特斯(Newton―Cotes)公式建立数值积分公式最基本的思想是选取一个既简单又有足够精度的函数φ(x),?用φ(x)代替被积函数f(x),于是有现用第四章介绍的插值多项式Pn(x)来代替被积函数f(x),即有()()bbaafxdxxdx()()bbnaafxdxPxdx取基点为等距,即a=x0<x1<…<xn=b第5章数值积分《计算方法与实习》利用拉格朗日插值多项式10,0,1,2,,10,1,2,,kkibahxxknnxxihin()()()nnfxpxRx(5―6)其中00(1)1()()()()()(,)(1)!nnkniikikkinnnxxPxyxxfRxxabn(5―7)第5章数值积分《计算方法与实习》这里yi=f(xi),对式(5―6)两边积分得00(1)10()()()[]1()()(1)!()bbbnnaaannbkiaikikkibnnaniinifxdxpxdxRxdxxxdxyxxfxdxnayRf第5章数值积分《计算方法与实习》为牛顿―柯特斯求积公式,Rn(f)为牛顿―柯特斯求积公式的余项。令x=x0+sh,0≤s≤n0(1)101()()()(1)!()nbkiakikkibnnnanbiiaixxadxxxRffxdxnfxdxay(5―8)(5―9)(5―10)我们称第5章数值积分《计算方法与实习》()00()0000()1(1)()!()!nnniikkinnnikkininnkkibaskadsbacnikskCdsnikskdsinin(5―11)第5章数值积分《计算方法与实习》称C(n)i为柯特斯求积系数。很显然,当n=1时,可算得1(1)001(1)101(1)212CsdsCsds此时式(5―10)为()[()()]2babafxdxfafb(5―12)第5章数值积分《计算方法与实习》这是梯形公式。当n=2时,可得2(2)002(2)102(2)2011(1)(2)4614(2)2611(1)46CssdsCssdsCssds于是()[()4()()]62babaabfxdxfaffb(5―13)第5章数值积分《计算方法与实习》这是抛物线公式。当n=3时,3(3)003(3)103(3)203(3)3011(1)(2)(3)18813(2)(3)6813(1)(3)6811(1)(2)188CsssdsCsssdsCsssdsCsssds第5章数值积分《计算方法与实习》代入(5―10)式得到求积公式0123()[()3()3()()]8babafxdxfxfxfxfx(5―14)类似地可分别求出n=4,5,…时的柯特斯系数,从而建立相应的求积公式。具体结果见表5―1。从表中可以看出,当n≤7时,柯特斯系数为正;从n≥8开始,柯特斯系数有正有负。因此,当n≥8时,误差有可能传播扩大,牛顿―柯特斯求积公式不宜采用。第5章数值积分《计算方法与实习》柯特斯系数C(n)i仅与n和i有关,与被积函数f(x)无关,且满足()01nniiC(5―15)事实上,式(5―10)对f(x)=1是准确成立的。第5章数值积分《计算方法与实习》例1试分别用梯形公式和抛物线公式计算积分解利用梯形公式10.5xdx10.510.5(0.51)20.4267767xdx利用抛物线公式10.510.5(0.540.751)60.43.93403xdx第5章数值积分《计算方法与实习》原积分的准确值31120.50.520.430964413xdxx第5章数值积分《计算方法与实习》表5―1第5章数值积分《计算方法与实习》1.2误差估计现对牛顿―柯特斯求积公式所产生的误差作一个分析。由式(5―9),牛顿―柯特斯求积公式的余项为易知,牛顿―柯特斯求积公式(5―10)对任何不高于n次的多项式是准确成立的。这是因为f(n+1)(ξ)≡0故Rn(f)≡0(1)11()()()(1)!bnnnaRffxdxn第5章数值积分《计算方法与实习》一般说来,若某个求积公式对于次数不高于m的多项式都准确成立(即Rn(f)≡0),而对于某一次数为m+1的多项式并不准确成立(即Rn(f)0),则称这一求积公式的代数精确度为m。牛顿―柯特斯求积公式的代数精确度至少为n。通常在基点个数相等的情况下,代数精确度愈高,求积公式就愈精确。定理1(梯形公式的误差)设f(x)在区间[a,b]上具有连续的二阶导数,则梯形求积公式的误差为第5章数值积分《计算方法与实习》由于ω1(x)=(x-a)(x-b)311()()(),(,)121()()()()2babaRffabRffxaxbdx证由式(5―9)知,梯形公式的余项为(5―16)第5章数值积分《计算方法与实习》在区间(a,b)内不变号,f″(ξ)是x的函数且在[a,b]上连续,故根据积分第二中值定理参见有关《数学分析》教材中“一元函数积分学第二中值定理”。知,存在某一η∈(a,b)使131()()()()21()()12baRffxaxbdxbaf第5章数值积分《计算方法与实习》定理2(抛物线公式的误差)设f(x)在[a,b]上有连续的四阶导数,则抛物线公式的误差为5(4)22()()(),(,)28801()()()()()3!2babaRffababRffxaxxbdx(5―17)证由式(5―9)知第5章数值积分《计算方法与实习》§2复合求积公式2.1复合梯形公式对于定积分(5―1),将积分区间[a,b]分成n个相等的子区间[xi,xi+1],这里步长1,0,1,,1iibahxxinn在每一个子区间[xi,xi+1]上使用梯形公式,则第5章数值积分《计算方法与实习》相加后得1311()[()()]()212(,)iixiiixiiihhfxdxfxfxfxx(5―18)110311100()()[()()]()212iinbxaxinniiiiifxdxfxdxhhfxfxf(5―19)若f″(x)在[a,b]上连续,由连续函数的介值定理,存在某一ξ∈(a,b)使得10()()niiffn第5章数值积分《计算方法与实习》因而33103()()1212()()12niihmhffbaf于是得到复合梯形公式1013()12()[()()2()]2()()()12nbniainhfxdxfxfxfxbaRffn(5―21)其余项为第5章数值积分《计算方法与实习》例2若用复合梯形公式计算积分问积分区间要等分多少才能保证有五位有效数字解由余项(5―21)式10xedx3()12()12()()()12()()()1()()12nxnbaRffnfxfxfxebafxeeRfn则当0<x<1时,有因为又故第5章数值积分《计算方法与实习》由于原积分的准确值具有一位整数,因此要使近似积分值有五位有效数字,只需取n满足4224110122610lg2lg4lg4lglglg1.82662ennebneebn两边取对数得整理后得到第5章数值积分《计算方法与实习》2.2复合抛物线公式类似复合梯形公式的做法,把区间[a,b]分成n个相等的子区间[x2i,x2i+2](i=0,1,…,n-1),设每个子区间上的中点为x2i+1(i=0,1,…,n-1),且在每一个子区间[x2i,x2i+2]上利用抛物线公式得1,0,1,,212iibahxxinn222221225(4)222()[()4()()]3(),(,)90iixiiixiiiihfxdxfxfxfxhfxx(5―22)第5章数值积分《计算方法与实习》相加后得22210122122051(4)0()()[()4()()3()90iinbxaxiniiiiniifxdxfxdxhfxfxfxhf(5―23)第5章数值积分《计算方法与实习》图5.4第5章数值积分《计算方法与实习》图5.4第5章数值积分《计算方法与实习》若f(4)(x)在[a,b]上连续,则551(4)(4)05(4)4()()9090()(),(,)2880niiihnhffbafabn从而得到复合抛物线公式1202212200()[()()4()2()3nnbniiaiihfxdxfxfxfxfx(5―24)第5章数值积分《计算方法与实习》其余项为5()(4)24()()()2880nbaRffn(5―25)复合抛物线公式的计算框图见5.4。例3根据给出的函数sin()xfxx的数据表5―2,分别用复合梯形公式和复合抛物线公式计算10sinxIdxx第5章数值积分《计算方法与实习》表5―2第5章数值积分《计算方法与实习》解用复合梯形公式,这里10.1258h10sin0.125{(0)2[(0.125)(0.25)2(0.375)(0.5)(0.625)(0.75)0.94569086xdxfffxffff第5章数值积分《计算方法与实习》用复合抛物线公式可得10sin0.125{(0)4[(0.125)(0.375)3(0.625)(0.875)]2[(0.25)(0.5)(0.75)](1)}0.946083305xdxff