定积分的近似计算

合集下载

定积分的近似计算方法

定积分的近似计算方法

定积分的近似计算方法定积分近似计算方法指的是利用数值计算方法来估算给定函数在一定区间上的积分值。

这些方法常常用于当函数在该区间内无法求得解析式时,或者解析式难以求得的情况下。

下面将介绍常用的数值积分近似计算方法。

一、矩形法矩形法即将积分区间等分为若干小区间,然后在每个小区间中选择一个代表点,将函数在该点的函数值作为近似积分的值。

具体可以分为左矩形法、右矩形法和中矩形法。

1.左矩形法左矩形法即取每个小区间的左端点作为代表点,近似积分的值为:∫[a, b]f(x)dx ≈ Δx * [f(a) +f(a+Δx) + … + f(a+(n-1)Δx)]其中,Δx=(b-a)/n,n为区间的等分数。

2.右矩形法右矩形法即取每个小区间的右端点作为代表点,近似积分的值为:∫[a, b]f(x)dx ≈ Δx * [f(a+Δx) + f(a+2Δx) + … +f(a+nΔx)]其中,Δx=(b-a)/n,n为区间的等分数。

3.中矩形法中矩形法即取每个小区间的中点作为代表点,近似积分的值为:∫[a, b]f(x)dx ≈ Δx * [f(a+Δx/2) + f(a+3Δx/2) + … +f(a+(2n-1)Δx/2)]其中,Δx=(b-a)/n,n为区间的等分数。

二、梯形法梯形法是通过将积分区间上的曲线拟合为多个梯形来近似计算定积分的方法。

将积分区间[a,b]等分为n个小区间,然后在每个小区间上用两个端点处的函数值拟合成一个梯形,然后将这些梯形的面积加起来即可得到近似的定积分的值。

具体计算公式为:∫[a, b]f(x)dx ≈ Δx/2 * [f(a) + 2f(a+Δx) + 2f(a+2Δx)+ … + 2f(a+(n-1)Δx) + f(b)]其中,Δx=(b-a)/n,n为区间的等分数。

三、辛普森法辛普森法是通过将积分区间上的曲线拟合为多个二次多项式的方法。

将积分区间[a,b]等分为n个小区间,每两个相邻区间拟合成一个二次多项式。

近似求积公式

近似求积公式

近似求积公式在数学中,求解积分是一项非常重要的任务。

但是,对于很多函数,我们很难找到其精确的积分表达式。

因此,我们需要一些近似的方法来求解积分。

近似求积公式是这样一种方法,它通过将积分区间分成若干个小区间,然后在每个小区间上使用某种简单的函数来代替原函数,从而得到一个近似的积分值。

这种方法的优点是计算简单,但是精度相对较低。

在实际应用中,我们需要根据具体的情况来选择合适的近似求积公式。

常见的近似求积公式有梯形公式、辛普森公式、牛顿-科茨公式等。

下面我们将分别介绍这些公式的原理和应用。

梯形公式梯形公式是最简单的一种近似求积公式。

它的原理是将积分区间分成若干个小区间,然后在每个小区间上使用线性函数来代替原函数。

具体来说,梯形公式的积分公式为:$$int_a^b f(x)dxapprox frac{b-a}{2}[f(a)+f(b)]$$ 其中,$a$和$b$分别是积分区间的左右端点,$f(x)$是被积函数。

公式中的近似积分值等于积分区间两端点处函数值之和的一半乘以积分区间的长度。

梯形公式的应用非常广泛。

它常用于计算定积分的近似值,特别是当被积函数难以求解其精确积分时。

梯形公式的精度相对较低,但是计算简单,因此在实际应用中经常被使用。

辛普森公式辛普森公式是一种比梯形公式更精确的近似求积公式。

它的原理是将积分区间分成若干个小区间,然后在每个小区间上使用二次函数来代替原函数。

具体来说,辛普森公式的积分公式为:$$int_a^b f(x)dxapprox frac{b-a}{6}[f(a)+4f(frac{a+b}{2})+f(b)]$$其中,$a$和$b$分别是积分区间的左右端点,$f(x)$是被积函数。

公式中的近似积分值等于积分区间两端点处函数值加上中点处函数值的四倍再加上积分区间的长度的一半的函数值之和的一半。

辛普森公式比梯形公式更精确,因为它在每个小区间上使用了二次函数来代替原函数,与原函数更加接近。

定积分近似计算方法

定积分近似计算方法

定积分的近似计算方法摘要 本文主要讨论了一元函数常见的数值积分方法,例如插值型求积公式、龙贝格求积公式、高斯求积公式等近似计算方法,在用这些方法计算定积分时,会产生一些误差,为了减少误差, 可以利用复化求积公式、复化高斯公式等.本文围绕这些方法,系统介绍它们的计算公式以及截断误差,并用例题分析它们产生误差的大小、计算量等.关键词 插值型积分 龙贝格积分 高斯积分 误差分析 近似计算1引言在计算定积分的值()b aI f x dx =⎰时,常常根据微积分学基本定理求出)(x f 的一个原函数)(x F ,再用牛顿-莱布尼茨公式求的积分,()()()baI f x dx F b F a ==-⎰.但在实际应用中,这种方法只限于解决一小部分定积分的求值问题.当函数没有具体表达式,只是一些实验测得数据形成的表格或图形或者是()F x 无法用初等函数表示,例如,2bx ae dx ⎰,2sin ba x dx ⎰等等,这就需要我们用一些近似方法求的积分值.与数值积分一样,把积分区间细分,在每个小区间上,找到简单函数)(x ϕ来近似代替()f x ,且()b a x dx ϕ⎰的值容易求的.这样就把计算复杂的()ba f x dx ⎰转化为求简单的积分值()bax dx ϕ⎰.因此,定积分的近似计算实质上是就是被积函数的近似计算问题.2常见数值方法 2.1牛顿-科茨数值方法牛顿-科茨求积公式是求积节点等距离分布的插值型求积公式.利用插值多项式来构造数值积分公式是最常用、最基本的方法,具体做法是:给定区间[,]a b 上一组节点01...n a x x x b =<<<=,以及节点处函数()(0,1,2,i f x i n =,作()f x 的n 次拉格朗日多项式()()()nn i i i x f x l x ϕ==∑,其中 011011()()()()()()()()()i i n i i i i i i i n x x L x x x x L x x l x x x L x x x x L x x -+-+----=----,将插值公式(1)1()()()()(1)!n n n f f x x x n ξϕω++=++.其中1012()()()()()n n x x x x x x x L x x ω+=----,[,]a b ξ∈,依赖于变量x , 上式积分得(1)1()()()()(1)!n bb bn n aa af f x dx x dx x dx n ξϕω++=++⎰⎰⎰(1)(1)0()()()()(1)!n nb biiin aai f f x l x dx x dx n ξω++==++∑⎰⎰(1)(1)0()()()()(1)!n nbbi i n aai f f x b l x dx x dxn ξω++==++∑⎰⎰若记 (),(0,1,2,bi ia A l x dx i ==⎰….. )n (1)(1)1()[]()(1)!n bn af R f x dxn ξω++=+⎰, (2)则有()()[]nbi i ai f x dx A f x R f ==+∑⎰(3)称式(3)为插值求型公式,其中(0,1,2,i A i =…. )n 与()f x 无关,叫求积系数, i x 为求积节点,[]R f 为求积公式余项,其中求积系数由(1)决定.2.1.1梯形求积公式1梯形公式当插值节点01,x x 分别选取区间端点,a b 时,由式(3)分别求出求积系数10012bb aa x x xb b aA dx dx x x a b ---===--⎰⎰,01102bb aa x x x ab a A dx dx x x b a ---===--⎰⎰.从而的求积公式()[()()]2bab a f x dx f a f b -≈+⎰. (4) 称求积公式(4)为梯形求积公式,简称梯形公式.2梯形公式截断误差: 3*()[](),12b a R f f ξ-''=- *[,]a b ξ∈. (5) 3梯形求积公式的代数精度:1 当()1f x =时,式(5)中 1(1)2bab adx b a x b a -=-=+=-⎰. 精确成立.2.1.2 辛普森求积公式1辛普森求积公式当选取节点为012,,2a bx a x x b +===时,由式(1)求下列求积系数 1200102()()()()2()()6()()2b b a a a b x x b x x x x b a A dx dx a b x x x x a a b +-----===+----⎰⎰,0211002()()()()2()()()3()()22bb aa x x x x x a xb b a A dx dx a b a b x x x x a b -----===++----⎰⎰.0122021()()()()2()()6()()22b b a a a bx a x x x x x b a A dx dx a b a b x x x x a b +-----===++----⎰⎰ .从而求积公式()[()4()()]62bab a a bf x dx f a f f b -+≈++⎰. (6)称式(6)为抛物线积分公式或辛普森积分公式.2抛物线求积公式误差估计定理1.若()f x 在[,]a b 上有四阶连续导数,则抛物线公式(6)的余项为:5(4)**()[](),[,]2880b a R f f a b ξξ--=∈. (7) 3抛物线公式的代数精度为3.易验证,当23()1,,,f x x x x =时,式(6)精确成立,而当4()f x x =时,式(6)不能精确成立.2.1.3 牛顿-科茨公式1牛顿-科茨公式在等距离节点i x a ih =+下,其中(0,1,2b ah i n-==…. )n .作为变量替换x a th =+,那么由求积公式(1),得系数:10(1)(1)(1)()!(1)(1)!ni n t t t i t i t n A h dt i n ---+---==--⎰10(1)(1)...(1)(1)...()(0,1,2,...)!(1)!n nb a t t t i t i t n dt i n n i n -----+---=-⎰ (8)则 ()()n i i A b a C =- (9) 于是差值求积公式为:()0()()()[]nbn i i ai f x dx b a C f x R f ==-+∑⎰(10)称公式(10)为牛顿-科茨求积公式,其中()n iC 称为科茨系数.显然,科茨系数与被积函数()f x 及积分区间[,]a b 无关,它指依赖于n ,且为多项式积分.因此,只要给出n ,就能看出i A ,并写出相应地牛顿-科茨公式.2牛顿-科茨公式的截断误差与代数精度.当1n =与2n =情况分析牛顿-科茨公式的截断误差为(1)()[]()()()(1)!n b b bn aaaf R f f x dx x dx x dxn ξϕω+=-=+⎰⎰⎰牛顿-科茨公式的截断误差还可以写成(2)*1()[]()((2)!n bn a f R f x dx n n ξω++=+⎰为偶数)(1)*1()[]()(1)!n bn a f R f x dx n ξω++=+⎰ (n 为奇数) (11) 其中*[,]a b ξ∈,且不依赖于x ,101()()()...()n n x x x x x x x ω+=---,对()f x 为任何并不超过n 次多项式,均有(1)()0n fx +≡,因而[]0R f ≡,即0()()nbi i ai f x dx A f x ==∑⎰精确成立,也就是说,牛顿-科茨公式的代数精度至少为n ,牛顿-科茨公式在n 为偶数时,至少具有1n +次代数精度,在n 为奇数情况时,至少具有n 次代数精度.2.1.4复化梯形求积公式将区间[,]a b 等分,节点为i x a ih =+ (步长b ah n-=),0,1,2...,i n =)在每个小区间1[,]i i x x -上采用梯形公式(4)得11111()()[(()()]2ii nnbx i i i i ax i i x x f x dx f x dx f x f x ---==-=≈+=∑∑⎰⎰11[()()]2ni i i hf x f x +=+=∑11[()2()()]2n i n i hf a f x f b T -=++=∑ (12)称式(12)为复化梯形公式. 复化梯形公式余项为()2()()()12i n b a R f h f η-''=-(13) 2.1.5复化辛普森求积公式在每个小区间],[1+i i x x 上,辛普森公式(6)得11102()[()4()()]6n bi i ai i hf x dx f x f x f x -++==++∑⎰(14)111012[()4()2((6)]6n n i i i i hf a f x f x f --+===+++∑∑记 )]()(2)(4)([6111021b f x f x f a f hS n i i n i i n +++=∑∑-=-=+ (15)式中,21+i x为],[1+i i x x 的中点,即h x x i i 2121+=+.式(15)称为复化辛普森公式,其余项为∑-=-=-=10)4(4)()2(180)()(n i i n n f h h S f I f R η, 1(,).i i i x x η+∈故 ),(),()2(180)(R )4(4b a f h a b f n ∈--=ηη (16) 为复化辛普森的截断误差. 2.1.6复化科茨求积公式将区间[,]a b n 等分, 4n m =,m 为正整数,在每个子区间444[,]k k x x -上用科茨求积公式得到复化求积公式:412()[7()7()32()45mbk ak hf x dx f a f b f x -≈++∑⎰14241411112()32()14()mmm k k k N k k k f xf x f x C ---===+++=∑∑∑ (17)其中 4b a b a h n m--==, k x a kh =+ 其截断误差为6(6)2()[,](),()945n b a R f C h f a b ηη-=-<. 2.1.7 变步长复化求积方法复化求积公式虽然计算简单,也达到了提高精度的目的,但为了满足精度要求必须顾及误差,利用误差公式往往很困难,因为误差表达式中含有未知函数的导数,而估计各阶导数的最大值不太容易.我们可以采取把积分的区间[,]a b 细分的办法,在计算积分时将步长逐步折半,利用前后两次结果进行误差估计,如此继续,直到相邻两次结果相差不大,取最小的步长算出的结果为积分值,这种方法称为变步长积分法.以复化梯形公式为例,把区间[,]a b 分成n 等分,设复化梯形公式的近似值为n T ,原积分值为I ,由复化梯形公式误差公式(14)知:2"11()()()n b a b a I T f a b N N ηη--=-<<再把区间[,]a b 分成2n 等分,得近似值2n T ,则2222()()()122k b a b a I T f a b nηη--''=-<< 假定()f x ''在[,]a b 上变化不大,既有12()()f f ηη''''≈. 由上式得 .24kkI T I T -≈-于是 222211()()341n n n n n n I T T T T T T ≈+-=+-- (18) 式(18)表明若用2n T 作为I 的近似值,其截断误差约为2()3n n T T - (19)2.2 龙贝格求积公式龙贝格积分法的基本思想是采用复化梯形求积方法不断折半步长过程中,在积分结果中加入时候误差估计值进行补偿,使积分计算的收敛性加速,就可以加工出,,,...n n n S C R 精度较高的积分结果.由式(19), 2n T 的误差大致为23n nT T -,因此,可用这个误差值作为2n T 的一种补偿,加到2n T 上,则可得到积分准确值I ,比2n T 的更好近似值~T .222141()333n n n n nT T T T T T =+-=- 2221(2)21n n T T =-- (20)式(20)左端1n =时 记122121141()333S T T T T T =+-=- 112()()332a b T b a f +=+- [()4()()]62b a a b f a f f b -+=++恰好为[,]a b 上应用辛普生公式(16)的结果.在每个小区间应用辛普生公式:11[()2()()]2n n k k hT f a f x f b -==++∑121()112[()2()()2()]4n n n k k k k hT f a f x f b f x --===+++∑∑代入式(20)的左端得11111[()2()()2()32n nk k k k h f a f x f b f x -==+++--∑∑ 11[()2()()]2n k k h f a f x f b -++∑11111[()4()2()()]62n n k k k k f a f x f x f b -===+-++∑∑n S =从而复化辛普森公式与复化梯形公式公式有以下关系式2441n nn T T S -=- (21)类似也可以推证,在辛普森序列基础上,利用以下关系式22242161151541n n n n n S S C S S -=-=- (22)可以造出收敛速度更快的科茨序列12,...,...n C C C 将此推行下去,在科茨序列基础上,通过243431n nn C C R -=- (23)构造出收敛速度比科茨序列更快的龙贝格序列12,,......n R R R .以上这种通过逐步构造龙贝格序列的积分近似值法就称为龙贝格积分法.2.3高斯求积公式由定理()()()baf x F b F a =-⎰知,插值型求积公式的代数精度与求积节点的个数有关,具有1n +个节点的插值型求积公式至少具有n 次代数精度.不仅如此,代数精度与节点的选取有关,在构造牛顿-科茨求积公式时,为了简化处理过程,限定用等分节点作为求积节点,这样做,虽然公式确实得到简化,但同时也限制了公式的代数精度. 设积分,1,1=-=b a 本段讨论如下求积公式11()()ni i i f x A f x -==∑⎰(24)对任意积分区间[,]a b ,通过变 22ba t ab x ++-= 可以转换到区间]1,1[-上,这时11()()222bab a b a a bf x dx f t dt ---+=+⎰⎰ 此时,求积公式写为0()()222n bii ai b a a b b af x dx A f t =-+-=+∑⎰若一组节点]1,1[.....,10-∈n x x x 使插值型求积公式(24)具有21n +次代数精度,则称此组节点为高斯点,并称相应求积公式(24)为高斯求积公式.2.3.1 高斯求积公式的余项(2)2()[]()()()(22)!n nbb k k aa k f R f f x dx A f x x dx n ηω+==-=+∑⎰⎰ 其中01()()()...(),[,]n x x x x x x x a b ωη=---∈,且不依赖于x .2.3.2 复化高斯求积公式复化高斯求积公式的基本思想是:将积分区间[,]a b 分成n 个等长小区间1[,](1,...)i i t t i m -=,然后在低阶(2n =)高斯求积公式算出近似值,最后将他们相加的积分()baf t dt ⎰的近似值m G ,即11111111()()[]222ii mmbt i i i i i i at i i t t t t t t f t dt f t dt dt -----==-+-==+∑∑⎰⎰⎰1111[()]222m i h ha i h x dx-==+-+∑⎰101[()]222m n j j mi j h hA f a i h x G ==≈+-+≈∑∑ (25)其中mab h -=,j A 与(0,1,2,...,)j t j n =可由书中表中查出. 3 应用3.1插值型积分的应用例1 用牛顿-科茨公式(1,2,4n =)计算积分12211I x =+⎰. 解 1n =时2210112[]0.4512101()2I -≈+=++2n =时22211112[4]0.463725116101()1()42I -≈++=+++4n =时2222111112[7321232]0.46363311390101()1()1()848I =++++≈++++例2 利用复化梯形求积公式计算积分 12211I dx x =+⎰解 设211)(xx f +=,分点个数为n =1,2,4,5时,求出相应积分n T , 111[(()())],21,2(),.n n i i i i i T f a f b f h b a h n n f x f x a ih ih -=⎧=++⎪⎪-⎪==⎨⎪=⎪⎪=+=⎩∑列表如下:n =1的计算结果见表1-1所列 n h0x 1x 0f1f1T10.50.00.51.00.80.45n =2的表格如下 n h0x1x2x0f1f 2f 2T20.250.000.250.501.000.941765 0.800.460294n =4时计算结果如下表 n h 0x1x2x3x4x40.1250.000.1250.250.3750.500f1f2f3f4f4T1.000.98461540.94117650.8767120.800.462813n = 5时计算结果如下 n h0x1x2x3x4x5x50.10.00.10.20.30.40.50f1f2f3f4f5f5T1.00.9900990.96153850.917430.8620690.80.463114例3 利用复化求积公式120x e dx ⎰,问积分区间为多少等分才能得证有5位有效数字?解 由式(14)知322()[],()()1212n b a b a R f h f n f n n--''''=-=- 有1(),(),2x xf x e f x e b a ''==-=,当]21,0[∈x 时,在12|()|f x e ''≤,所以122|[]|96n eR f n≤ 由于120x e dx ⎰的准确值具有一位整数,所以要使近似值具有5位有效数字,n 必须满足4242211048,102196⨯≥⨯≤-e n n e 或 取对数有 19=n .即将区间]21,0[19等分可满足给定的精度要求.例4 利用复化抛物线求积公式计算 120211I dx x =+⎰. 解 设11)(2+=x x f ,取m =1,2, 3时,公式()⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎨⎧++=+=====-=+++=+---=-=+∑∑.)12(,2),(),(),(,,242[31221212221111,1222h i a x ih a x x f f x f f b f f a f f m a b n f f f f h S i i i i i i b a m i m i i b a m当m =1,2,3时结果如下表所示 当m =1时m h(0.0)f )25.0(f )5.0(f2S1 0.25 1.0 0.9411765 0.80 0.463725当m =2时mh(0.0)f(0.125)f (0.025)f (0.35)f )5.0(f4S20.125 1.0 0.9846154 0.9411765 0.8767123 0.80 0.463653当m =3时mh(0.0)f(0.08333)f (0.16667)f (0.35)f(0.33333)f (0.14166667)f )5.0(f4S30.83331.00.99310340.9729730.9411760.90.852070.80.4636例5 用复化梯形公式,辛普森公式和科茨公式计算积分10sin xdx x ⎰的近似值.解按精度要求确定]1,0[分多少等分,即确定步长,要使6441021)1(28801|],[|-⨯≤≤M m S f R n ,只需.4642880102M m ⨯≥令10sin ()cos xf x txdt x==⎰, 则1()0sin ()()(cos )k kk k k d xd fx tx dt dx xdx ==⎰1cos().2k t tx kdt π=+⎰dt ktx t x f k k |)2cos(|max )(|max 10)(π+≤⎰11.1k t d t t≤=+⎰)10(≤≤x (4)1max |()| 5.f x ≤所以只要,9.13831288010264=⨯⨯≥-m 取m =4即可, 当4n =时,在每个子区间上用式(25),或(14),或(17),结果.9460829.0,9460833.0,9456911.0888===C S T3.2 龙贝格积分公式应用例6 用龙贝格算法计算积分1241I dx x=+⎰的近似值,要求误差小于510-. 解 .3,0,14)(2==+=b a x x f 步骤如下:2)1(,4)0()1(==f f 得.3)]1()0([211=+=f f T )2(计算,1.3)]21([21,516)21(12=+==f T T f 由此得 301333334121=-=T T S . (3)算出),(43),41(f f 从而,3013118)]43()41([412124=++=f f T T,14157.334242=-=T T S.30142121516121=-=S S C (4)计算),87(),85(),83(),81(f f f f 从而得到:13899.3)]87()85()83()81([812148=++++=f f f f T T ,,14159.334482=-=T T S,14059.31516242=-=S S C .1458.36364121=-=C C R(5)再计算),1615(),1613(),1611(),169(),167(),165(),163(),161(f f f f f f f f从而得到: 14094.316=T30141598=S ,,14159.3,14159.324==R C 51210||-≤-R R , 所以12043.14159.1dx x ≈+⎰3.3高斯求积公式的应用例7 用两点复化高斯求积公式计算10,x I e dx =⎰要求允许误差.106-=ε解 在本算法中取21=+n 时,,110==A A 其中;,)(mab h e x f x -== =++--=∑=)22(2201j jj b a x a b f A a b G.87189637800.1][21)32121()32121(=++-eem =2时, h =21, ]4121)21([4120202j i j j x i f A G +⨯-=∑∑==.57182571650.1)(41341333413341333413=+++=++--eeee m =3时, h =31. .37182769352.1]631)21([6130203=+⨯-=∑∑==j i j j x i f A G .101027.71||||56323--<⨯≈+-G G G3.4 几种方法的比较分析例8 计算积分211ln 2dx x =⎰,精确到0.001.(1)利用矩形公式计算, 因为对于x x f 1)(=,有320()2f x x''<=<(如果1<x <2),所以按照公式0)2(S =+-dx b a x ba . 0<n R <2112n . 如果取n =10,则我们公式的余项的余数得31010.84101200R -<<⨯,我们还必须加进由于在计算函数值实行四舍五入所产生的误差的界限相差于0.16⨯310-,为了这个目的只要计算1x的值到四位小数精确到0.00005就够了.我们有1232527292132152172192 1.051.151.251.351.551.651.751.851.95x x x x x x x x x =========5128.05405.05714.06061.06897.07407.08.08696.09524.02192172152132927252321=========y y y y y y y y y 和6.928469284.0109284.6=(2) 按照梯形公式作同样的计算,在这种情况下,作公式 210,||6n n R R n<<在这儿也试一试取n =10,虽然此时仅可以证3107.16001||-⨯<<n R ,纵坐标是9.18.17.16.15.14.13.12.11.1987654321=========x x x x x x x x x 5263.05556.05882.06250.06667.07143.07692.08333.09091.0987654321=========y y y y y y y y y和1877.669377.01877.621500101=+)( (3) 用辛普森公式做同样的计算作公式 .0))(()2(180)()4(45<≤≤⨯--=n n R b a f n a b R ξξ 并且n =5时有55104.1||-⨯<R .实行计算到五位数字,精确到0.0000058.16.14.12.14321====x x x x 45636.555556.062500.071429.083333.04321和====y y y y 9.17.15.13.11.12927252321=====x x x x x83820.1352632.058824.066667.076923.090909.029********和=====y y y y y.20.150==x x 50000.150000.060000.150和==y y6931525.083820.345636.550000.1301=++)(. 由此可见,用辛普森公式计算得到的值误差最小,计算量相对一般;而用矩形公式计算得到的值误差较大,计算量也比较大;用梯形公式计算的值误差比用矩形公式得到的值要误差小,计算量也是如此.所以我们计算定积分时用辛普森公式往往得到的值误差小,而对没有要求误差大小的,则可以选择辛普森或者是梯形公式,因为这两种方法计算量相对较小.结 束 语本文只讨论了一些一维数值积分方法及其它们的应用,误差分析等有关内容.其中最常用的方法是插值型积分以及复化方法、龙贝格积分方法和高斯积分方法,并讨论了相关求积方法的代数精度和误差分析,并给出了一些例题,分析各种方法的近似值,得出误差分析最小的近似方法.由于篇幅有限,对于高维数值积分方法本文便不再讨论.参考文献[1] 华东师范大学数学系,数学分析(第一版)[M],北京:高等教育出版社,2001. [2] 李庆阳,关治,白峰杉,数值计算原理(第二版)[M],北京: 清华大学出版社, 2008. [3] 肖筱南,现代数值计算方法(第一版)[M],北京: 北京大学出版社, 1999.[4] 菲赫金格尔茨,微积分学教程(第三版)[M],北京: 高等教育出版社, 2005. [5] 裴礼文,数学分析中的典型问题与方法(第一版)[M] ,北京: 北京大学出版社,2004. [6] 李桂成,计算方法(第三版)[M],北京: 高等教育出版社,2010.[7] Yin Y uezhu ,Yang Zhonglian.Calculating Skillfully the Curve Integral and Surface Integral Type 2 bySymmetry, SCIENCE & TECHNOLOGY INFORMATION ,2008(30)The Approximate Numerical Method of the Definite IntegralAbstract This paper mainly discusses common numerical methods of unary function, such as approximate calculation method of interpolation integral, Lebesgue integral and Gauss integration. With these methods in calculating the integral, it will produce some error. In order to reduce the error, we can use after the formula for product and after the Gauss formula. This paper focus on these methods introducing formula of introduction and truncation errors .In addition they can provide examples to analysis size of the error and computation.Keywords interpolation integral Lebesgue integral Gauss integral error analysis approximate computation。

MATLAB实验三 定积分的近似计算

MATLAB实验三 定积分的近似计算

实验三定积分的近似计算一、问题背景与实验目的利用牛顿—莱布尼兹公式虽然可以精确地计算定积分的值,但它仅适用于被积函数的原函数能用初等函数表达出来的情形.如果这点办不到或者不容易办到,这就有必要考虑近似计算的方法.在定积分的很多应用问题中,被积函数甚至没有解析表达式,可能只是一条实验记录曲线,或者是一组离散的采样值,这时只能应用近似方法去计算相应的定积分.本实验将主要研究定积分的三种近似计算算法:矩形法、梯形法、抛物线法.对于定积分的近似数值计算,Matlab有专门函数可用.二、相关函数(命令)及简介1.sum(a):求数组a的和.2.format long:长格式,即屏幕显示15位有效数字.(注:由于本实验要比较近似解法和精确求解间的误差,需要更高的精度).3.double():若输入的是字符则转化为相应的ASCII码;若输入的是整型数值则转化为相应的实型数值.4.quad():抛物线法求数值积分.格式:quad(fun,a,b) ,注意此处的fun是函数,并且为数值形式的,所以使用*、/、^等运算时要在其前加上小数点,即.*、./、.^等.例:Q = quad('1./(x.^3-2*x-5)',0,2);5.trapz():梯形法求数值积分.格式:trapz(x,y)其中x为带有步长的积分区间;y为数值形式的运算(相当于上面介绍的函数fun)例:计算0sin()dx xπ⎰x=0:pi/100:pi;y=sin(x);trapz(x,y)6.dblquad():抛物线法求二重数值积分.格式:dblquad(fun,xmin,xmax,ymin,ymax),fun可以用inline定义,也可以通过某个函数文件的句柄传递.例1:Q1 = dblquad(inline('y*sin(x)'), pi, 2*pi, 0, pi)顺便计算下面的Q2,通过计算,比较Q1 与Q2结果(或加上手工验算),找出积分变量x、y的上下限的函数代入方法.Q2 = dblquad(inline('y*sin(x)'), 0, pi, pi, 2*pi)例2:Q3 = dblquad(@integrnd, pi, 2*pi, 0, pi)这时必须存在一个函数文件integrnd.m:function z = integrnd(x, y) z = y*sin(x);7.fprintf (文件地址,格式,写入的变量):把数据写入指定文件.例:x = 0:.1:1; y = [x; exp(x)];fid = fopen('exp.txt','w'); %打开文件 fprintf(fid,'%6.2f %12.8f\n',y); %写入 fclose(fid) %关闭文件 8.syms 变量1 变量2 …:定义变量为符号. 9.sym('表达式'):将表达式定义为符号.解释:Matlab 中的符号运算事实上是借用了Maple 的软件包,所以当在Matlab 中要对符号进行运算时,必须先把要用到的变量定义为符号. 10.int(f,v,a,b):求f 关于v 积分,积分区间由a 到b .11.subs(f ,'x',a):将 a 的值赋给符号表达式 f 中的 x ,并计算出值.若简单地使用subs(f),则将f 的所有符号变量用可能的数值代入,并计算出值.三、实验内容1. 矩形法根据定积分的定义,每一个积分和都可以看作是定积分的一个近似值,即1()d ()nbi i ai f x x f x ς==∆∑⎰在几何意义上,这是用一系列小矩形面积近似小曲边梯形的结果,所以把这个近似计算方法称为矩形法.不过,只有当积分区间被分割得很细时,矩形法才有一定的精确度.针对不同i ς的取法,计算结果会有不同,我们以 120d 1xx +⎰为例(取100=n ),(1) 左点法:对等分区间b x i n ab a x x a x n i =<<-+=<<<=ΛΛ10,在区间],[1i i x x -上取左端点,即取1-=i i x ς,12 01d ()1ni i i xf x x ς==∆≈+∑⎰0.78789399673078, 理论值 12 0d 14x x π=+⎰,此时计算的相对误差0.7878939967307840.0031784ππ-=≈(2)右点法:同(1)中划分区间,在区间],[1i i x x -上取右端点,即取i i x =ς,12 01d ()1ni i i xf x x ς==∆≈+∑⎰0.78289399673078, 理论值 12 0d 14x x π=+⎰,此时计算的相对误差 0.7828939967307840.0031884ππ-=≈(3)中点法:同(1)中划分区间,在区间1[,]i i x x -上取中点,即取12i ii x x ς-+=, 12 01d ()1ni i i xf x x ς==∆≈+∑⎰0.78540024673078, 理论值 12 0d 14x x π=+⎰,此时计算的相对误差 60.7854002467307842.653104ππ--=≈⨯如果在分割的每个小区间上采用一次或二次多项式来近似代替被积函数,那么可以期望得到比矩形法效果好得多的近似计算公式.下面介绍的梯形法和抛物线法就是这一指导思想的产物.2. 梯形法等分区间b x i n a b a x x a x n i =<<-+=<<<=ΛΛ10,nab x -=∆ 相应函数值为n y y y ,,,10Λ(n i x f y i i ,,1,0),(Λ==).曲线)(x f y =上相应的点为n P P P ,,,10Λ(n i y x P i i i ,,1,0),,(Λ==)将曲线的每一段弧i i P P 1-用过点1-i P ,i P 的弦i i P P 1-(线性函数)来代替,这使得每个],[1i i x x -上的曲边梯形成为真正的梯形,其面积为x y y ii ∆⨯+-21,n i ,,2,1Λ=. 于是各个小梯形面积之和就是曲边梯形面积的近似值,11 11()d ()22nnbi i i i ai i y y x f x x x y y --==+∆≈⨯∆=+∑∑⎰, 即11 ()d ()22bn n ay y b a f x x y y n --≈++++⎰L , 称此式为梯形公式.仍用 12 0d 1x x +⎰的近似计算为例,取100=n ,10112 0d ()122n n y y x b a y y x n --≈++++=+⎰L 0.78539399673078, 理论值 12 0d 14x x π=+⎰,此时计算的相对误差 60.7853939967307845.305104ππ--=≈⨯很显然,这个误差要比简单的矩形左点法和右点法的计算误差小得多.3. 抛物线法由梯形法求近似值,当)(x f y =为凹曲线时,它就偏小;当)(x f y =为凸曲线时,它就偏大.若每段改用与它凸性相接近的抛物线来近似时,就可减少上述缺点,这就是抛物线法.将积分区间],[b a 作n 2等分,分点依次为b x i n a b a x x a x n i =<<-+=<<<=2102ΛΛ,nab x 2-=∆, 对应函数值为n y y y 210,,,Λ(n i x f y i i 2,,1,0),(Λ==),曲线上相应点为n P P P 210,,,Λ(n i y x P i i i 2,,1,0),,(Λ==).现把区间],[20x x 上的曲线段)(x f y =用通过三点),(000y x P ,),(111y x P ,),(222y x P 的抛物线)(12x p x x y =++=γβα来近似代替,然后求函数)(1x p 从0x 到2x 的定积分:21 ()d x x p x x =⎰22 ()d x x x x x αβγ++=⎰)()(2)(30220223032x x x x x x -+-+-γβα]4)(2)()()[(62022022202002γβαγβαγβα++++++++++-=x x x x x x x x x x 由于2201x x x +=,代入上式整理后得 21 ()d x x p x x ⎰)](4)()[(612122202002γβαγβαγβα++++++++-=x x x x x x x x )4(621002y y y x x ++-=)4(6210y y y nab ++-= 同样也有422 ()d x x p x x ⎰)4(6432y y y n ab ++-=……222 ()d n n x nx p x x -⎰)4(621222n n n y y y nab ++-=-- 将这n 个积分相加即得原来所要计算的定积分的近似值:22222212 11()d ()d (4)6ii nnbx i i i i ax i i b af x x p x x y y y n---==-≈=++∑∑⎰⎰, 即021******* ()d [4()2()]6bn n n ab af x x y y y y y y y y n---≈++++++++⎰L L 这就是抛物线法公式,也称为辛卜生(Simpson )公式.仍用 12 0d 1x x +⎰的近似计算为例,取100=n ,102132124222 0d [4()2()]16n n n x b ay y y y y y y y x n ---≈+++++++++⎰L L=0.78539816339745,理论值 12 0d 14x x π=+⎰,此时计算的相对误差 160.7853981633974542.827104ππ--=≈⨯4. 直接应用Matlab 命令计算结果(1) 数值计算 120d .1xx +⎰ 方法1:int('1/(1+x^2)','x',0,1) (符号求积分)方法2:quad('1./(1+x.^2)',0,1) (抛物线法求数值积分)方法3:x=0:0.001:1; y=1./(1+x.^2);trapz(x,y) (梯形法求数值积分) (2)数值计算 212 01d d x x y y -+⎰⎰方法1:int(int('x+y^2','y',-1,1),'x',0,2) (符号求积分)方法2:dblquad(inline('x+y^2'),0,2,-1,1) (抛物线法二重数值积分)四、自己动手1. 实现实验内容中的例子,即分别采用矩形法、梯形法、抛物线法计算 120d 1xx +⎰,取258=n ,并比较三种方法的精确程度.2. 分别用梯形法与抛物线法,计算 2 1d xx⎰,取120=n .并尝试直接使用函数trapz()、quad()进行计算求解,比较结果的差异.3. 试计算定积分 0sin d xx x+∞⎰.(注意:可以运用trapz()、quad()或附录程序求解吗?为什么?)4. 将 120d 1xx +⎰的近似计算结果与Matlab 中各命令的计算结果相比较,试猜测Matlab 中的数值积分命令最可能采用了哪一种近似计算方法?并找出其他例子支持你的观点.5. 通过整个实验内容及练习,你能否作出一些理论上的小结,即针对什么类型的函数(具有某种单调特性或凹凸特性),用某种近似计算方法所得结果更接近于实际值?6. 学习fulu2sum.m 的程序设计方法,尝试用函数 sum 改写附录1和附录3的程序,避免for 循环.五、附录附录1:矩形法(左点法、右点法、中点法)(fulu1.m ) format long n=100;a=0;b=1;inum1=0;inum2=0;inum3=0; syms x fx fx=1/(1+x^2); for i=1:nxj=a+(i-1)*(b-a)/n; %左点 xi=a+i*(b-a)/n; %右点 fxj=subs(fx,'x',xj); %左点值fxi=subs(fx,'x',xi); %右点值fxij=subs(fx,'x',(xi+xj)/2); %中点值inum1=inum1+fxj*(b-a)/n;inum2=inum2+fxi*(b-a)/n;inum3=inum3+fxij*(b-a)/n;endinum1inum2inum3integrate=int(fx,0,1)integrate=double(integrate)fprintf('The relative error between inum1 and real-value is about: %d\n\n',...abs((inum1-integrate)/integrate))fprintf('The relative error between inum2 and real-value is about: %d\n\n',...abs((inum2-integrate)/integrate))fprintf('The relative error between inum3 and real-value is about: %d\n\n',...abs((inum3-integrate)/integrate))附录2:梯形法(fulu2.m)format longn=100;a=0;b=1;inum=0;syms x fxfx=1/(1+x^2);for i=1:nxj=a+(i-1)*(b-a)/n;xi=a+i*(b-a)/n;fxj=subs(fx,'x',xj);fxi=subs(fx,'x',xi);inum=inum+(fxj+fxi)*(b-a)/(2*n);endinumintegrate=int(fx,0,1)integrate=double(integrate)fprintf('The relative error between inum and real-value is about: %d\n\n',...abs((inum-integrate)/integrate))附录2sum:梯形法(fulu2sum.m),利用求和函数,避免for 循环format longn=100;a=0;b=1;syms x fxfx=1/(1+x^2);i=1:n;xj=a+(i-1)*(b-a)/n; %所有左点的数组xi=a+i*(b-a)/n; %所有右点的数组fxj=subs(fx,'x',xj); %所有左点值fxi=subs(fx,'x',xi); %所有右点值f=(fxi+fxj)/2*(b-a)/n; %梯形面积inum=sum(f) %加和梯形面积求解integrate=int(fx,0,1)integrate=double(integrate)fprintf('The relative error between inum and real-value is about: %d\n\n',...abs((inum-integrate)/integrate))附录3:抛物线法(fulu3.m)format longn=100;a=0;b=1;inum=0;syms x fxfx=1/(1+x^2);for i=1:nxj=a+(i-1)*(b-a)/n; %左点xi=a+i*(b-a)/n; %右点xk=(xi+xj)/2; %中点fxj=subs(fx,'x',xj);fxi=subs(fx,'x',xi);fxk=subs(fx,'x',xk);inum=inum+(fxj+4*fxk+fxi)*(b-a)/(6*n);endinumintegrate=int(fx,0,1)integrate=double(integrate)fprintf('The relative error between inum and real-value is about: %d\n\n',...abs((inum-integrate)/integrate))。

定积分的近似计算方法

定积分的近似计算方法

定积分的近似计算方法定积分是数学中重要的概念之一,用于计算曲线下面积、体积、质量等问题。

然而,很多情况下,定积分的精确计算是困难的,因此需要使用近似计算的方法来求解。

下面将介绍一些常用的定积分近似计算方法。

1.矩形法:矩形法是最基本的一种近似计算方法,它将定积分区间划分为若干个小区间,并在每个小区间上选择一个代表点,然后计算这些小区间的矩形面积之和。

通常有三种矩形法:左矩形法(取每个小区间左端点的函数值)、右矩形法(取每个小区间右端点的函数值)和中矩形法(取每个小区间中点的函数值)。

它们的近似公式分别为:左矩形法:$\int_{a}^{b}f(x)dx \approx \sum_{k=0}^{n-1}f(x_k)(x_{k+1}-x_k)$右矩形法:$\int_{a}^{b}f(x)dx \approx\sum_{k=1}^{n}f(x_k)(x_k-x_{k-1})$中矩形法:$\int_{a}^{b}f(x)dx \approx \sum_{k=0}^{n-1}f(\frac{x_k+x_{k+1}}{2})(x_{k+1}-x_k)$2.梯形法:梯形法是一种比矩形法更精确的近似计算方法。

它的基本思想是将定积分区间划分为若干个小区间,在每个小区间上选择两个端点,然后计算这些小区间内的梯形面积之和。

近似公式为:$\int_{a}^{b}f(x)dx \approx \sum_{k=1}^{n}\frac{f(x_{k-1})+f(x_k)}{2}(x_k-x_{k-1})$3.辛普森法:辛普森法是一种更加精确的近似计算方法,它将定积分区间划分为若干个小区间,并在每个小区间上选择三个点,通过连接这三个点构造一个二次插值多项式,然后计算这些二次插值多项式下的曲线面积之和。

近似公式为:$\int_{a}^{b}f(x)dx \approx\frac{h}{3}\sum_{k=0}^{\frac{n}{2}-1}(f(x_{2k})+4f(x_{2k+1})+f(x_{2k+2}))$其中,$h=\frac{b-a}{n}$,$n$为划分小区间的个数。

几种定积分的数值计算方法

几种定积分的数值计算方法

几种定积分的数值计算方法一、梯形法则(Trapezoidal Rule):梯形法则是一种常见的确定积分的数值计算方法。

它的基本思想是通过将函数曲线上的曲线段看作是一系列梯形,然后计算这些梯形的面积之和来近似表示定积分的值。

具体来说,我们将定积分区间[a,b]均匀地划分为n个小区间,每个小区间的宽度为h=(b-a)/n,然后计算每个小区间内的梯形面积,再将这些面积相加即可得到定积分的近似值。

梯形法则的公式如下:∫(a to b) f(x) dx ≈ h/2 * (f(a) + 2f(a+h) + 2f(a+2h) + ... + 2f(a+(n-1)h) + f(b))梯形法则的优点是简单易懂,容易实现,并且对于一般的函数都能达到较好的近似效果。

然而,它的缺点是精度较低,需要较大的划分数n才能得到较准确的结果。

二、辛普森法则(Simpson's Rule):辛普森法则是一种比梯形法则更高级的确定积分方法,它通过将函数曲线上的曲线段看作是由一系列抛物线组成的,然后计算这些抛物线的面积之和来近似表示定积分的值。

与梯形法则类似,我们将定积分区间[a,b]均匀地划分为n个小区间,每个小区间的宽度为h=(b-a)/n,然后计算每两个相邻小区间内的抛物线面积,再将这些面积相加即可得到定积分的近似值。

辛普森法则的公式如下:∫(a to b) f(x) dx ≈ h/3 * (f(a) + 4f(a+h) + 2f(a+2h) +4f(a+3h) + ... + 2f(a+(n-2)h) + 4f(a+(n-1)h) + f(b))辛普森法则相较于梯形法则具有更高的精度,尤其对于二次或更低次的多项式函数来说,可以得到非常准确的结果。

但是,辛普森法则在处理高次多项式或非多项式函数时可能会出现误差较大的情况。

三、高斯求积法(Gaussian Quadrature):高斯求积法是一种基于插值多项式的数值积分方法。

第32讲 定积分的分部积分法与近似计算

第32讲 定积分的分部积分法与近似计算
2 所以: x f " x dx x f ' x f ' x 2 xdx 0 0
1 2
1
又 f x dx e C ,所以 f x e
x2
' 2 xe
x2
x2

再令 u1 x, v1 ' f ' x
2 0


2
I 1 2 sin xdx 1
0

续 当 n 2k 1 时,
n 1 n 3 4 2 In I1 n n2 5 3 n 1 n 3 4 2 n n2 5 3
当n 2k 时, n 1 n 3 3 1 In I0 n n2 4 2
n 1 n 3 3 1 n n2 4 2 2
令x

2
t 可得第二式显然也成立。
e 例4 设 f x 的一个原函数是
2
x2
,求 x 2 f " x dx
0
1
解 令 u x , v' f " x , 则 u ' 2 x, v f ' x
其误差分别为:
b a 2
2n
y ' ,
b a 3
12n 2
y" ,
b a 5
180n 4
y 4
a b
小结:

全面理解分部积分公式
熟练使用分部积分公式求积分
了解定积分的近似计算方法
作业:第P306Fra bibliotek习题5-5
4e 2e 2e

定积分的近似计算方法

定积分的近似计算方法

定积分的近似计算方法定积分是微积分中的重要概念,它代表了曲线与坐标轴之间的有限面积。

在实际问题中,有时候我们需要计算一些函数在一定范围内的定积分,以获得其中一种物理量或求解其中一种问题的解析解。

然而,有些函数的原函数较复杂甚至难以找到,这时候我们就需要使用定积分的近似计算方法。

下面将介绍几种常用的定积分近似计算方法:1.矩形法:矩形法是最简单的一种近似计算方法。

它的思想是将积分区间等分成若干个小区间,然后在每个小区间上选择一个代表点,通过函数在这些代表点处的函数值与小区间长度的乘积来近似计算定积分。

具体计算公式为:∫[a,b]f(x)dx ≈ Δx * (f(x₁) + f(x₂) + ... + f(xₙ))其中,Δx=(b-a)/n,n为小区间个数,x₁、x₂等为代表点。

当n越大时,近似结果越接近真实结果。

2.梯形法:梯形法是将积分区间分成若干个小区间,然后在每个小区间上构造一个梯形,通过计算梯形的面积来近似计算定积分。

具体计算公式为:∫[a,b]f(x)dx ≈ Δx * (f(x₁) + f(x₂))/2 + Δx * (f(x₂) +f(x₃))/2 + ... + Δx * (f(xₙ-1) + f(xₙ))/2其中,Δx=(b-a)/n,n为小区间个数,x₁、x₂等为小区间的端点。

3.辛普森法:辛普森法是一种比矩形法和梯形法更精确的近似计算方法。

它的思想是将积分区间分成若干个小区间,然后在每个小区间上构造一个二次多项式,通过计算这些二次多项式的面积来近似计算定积分。

具体计算公式为:∫[a,b]f(x)dx ≈ Δx * (f(x₀)+4f(x₁)+f(x₂))/3 + Δx *(f(x₂)+4f(x₃)+f(x₄))/3 + ... + Δx * (f(xₙ-2)+4f(xₙ-1)+f(xₙ))/3其中,Δx=(b-a)/n,n为小区间个数,x₀、x₁、x₂等为小区间的端点。

4.蒙特卡洛法:蒙特卡洛法是通过随机抽取点的方法来近似计算定积分。

定积分近似计算方法

定积分近似计算方法

定积分的近似计算方法摘要 本文主要讨论了一元函数常见的数值积分方法,例如插值型求积公式、龙贝格求积公式、高斯求积公式等近似计算方法,在用这些方法计算定积分时,会产生一些误差,为了减少误差, 可以利用复化求积公式、复化高斯公式等.本文围绕这些方法,系统介绍它们的计算公式以及截断误差,并用例题分析它们产生误差的大小、计算量等.关键词 插值型积分 龙贝格积分 高斯积分 误差分析 近似计算1引言在计算定积分的值()b aI f x dx =⎰时,常常根据微积分学基本定理求出)(x f 的一个原函数)(x F ,再用牛顿-莱布尼茨公式求的积分,()()()baI f x dx F b F a ==-⎰.但在实际应用中,这种方法只限于解决一小部分定积分的求值问题.当函数没有具体表达式,只是一些实验测得数据形成的表格或图形或者是()F x 无法用初等函数表示,例如,2bx ae dx ⎰,2sin ba x dx ⎰等等,这就需要我们用一些近似方法求的积分值.与数值积分一样,把积分区间细分,在每个小区间上,找到简单函数)(x ϕ来近似代替()f x ,且()bax dx ϕ⎰的值容易求的.这样就把计算复杂的()baf x dx ⎰转化为求简单的积分值()bax dx ϕ⎰.因此,定积分的近似计算实质上是就是被积函数的近似计算问题.2常见数值方法 2.1牛顿-科茨数值方法牛顿-科茨求积公式是求积节点等距离分布的插值型求积公式.利用插值多项式来构造数值积分公式是最常用、最基本的方法,具体做法是:给定区间[,]a b 上一组节点01...n a x x x b =<<<=,以及节点处函数()(0,1,2,i f x i n =,作()f x 的n 次拉格朗日多项式()()()nn i i i x f x l x ϕ==∑,其中 011011()()()()()()()()()i i n i i i i i i i n x x L x x x x L x x l x x x L x x x x L x x -+-+----=----,将插值公式(1)1()()()()(1)!n n n f f x x x n ξϕω++=++. 其中 1012()()()()()n n x xx x xx x L x x ω+=----,[,]a b ξ∈,依赖于变量x , 上式积分得(1)1()()()()(1)!n bb bn n aa af f x dx x dx x dx n ξϕω++=++⎰⎰⎰(1)(1)0()()()()(1)!n nb biiin aai f f x l x dx x dx n ξω++==++∑⎰⎰(1)(1)0()()()()(1)!n nb bi i n aai f f x b l x dx x dxn ξω++==++∑⎰⎰若记 (),(0,1,2,bi ia A l x dx i ==⎰….. )n (1)(1)1()[]()(1)!n bn af R f x dxn ξω++=+⎰, (2)则有()()[]nbi i ai f x dx A f x R f ==+∑⎰(3)称式(3)为插值求型公式,其中(0,1,2,i A i =…. )n 与()f x 无关,叫求积系数, i x 为求积节点,[]R f 为求积公式余项,其中求积系数由(1)决定.2.1.1梯形求积公式1梯形公式当插值节点01,x x 分别选取区间端点,a b 时,由式(3)分别求出求积系数10012bb aa x x xb b aA dx dx x x a b ---===--⎰⎰,01102bb aa x x x ab a A dx dx x x b a ---===--⎰⎰.从而的求积公式()[()()]2bab af x dx f a f b -≈+⎰. (4) 称求积公式(4)为梯形求积公式,简称梯形公式.2梯形公式截断误差: 3*()[](),12b a R f f ξ-''=- *[,]a b ξ∈. (5) 3梯形求积公式的代数精度:1 当()1f x =时,式(5)中 1(1)2bab adx b a x b a -=-=+=-⎰. 精确成立.2.1.2 辛普森求积公式1辛普森求积公式当选取节点为012,,2a bx a x x b +===时,由式(1)求下列求积系数 1200102()()()()2()()6()()2b b a a a b x x b x x x x b a A dx dx a b x x x x a a b +-----===+----⎰⎰,0211002()()()()2()()()3()()22bb aa x x x x x a xb b a A dx dx a b a b x x x x a b -----===++----⎰⎰.0122021()()()()2()()6()()22b b a a a bx a x x x x x b a A dx dx a b a b x x x x a b +-----===++----⎰⎰ .从而求积公式()[()4()()]62bab a a bf x dx f a f f b -+≈++⎰. (6)称式(6)为抛物线积分公式或辛普森积分公式.2抛物线求积公式误差估计定理1.若()f x 在[,]a b 上有四阶连续导数,则抛物线公式(6)的余项为:5(4)**()[](),[,]2880b a R f f a b ξξ--=∈. (7) 3抛物线公式的代数精度为3.易验证,当23()1,,,f x x x x =时,式(6)精确成立,而当4()f x x =时,式(6)不能精确成立.2.1.3 牛顿-科茨公式1牛顿-科茨公式在等距离节点i x a ih =+下,其中(0,1,2b ah i n-==…. )n .作为变量替换x a th =+,那么由求积公式(1),得系数:10(1)(1)(1)()!(1)(1)!ni n t t t i t i t n A h dt i n ---+---==--⎰10(1)(1)...(1)(1)...()(0,1,2,...)!(1)!n nb a t t t i t i t n dt i n n i n -----+---=-⎰ (8)则 ()()n i iA b a C =- (9)于是差值求积公式为:()0()()()[]nbn i i ai f x dx b a C f x R f ==-+∑⎰(10)称公式(10)为牛顿-科茨求积公式,其中()n iC 称为科茨系数.显然,科茨系数与被积函数()f x 及积分区间[,]a b 无关,它指依赖于n ,且为多项式积分.因此,只要给出n ,就能看出i A ,并写出相应地牛顿-科茨公式.2牛顿-科茨公式的截断误差与代数精度.当1n =与2n =情况分析牛顿-科茨公式的截断误差为(1)()[]()()()(1)!n b b bn aaaf R f f x dx x dx x dxn ξϕω+=-=+⎰⎰⎰牛顿-科茨公式的截断误差还可以写成(2)*1()[]()((2)!n bn a f R f x dx n n ξω++=+⎰为偶数)(1)*1()[]()(1)!n bn af R f x dx n ξω++=+⎰ (n 为奇数) (11) 其中*[,]a b ξ∈,且不依赖于x ,101()()()...()n n x x x x x x x ω+=---,对()f x 为任何并不超过n 次多项式,均有(1)()0n fx +≡,因而[]0R f ≡,即0()()nbi i ai f x dx A f x ==∑⎰精确成立,也就是说,牛顿-科茨公式的代数精度至少为n ,牛顿-科茨公式在n 为偶数时,至少具有1n +次代数精度,在n 为奇数情况时,至少具有n 次代数精度.2.1.4复化梯形求积公式将区间[,]a b 等分,节点为i x a ih =+ (步长b ah n-=),0,1,2...,i n =)在每个小区间1[,]i i x x -上采用梯形公式(4)得11111()()[(()()]2ii nnbx i i i i ax i i x x f x dx f x dx f x f x ---==-=≈+=∑∑⎰⎰11[()()]2ni i i hf x f x +=+=∑11[()2()()]2n i n i hf a f x f b T -=++=∑ (12)称式(12)为复化梯形公式. 复化梯形公式余项为()2()()()12i n b a R f h f η-''=-(13) 2.1.5复化辛普森求积公式在每个小区间],[1+i i x x 上,辛普森公式(6)得11102()[()4()()]6n bi i ai i hf x dx f x f x f x -++==++∑⎰(14)111012[()4()2((6)]6n n i i i i hf a f x f x f --+===+++∑∑记 )]()(2)(4)([6111021b f x f x f a f hS n i i n i i n +++=∑∑-=-=+ (15)式中,21+i x为],[1+i i x x 的中点,即h x x i i 2121+=+.式(15)称为复化辛普森公式,其余项为∑-=-=-=10)4(4)()2(180)()(n i i n n f h h S f I f R η, 1(,).i i i x x η+∈ 故 ),(),()2(180)(R )4(4b a f h a b f n ∈--=ηη (16) 为复化辛普森的截断误差. 2.1.6复化科茨求积公式将区间[,]a b n 等分, 4n m =,m 为正整数,在每个子区间444[,]k k x x -上用科茨求积公式得到复化求积公式:412()[7()7()32()45mbk ak hf x dx f a f b f x -≈++∑⎰14241411112()32()14()mmm k k k N k k k f xf x f x C ---===+++=∑∑∑ (17)其中 4b a b ah n m--==, k x a kh =+ 其截断误差为6(6)2()[,](),()945n b a R f C h f a b ηη-=-<. 2.1.7 变步长复化求积方法复化求积公式虽然计算简单,也达到了提高精度的目的,但为了满足精度要求必须顾及误差,利用误差公式往往很困难,因为误差表达式中含有未知函数的导数,而估计各阶导数的最大值不太容易.我们可以采取把积分的区间[,]a b 细分的办法,在计算积分时将步长逐步折半,利用前后两次结果进行误差估计,如此继续,直到相邻两次结果相差不大,取最小的步长算出的结果为积分值,这种方法称为变步长积分法.以复化梯形公式为例,把区间[,]a b 分成n 等分,设复化梯形公式的近似值为n T ,原积分值为I ,由复化梯形公式误差公式(14)知:2"11()()()n b a b a I T f a b N N ηη--=-<<再把区间[,]a b 分成2n 等分,得近似值2n T ,则2222()()()122k b a b a I T f a b nηη--''=-<< 假定()f x ''在[,]a b 上变化不大,既有12()()f f ηη''''≈. 由上式得 .24kkI T I T -≈-于是 222211()()341n n n n n n I T T T T T T ≈+-=+-- (18) 式(18)表明若用2n T 作为I 的近似值,其截断误差约为2()3n n T T - (19)2.2 龙贝格求积公式龙贝格积分法的基本思想是采用复化梯形求积方法不断折半步长过程中,在积分结果中加入时候误差估计值进行补偿,使积分计算的收敛性加速,就可以加工出,,,...n n n S C R 精度较高的积分结果.由式(19), 2n T 的误差大致为23n nT T -,因此,可用这个误差值作为2n T 的一种补偿,加到2n T 上,则可得到积分准确值I ,比2n T 的更好近似值~T .222141()333n n n n nT T T T T T =+-=-2221(2)21n n T T =-- (20)式(20)左端1n =时 记122121141()333S T T T T T =+-=- 112()()332a b T b a f +=+- [()4()()]62b a a b f a f f b -+=++恰好为[,]a b 上应用辛普生公式(16)的结果.在每个小区间应用辛普生公式:11[()2()()]2n n k k hT f a f x f b -==++∑121()112[()2()()2()]4n n n k k k k hT f a f x f b f x --===+++∑∑代入式(20)的左端得11111[()2()()2()32n nk k k k h f a f x f b f x -==+++--∑∑ 11[()2()()]2n k k h f a f x f b -++∑11111[()4()2()()]62n n k k k k f a f x f x f b -===+-++∑∑nS =从而复化辛普森公式与复化梯形公式公式有以下关系式2441n nn T T S -=- (21)类似也可以推证,在辛普森序列基础上,利用以下关系式22242161151541n n n n n S S C S S -=-=- (22)可以造出收敛速度更快的科茨序列12,...,...n C C C 将此推行下去,在科茨序列基础上,通过243431n nn C C R -=- (23)构造出收敛速度比科茨序列更快的龙贝格序列12,,......n R R R .以上这种通过逐步构造龙贝格序列的积分近似值法就称为龙贝格积分法.2.3高斯求积公式由定理()()()baf x F b F a =-⎰知,插值型求积公式的代数精度与求积节点的个数有关,具有1n +个节点的插值型求积公式至少具有n 次代数精度.不仅如此,代数精度与节点的选取有关,在构造牛顿-科茨求积公式时,为了简化处理过程,限定用等分节点作为求积节点,这样做,虽然公式确实得到简化,但同时也限制了公式的代数精度. 设积分,1,1=-=b a 本段讨论如下求积公式11()()ni i i f x A f x -==∑⎰(24)对任意积分区间[,]a b ,通过变 22ba t ab x ++-= 可以转换到区间]1,1[-上,这时11()()222bab a b a a bf x dx f t dt ---+=+⎰⎰ 此时,求积公式写为0()()222n bii ai b a a b b af x dx A f t =-+-=+∑⎰若一组节点]1,1[.....,10-∈n x x x 使插值型求积公式(24)具有21n +次代数精度,则称此组节点为高斯点,并称相应求积公式(24)为高斯求积公式.2.3.1 高斯求积公式的余项(2)2()[]()()()(22)!n nbb k k aa k f R f f x dx A f x x dx n ηω+==-=+∑⎰⎰ 其中 01()()()...(),[,]n x x x x x x x ab ωη=---∈,且不依赖于x .2.3.2 复化高斯求积公式复化高斯求积公式的基本思想是:将积分区间[,]a b 分成n个等长小区间1[,](1,...)i i t t i m -=,然后在低阶(2n =)高斯求积公式算出近似值,最后将他们相加的积分()baf t dt ⎰的近似值m G ,即11111111()()[]222ii mmbt i i i i i i at i i t t t t t t f t dt f t dt dt -----==-+-==+∑∑⎰⎰⎰1111[()]222m i h ha i h x dx-==+-+∑⎰101[()]222m n j j mi j h hA f a i h x G ==≈+-+≈∑∑ (25)其中mab h -=,j A 与(0,1,2,...,)j t j n =可由书中表中查出. 3 应用3.1插值型积分的应用例1 用牛顿-科茨公式(1,2,4n =)计算积分12211I x =+⎰. 解 1n =时2210112[]0.4512101()2I -≈+=++2n =时22211112[4]0.463725116101()1()42I -≈++=+++4n =时2222111112[7321232]0.46363311390101()1()1()848I =++++≈++++例2 利用复化梯形求积公式计算积分 12211I dx x =+⎰解 设211)(xx f +=,分点个数为n =1,2,4,5时,求出相应积分n T , 111[(()())],21,2(),.n n i i i i i T f a f b f h b a h n n f x f x a ih ih -=⎧=++⎪⎪-⎪==⎨⎪=⎪⎪=+=⎩∑列表如下:n =1的计算结果见表1-1所列 n h0x 1x 0f1f1T10.50.00.51.0 0.8 0.45n =2的表格如下 n hx1x2xf1f2f2T20.250.00 0.25 0.50 1.00 0.941765 0.80 0.460294n =4时计算结果如下表 n h 0x1x2x3x4x40.1250.00 0.125 0.25 0.375 0.50f1f2f3f4f4T1.00 0.9846154 0.9411765 0.876712 0.80 0.462813n = 5时计算结果如下 n hx1x2x3x4x5x50.10.0 0.1 0.2 0.3 0.40.5f1f2f3f4f5f5T1.0 0.990099 0.9615385 0.91743 0.862069 0.80.463114例3 利用复化求积公式120x e dx ⎰,问积分区间为多少等分才能得证有5位有效数字?解 由式(14)知322()[],()()1212n b a b a R f h f n f n n--''''=-=- 有1(),(),2x x f x e f x e b a ''==-=,当]21,0[∈x 时,在12|()|f x e ''≤,所以122|[]|96n eR f n≤ 由于120x e dx ⎰的准确值具有一位整数,所以要使近似值具有5位有效数字,n 必须满足4242211048,102196⨯≥⨯≤-e n n e 或 取对数有 19=n .即将区间]21,0[19等分可满足给定的精度要求.例4 利用复化抛物线求积公式计算 120211I dx x =+⎰. 解 设11)(2+=x x f ,取m =1,2, 3时,公式()⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎨⎧++=+=====-=+++=+---=-=+∑∑.)12(,2),(),(),(,,242[31221212221111,1222h i a x ih a x x f f x f f b f f a f f m a b n f f f f h S i i i i i i b a m i m i i b a m当m =1,2,3时结果如下表所示 当m =1时m h(0.0)f )25.0(f )5.0(f2S1 0.25 1.0 0.9411765 0.80 0.463725当m =2时mh(0.0)f(0.125)f (0.025)f (0.35)f )5.0(f4S20.125 1.0 0.9846154 0.9411765 0.8767123 0.80 0.463653当m =3时mh(0.0)f(0.08333)f (0.16667)f (0.35)f(0.33333)f (0.14166667)f )5.0(f4S30.83331.00.99310340.9729730.9411760.90.852070.80.4636例5 用复化梯形公式,辛普森公式和科茨公式计算积分10sin xdx x ⎰的近似值.解按精度要求确定]1,0[分多少等分,即确定步长,要使6441021)1(28801|],[|-⨯≤≤M m S f R n ,只需.4642880102M m ⨯≥令10sin ()cos xf x txdt x==⎰,则1()0sin ()()(cos )k kk k k d xd fx tx dt dx x dx==⎰ 1cos().2k t tx kdt π=+⎰dt ktx t x f k k |)2cos(|max )(|max 10)(π+≤⎰11.1k t d t t≤=+⎰)10(≤≤x (4)1max |()| 5.f x ≤所以只要,9.13831288010264=⨯⨯≥-m 取m =4即可, 当4n =时,在每个子区间上用式(25),或(14),或(17),结果.9460829.0,9460833.0,9456911.0888===C S T3.2 龙贝格积分公式应用例6 用龙贝格算法计算积分1241I dx x=+⎰的近似值,要求误差小于510-. 解 .3,0,14)(2==+=b a x x f 步骤如下:2)1(,4)0()1(==f f 得.3)]1()0([211=+=f f T )2(计算,1.3)]21([21,516)21(12=+==f T T f 由此得301333334121=-=T T S . (3)算出),(43),41(f f 从而,3013118)]43()41([412124=++=f f T T,14157.334242=-=T T S .30142121516121=-=S S C(4)计算),87(),85(),83(),81(f f f f 从而得到:13899.3)]87()85()83()81([812148=++++=f f f f T T ,,14159.334482=-=T T S ,14059.31516242=-=S S C.1458.36364121=-=C C R (5)再计算),1615(),1613(),1611(),169(),167(),165(),163(),161(f f f f f f f f 从而得到: 14094.316=T30141598=S ,,14159.3,14159.324==R C 51210||-≤-R R , 所以12043.14159.1dx x ≈+⎰3.3高斯求积公式的应用例7 用两点复化高斯求积公式计算10,x I e dx =⎰要求允许误差.106-=ε解 在本算法中取21=+n 时,,110==A A 其中;,)(mab h e x f x-== =++--=∑=)22(2201j jj b a x a b f A a b G.87189637800.1][21)32121()32121(=++-eem =2时, h =21, ]4121)21([4120202j i j j x i f A G +⨯-=∑∑==.57182571650.1)(41341333413341333413=+++=++--eeee m =3时, h =31. .37182769352.1]631)21([6130203=+⨯-=∑∑==j i j j x i f A G.101027.71||||56323--<⨯≈+-G G G3.4 几种方法的比较分析例8 计算积分211ln 2dx x =⎰,精确到0.001.(1)利用矩形公式计算, 因为对于x x f 1)(=,有320()2f x x''<=<(如果1<x <2),所以按照公式0)2(S =+-dx ba xb a . 0<n R <2112n . 如果取n =10,则我们公式的余项的余数得31010.84101200R -<<⨯,我们还必须加进由于在计算函数值实行四舍五入所产生的误差的界限相差于0.16⨯310-,为了这个目的只要计算1x的值到四位小数精确到0.00005就够了.我们有1232527292132152172192 1.051.151.251.351.551.651.751.851.95x x x x x x x x x =========5128.05405.05714.06061.06897.07407.08.08696.09524.02192172152132927252321=========y y y y y y y y y和6.928469284.0109284.6= (2) 按照梯形公式作同样的计算,在这种情况下,作公式 210,||6n n R R n<<在这儿也试一试取n =10,虽然此时仅可以证3107.16001||-⨯<<n R ,纵坐标是9.18.17.16.15.14.13.12.11.1987654321=========x x x x x x x x x 5263.05556.05882.06250.06667.07143.07692.08333.09091.0987654321=========y y y y y y y y y和1877.669377.01877.621500101=+)( (3) 用辛普森公式做同样的计算作公式 .0))(()2(180)()4(45<≤≤⨯--=n n R b a f n a b R ξξ 并且n =5时有55104.1||-⨯<R .实行计算到五位数字,精确到0.0000058.16.14.12.14321====x x x x 45636.555556.062500.071429.083333.04321和====y y y y 9.17.15.13.11.12927252321=====x x x x x83820.1352632.058824.066667.076923.090909.029********和=====y y y y y.20.150==x x 50000.150000.060000.150和==y y6931525.083820.345636.550000.1301=++)(. 由此可见,用辛普森公式计算得到的值误差最小,计算量相对一般;而用矩形公式计算得到的值误差较大,计算量也比较大;用梯形公式计算的值误差比用矩形公式得到的值要误差小,计算量也是如此.所以我们计算定积分时用辛普森公式往往得到的值误差小,而对没有要求误差大小的,则可以选择辛普森或者是梯形公式,因为这两种方法计算量相对较小.结 束 语本文只讨论了一些一维数值积分方法及其它们的应用,误差分析等有关内容.其中最常用的方法是插值型积分以及复化方法、龙贝格积分方法和高斯积分方法,并讨论了相关求积方法的代数精度和误差分析,并给出了一些例题,分析各种方法的近似值,得出误差分析最小的近似方法.由于篇幅有限,对于高维数值积分方法本文便不再讨论.参考文献[1] 华东师范大学数学系,数学分析(第一版)[M],北京:高等教育出版社,2001. [2] 李庆阳,关治,白峰杉,数值计算原理(第二版)[M],北京: 清华大学出版社, 2008. [3] 肖筱南,现代数值计算方法(第一版)[M],北京: 北京大学出版社, 1999.[4] 菲赫金格尔茨,微积分学教程(第三版)[M],北京: 高等教育出版社, 2005. [5] 裴礼文,数学分析中的典型问题与方法(第一版)[M] ,北京: 北京大学出版社,2004. [6] 李桂成,计算方法(第三版)[M],北京: 高等教育出版社,2010.[7] Yin Y uezhu ,Yang Zhonglian.Calculating Skillfully the Curve Integral and Surface Integral Type 2 bySymmetry, SCIENCE & TECHNOLOGY INFORMATION ,2008(30)The Approximate Numerical Method of the Definite IntegralAbstract This paper mainly discusses common numerical methods of unary function, such as approximate calculation method of interpolation integral, Lebesgue integral and Gauss integration. With these methods in calculating the integral, it will produce some error. In order to reduce the error, we can use after the formula for product and after the Gauss formula. This paper focus on these methods introducing formula of introduction and truncation errors .In addition they can provide examples to analysis size of the error and computation.Keywords interpolation integral Lebesgue integral Gauss integral error analysis approximate computation。

第七讲-定积分的近似计算

第七讲-定积分的近似计算
将自变量看成是向量
quad 举例
例:用 quad 计算定积分:
dx 0 1 x 2
1
解:
>> quad('1./(1+x.^2)',0,1)
>> quad('1./(1+x.^2)',0,1,10e-10) 函数表达式一定要用 单引号 括起来! 涉及的运算一定要用 数组运算!
dblquad
i 1
n
通常我们取
x1 x2 xn
h ba n
点 i [ xi 1, xi ] 可以任意选取,常见的取法有: 左端点 xi 1 ,右端点
xi 和中点 ( xi 1 xi ) / 2 。
中点法
左点法
右点法
左点法、右点法和中点法
步长
xi h (b a) / n xi a ih, i 1,2, n
抛物线法
设过以上三点的抛物线方程为: y = x2 + x + = p1(x)
则在区间 [x0, x2] 上,有

x2
x0
f ( x)dx p1 ( x)dx x ( x2 x )dx
x2
0
x2
x0
x x x
3 2
x2
x2 x0 (y0 4y1 y2 ) 6 ba (y0 4 y1 y2 ) 6n
i 1 n
x2 i 2
f ( x )dx
ba ( y2i 2 4 y2i 1 y2i ) i 1 6n
抛物线法
整理后可得:

baຫໍສະໝຸດ b a f ( x)dx [ y0 y2n 4( y1 y3 y2n1 ) 6n 2( y2 y4 y2n2 )]

定积分定义取中点计算积分

定积分定义取中点计算积分

定积分定义取中点计算积分
定积分是微积分中的一种重要概念,表示函数在一个区间上的积分值。

定积分的计算可以使用取中点的方法进行近似计算。

取中点计算积分的方法如下:
1.将区间[a, b]等分成n个小区间,每个小区间的宽度为Δx = (b - a) / n。

2.在每个小区间上选择一个中点,可以选择中点为xi = a + (i - 0.5) * Δx,其中i = 1, 2, ..., n。

3.计算在每个小区间上的函数值,可以选择函数在中点xi处的函数值f(xi)。

4.对每个小区间的函数值进行求和并乘以区间宽度Δx,即Δx * (f(x1) + f(x2) + ... + f(xn))。

这个和的极限值就是原函数在区间[a, b]上的定积分,可以表示为∫[a, b] f(x) dx。

5.使用取中点的方法计算定积分只是一种近似计算方法,并且精确度取决于划分的小区间个数。

当划分的小区间个数越多,近似计算的结果越接近准确的定积分值。

高等数学-第五章-定积分

高等数学-第五章-定积分

则有
ab
c
c
b
c
a f (x)dx a f (x)dx b f (x)dx
b
c
c
a f (x)dx a f (x)dx b f (x)dx
c
b
a f (x)dx c f (x)dx
6. 若在 [a , b] 上

a<b
n
证: f (i ) xi 0
i1
b
n
a
f
( x) d
x
lim
d (x)
dx a
f (t) d t
f
[ ( x)] ( x)
d
dx
( x) (x)
f
(t) d t
d dx
a
f (t) d t
(x)
( x)
a
f
(t) d t
f [(x)](x) f [ (x)] (x)
例1. 求
0
0
解: 原式 洛 lim ecos2 x ( sin x) 1
x
ba n
,
xi a i x (i 0,1, ,n)
记 f (xi ) yi (i 0,1, ,n)
1. 左矩形公式
O a xi1xi
bx
ab f (x)dx y0x y1x yn1x
2. 右矩形公式
ba n
(
y0
y1
yn1)
ab f (x)dx y1x y2x ynx
)

π 2 0
2
dx
π
2 f (x) dx
0
π
2 1dx
0

1
π
2 0

几种定积分的数值计算方法

几种定积分的数值计算方法

几种定积分的数值计算方法数值计算定积分是计算定积分的一种近似方法,适用于无法通过代数方法求得精确解的定积分。

本文将介绍几种常见的数值计算定积分的方法。

1.矩形法(矩形逼近法):矩形法是最简单的数值计算定积分方法之一、它将定积分区间划分为若干个小区间,然后在每个小区间上取一个样本点,将每个小区间上的函数值乘以小区间的宽度,得到小矩形的面积,最后将这些小矩形的面积相加即可得到定积分的近似值。

矩形法有两种主要的实现方式:左矩形法和右矩形法。

左矩形法使用每个小区间的左端点作为样本点,右矩形法则使用右端点。

2.梯形法(梯形逼近法):梯形法是另一种常见的数值计算定积分方法。

它将定积分区间划分为若干个小区间,然后在每个小区间上取两个样本点,分别作为小区间的端点。

接下来,计算每个小区间上的函数值,然后将每个小区间上的函数值与两个端点连线所构成的梯形的面积相加,得到所有梯形的面积之和,最后得到近似的定积分值。

3.辛普森法:辛普森法是一种更为精确的数值计算定积分方法。

它将定积分区间分为若干个小区间,然后用二次多项式逼近每个小区间上的函数曲线。

在每个小区间上,辛普森法使用三个样本点,将函数曲线近似为一个二次多项式。

然后,对于每个小区间,计算该二次多项式所对应的曲线下梯形区域的面积,并将所有小区间的面积相加,得到近似的定积分值。

4. 龙贝格法(Romberg integration):龙贝格法是一种迭代的数值计算定积分方法,通过进行多次计算,逐步提高近似的精确度。

龙贝格法首先使用梯形法或者辛普森法计算一个初始近似值,然后通过迭代的方式进行优化。

在每次迭代中,龙贝格法先将区间划分成更多的子区间,并在每个子区间上进行梯形法或者辛普森法的计算。

然后,利用这些计算结果进行Richardson外推,从而得到更精确的定积分近似值。

通过多次迭代,龙贝格法可以逐步提高逼近的精确度。

上述介绍的四种数值计算定积分的方法都有各自的优势和适用范围。

定积分的近似计算方法

定积分的近似计算方法

定积分的近似计算方法一、矩形法(Rectangle Method)矩形法是将定积分区间划分成若干个子区间,并在每个子区间上选取一个点作为代表,然后利用函数在这些点上的取值乘以子区间的长度来近似计算定积分。

1.1. 零点矩形法(Midpoint Rectangle Method)零点矩形法是将每个子区间的中点作为代表点,然后计算每个子区间的长度乘以函数在代表点上的取值,并将所有子区间的结果相加,即可得到定积分的近似值。

1.2. 左点矩形法(Left Rectangle Method)左点矩形法是将每个子区间的左端点作为代表点,然后计算每个子区间的长度乘以函数在代表点上的取值,并将所有子区间的结果相加,即可得到定积分的近似值。

1.3. 右点矩形法(Right Rectangle Method)右点矩形法是将每个子区间的右端点作为代表点,然后计算每个子区间的长度乘以函数在代表点上的取值,并将所有子区间的结果相加,即可得到定积分的近似值。

二、梯形法(Trapezoidal Rule)梯形法将定积分区间划分成若干个子区间,然后在每个子区间上用一个梯形来近似表示函数的曲线部分。

梯形的面积等于底边长度的一半乘以两个高的和。

2.1. 边均值梯形法(Midpoint Trapezoidal Rule)边均值梯形法是将每个子区间的左右端点的函数值相加除以2,然后计算每个子区间的长度乘以边均值的结果,并将所有子区间的结果相加,即可得到定积分的近似值。

三、辛普森法(Simpson's Rule)辛普森法将定积分区间划分成若干个子区间,然后利用多项式函数在这些子区间上的插值来计算定积分的近似值。

具体而言,辛普森法在每个子区间上构造一个二次多项式,使其与原函数在子区间端点处以及中点处的函数值相等,然后计算每个子区间上的插值多项式的积分,并将所有子区间的结果相加,即可得到定积分的近似值。

总结起来,定积分的近似计算方法有矩形法、梯形法和辛普森法三种。

定积分的近似计算

定积分的近似计算

定积分的近似计算定积分的近似计算是数学中一种常用的方法,它可以帮助我们计算具体函数在一定区间上的面积或曲线长度。

在实际应用中,定积分的近似计算有多种方法,包括矩形法、梯形法、辛普森法等。

本文将侧重介绍这些方法的原理和应用。

1. 矩形法(Reimann和法):矩形法是定积分近似计算的最简单方法之一、其基本思想是将给定区间等分为若干个小区间,然后在每个小区间内选择一个代表点,以该点处函数值与小区间长度的乘积作为该小区间的面积近似值,然后对所有小区间的面积近似值求和得到最终的近似计算结果。

具体而言,设函数f(x)在区间[a,b]上连续,将该区间分为n个小区间:x0=a, x1=a+h, x2=a+2h, ..., xn=a+nh=b其中h=(b-a)/n,xi为每个小区间的代表点。

此时,对于每个小区间,我们可以将其面积近似为S_i=h*f(xi),然后对所有小区间的面积进行求和,即:S=a*h*f(x0)+a*h*f(x1)+...+a*h*f(xn-1)对于当n趋向于无穷大时,通过这一方法可以得到函数f(x)在区间[a,b]上的定积分值。

2.梯形法:梯形法是定积分近似计算的另一种常用方法。

与矩形法类似,梯形法也是将给定区间等分为若干个小区间,然后在每个小区间内用该区间两个端点处的函数值构造出一个梯形,以该梯形的面积作为小区间面积的近似值,最终对所有小区间的面积进行求和得到近似计算结果。

设函数f(x)在区间[a,b]上连续,将该区间分为n个小区间,并选取区间端点[a,b]分别作为梯形的上底和下底,连线得到梯形。

此时,对于每个小区间,梯形的面积可以近似表示为:S_i=(h/2)*(f(xi)+f(xi+1))其中h=(b-a)/n,xi为每个小区间的起点。

最后,对于所有小区间的面积近似值进行求和,即:S=(h/2)*[f(a)+2f(a+h)+2f(a+2h)+...+2f(b-h)+f(b)]对于当n趋向于无穷大时,通过这一方法也可以得到函数f(x)在区间[a,b]上的定积分值。

定积分计算法则范文

定积分计算法则范文

定积分计算法则范文一、基本积分法:基本积分法是指通过查表或记忆直接计算出一些常见函数的积分,常见的基本积分公式有如下几个:1. ∫x^n dx = (x^(n+1))/(n+1) + C 其中n不等于-12. ∫(1/x) dx = ln,x, + C3. ∫e^x dx = e^x + C4. ∫a^x dx = (a^x)/lna + C通过这些基本积分公式,可以直接求解出很多简单的定积分。

二、换元积分法:换元积分法是通过变量替换的方式将原积分式转化为另一个形式的积分式,从而使得计算更简单。

具体步骤如下:1. 设 u = g(x),则 du = g'(x) dx2. 将原积分式中的dx用du替代3.将原积分区间中的x用新的变量u表示4.求得新的定积分式,进行计算5.将结果转换回原变量x三、分部积分法:分部积分法是对于乘积的函数进行积分的一种方法,通过反复应用积分公式,将原积分式化为简单的基本积分形式。

具体步骤如下:1. 将原积分式分解为两个函数相乘的形式∫u dv2. 设 u 为一个函数,dv为另一个函数,且du和v可以求导或求积出来3. 根据分部积分公式∫u dv = uv - ∫v du,进行计算4.反复应用分部积分直到得到简单的基本积分形式四、分式积分法:分式积分法是对于有理函数进行积分的一种方法,通过将有理函数拆分为部分分式的形式,然后对每个部分分式进行积分计算。

具体步骤如下:1.对有理函数进行部分分数分解2.对每个部分分式进行积分计算3.简化结果并合并得到最终的积分结果五、定积分中值定理:定积分中值定理是针对连续函数在闭区间上的积分,通过介值定理可以得到存在一个介于区间上下限之间的点,使得该点的函数值等于其在区间上的平均值。

具体表达式如下:∫a^b f(x) dx = f(c) * (b - a),其中a ≤ c ≤ b这个定理可以用于求解一些特殊类型的定积分,例如平均值定理、计算面积和体积等。

定积分的近似计算 矩形法 教学PPT课件

定积分的近似计算 矩形法 教学PPT课件

1 4 0 1 x2
dx
1 10
(
y0
y1
y9 )
3.2400,
1 4 d x 1 ( y y y ) 3.0400.
0 1 x2
10 1 2
10
梯形法
b a
f
(x)d
x
b
a n
(y0
y 1
y) n1
b
n
a( y1
y2
y) n

y
y f (x)
Oa
bx
b a
f
(x) d
x
b
a n
利用矩形法( n 10 )计算
14 0 1 x2
d
x.
解 记 x i , y 4 (i 0,1, 2,,10) ,
i 10
i 1 xi2
xi
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
yi 4.0000 3.9604 3.8462 3.6697 3.4483 3.2 2.9412 2.6846 2.4390 2.2099 2.0000
2
n
i xi
定积分 b f (x) d x ( f (x) 0) 的几何意义 a b f (x)d x A. a
y
y f (x)
Oa
A
bx
b a
f
(x)d
x
b
a n
( y0
y1
yn1 )
b a(y y y ) .
n
1
2
n
y
y f (x)
左矩形法 右矩形法
矩形法
Oa
bx

y0

计算方法数值积分

计算方法数值积分

计算方法数值积分数值积分也叫数值积分法,是一种利用数值计算方法来近似计算定积分的技术。

数值积分法的基本思想是将求解定积分的问题转化为连续函数的逼近问题,通过对确定的函数值进行加权平均来估计定积分的值。

数值积分法的步骤如下:1.将被积函数f(x)分割成若干个小区间;2.在每个小区间上选择一个或多个代表点,计算这些代表点的函数值;3.将这些函数值与一组预先选定的权重相乘,并将结果求和,即可得到最终的近似积分值。

常用的数值积分法有矩形法、梯形法、辛普森法等。

矩形法是数值积分中最简单粗糙的近似计算方法。

它将每个小区间上的函数值等分为一个常量,用矩形面积的和来近似计算定积分。

具体来说,矩形法可分为左矩形法、右矩形法和中矩形法三种。

其中,左矩形法以每个小区间的左端点作为代表点,右矩形法以右端点作为代表点,中矩形法以每个小区间的中点作为代表点。

梯形法是通过近似使用梯形面积来计算定积分。

它的计算思想是将每个小区间上的函数值重新排列为两个连续点的直线,并计算这些直线与x轴之间的面积和。

具体来说,梯形法通过连接每个小区间的左右两个函数值,构成一个梯形来近似计算定积分。

辛普森法是一种更加精确的数值积分方法。

它的计算思想是将每个小区间上的函数值近似为一个二次多项式,并计算这些多项式的积分值。

辛普森法使用了更多的代表点,其中每两个相邻的代表点组成一个小区间,并使用一个二次多项式来逼近这个小区间上的函数。

辛普森法的精度比矩形法和梯形法要高。

数值积分法的精度受步长的影响,步长越小,近似误差越小。

在实际计算中,需要根据被积函数的特点和计算精度的要求来选择合适的数值积分法和步长。

此外,为了提高计算精度,还可以采用自适应步长和复合数值积分等方法。

总之,数值积分是求解定积分的一种近似计算方法,其基本思想是对函数的逼近和面积的加权平均。

常用的数值积分法有矩形法、梯形法和辛普森法等,选择合适的方法和步长可以提高计算精度。

数值积分法在科学计算领域和工程实践中被广泛应用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数学实验报告实验序号:4 日期:2012 年12 月13 日实验名称定积分的近似计算问题背景描述:利用牛顿—莱布尼兹公式虽然可以精确地计算定积分的值,但它仅适用于被积函数的原函数能用初等函数表达出来的情形.如果这点办不到或者不容易办到,这就有必要考虑近似计算的方法.在定积分的很多应用问题中,被积函数甚至没有解析表达式,可能只是一条实验记录曲线,或者是一组离散的采样值,这时只能应用近似方法去计算相应的定积分.实验目的:本实验将主要研究定积分的三种近似计算算法:矩形法、梯形法、抛物线法。

对于定积分的近似数值计算,Matlab有专门函数可用。

实验原理与数学模型:1.矩形法根据定积分的定义,每一个积分和都可以看作是定积分的一个近似值,即在几何意义上,这是用一系列小矩形面积近似小曲边梯形的结果,所以把这个近似计算方法称为矩形法.不过,只有当积分区间被分割得很细时,矩形法才有一定的精确度.针对不同的取法,计算结果会有不同。

(1)左点法:对等分区间,在区间上取左端点,即取。

(2)右点法:同(1)中划分区间,在区间上取右端点,即取。

(3)中点法:同(1)中划分区间,在区间上取中点,即取。

2.梯形法等分区间,相应函数值为().曲线上相应的点为()将曲线的每一段弧用过点,的弦(线性函数)来代替,这使得每个上的曲边梯形成为真正的梯形,其面积为,.于是各个小梯形面积之和就是曲边梯形面积的近似值,,即,称此式为梯形公式。

3.抛物线法将积分区间作等分,分点依次为,,对应函数值为(),曲线上相应点为().现把区间上的曲线段用通过三点,,的抛物线来近似代替,然后求函数从到的定积分:由于,代入上式整理后得同样也有……将这个积分相加即得原来所要计算的定积分的近似值:,即这就是抛物线法公式,也称为辛卜生(Simpson)公式.实验所用软件及版本:Matlab 7.0主要内容(要点):1.分别用梯形法与抛物线法,计算,取.并尝试直接使用函数trapz()、quad()进行计算求解,比较结果的差异.2.试计算定积分.(注意:可以运用trapz()、quad()或附录程序求解吗?为什么?)3.学习fulu2sum.m的程序设计方法,尝试用函数sum 改写附录1和附录3的程序,避免for 循环。

实验过程记录(含基本步骤、主要程序清单及异常情况记录等):1:○1梯形法format longn=120;a=1;b=2;syms x fxfx=1/x;i=1:n;xj=a+(i-1)*(b-a)/n; %所有左点的数组xi=a+i*(b-a)/n; %所有右点的数组fxj=subs(fx,'x',xj); %所有左点值fxi=subs(fx,'x',xi); %所有右点值f=(fxi+fxj)/2*(b-a)/n; %梯形面积inum=sum(f) %加和梯形面积求解integrate=int(fx,1,2);integrate=double(integrate)fprintf('The relative error between inum and real-value is about:%g/n/n',...abs((inum-integrate)/integrate))【调试结果】inum =0.69315152080005integrate =0.69314718055995The relative error between inum and real-value is about:6.26164e-006/n/n○2抛物线法:%抛物线法format longn=120;a=1;b=2;inum=0;syms x fxfx=1/x;for i=1:nxj=a+(i-1)*(b-a)/n; %左点xi=a+i*(b-a)/n; %右点xk=(xi+xj)/2; %中点fxj=subs(fx,'x',xj);fxi=subs(fx,'x',xi);fxk=subs(fx,'x',xk);inum=inum+(fxj+4*fxk+fxi)*(b-a)/(6*n);endinumintegrate=int(fx,1,2);integrate=double(integrate);fprintf('The relative error between inum and real-value is about:%g/n/n',...abs((inum-integrate)/integrate))【调试结果】inum =0.69314718056936The relative error between inum and real-value is about:1.35886e-011/n/n>>○3使用函数trapz()x=1:1/120:2;y=1./x;trapz(x,y)【调试结果】ans =0.69315152080005○4使用函数quad()quad('1./x',1,2)【调试结果】ans =0.693147199862972:○1使用函数trapz()x=1:1/120:inf;y=sin(x)./x;trapz(x,y)【调试结果】??? Error using ==> colonMaximum variable size allowed by the program is exceeded.○2使用函数quad()quad('sin(x)./x',0,inf)【调试结果】ans =NaN○3程序法%矩阵法format longn=inf;a=0;b=inf;syms x fxfx=sin(x)./x;i=1:n;xj=a+(i-1)*(b-a)/n; %左点xi=a+i*(b-a)/n; %右点xij=(xi+xj)/2;fxj=subs(fx,'x',xj); %左点值fxi=subs(fx,'x',xi); %右点值fxij=subs(fx,'x',xij); %中点值f1=fxj*(b-a)/n;f2=fxi*(b-a)/n;f3=fxij*(b-a)/n;inum1=sum(f1)inum2=sum(f2)inum3=sum(f3)integrate=int(fx,0,inf);integrate=double(integrate);fprintf('the relative error between inum1 and real-value is about: %g\n\n',...abs((inum1-integrate)/integrate))fprintf('the relative error between inum2 and real-value is about: %g\n\n',...abs((inum2-integrate)/integrate))fprintf('the relative error between inum3 and real-value is about: %g\n\n',...abs((inum3-integrate)/integrate))【调试结果】??? Maximum variable size allowed by the program is exceeded.○4使用matlab命令syms x;f=sin(x)/x;I=int(f,0,inf)【调试结果】I =1/2*pi3:○1矩形法:利用求和函数%矩阵法format longn=100;a=0;b=1;syms x fxfx=1/(1+x^2);i=1:n;xj=a+(i-1)*(b-a)/n; %左点xi=a+i*(b-a)/n; %右点xij=(xi+xj)/2;fxj=subs(fx,'x',xj); %左点值fxi=subs(fx,'x',xi); %右点值fxij=subs(fx,'x',xij); %中点值f1=fxj*(b-a)/n;f2=fxi*(b-a)/n;f3=fxij*(b-a)/n;inum1=sum(f1)inum2=sum(f2)inum3=sum(f3)integrate=int(fx,0,1);integrate=double(integrate);fprintf('the relative error between inum1 and real-value is about: %g\n\n',...abs((inum1-integrate)/integrate))fprintf('the relative error between inum2 and real-value is about: %g\n\n',...abs((inum2-integrate)/integrate))fprintf('the relative error between inum3 and real-value is about: %g\n\n',...abs((inum3-integrate)/integrate))【调试结果】inum1 =0.78789399673078inum2 =0.78289399673078inum3 =0.78540024673078the relative error between inum1 and real-value is about: 0.00317779the relative error between inum2 and real-value is about: 0.0031884the relative error between inum3 and real-value is about: 2.65258e-006○2抛物线法:使用求和函数%抛物线format longn=100;a=0;b=1;syms x fxfx=1/(1+x^2);i=1:n;xj=a+(i-1)*(b-a)/n; %左点xi=a+i*(b-a)/n; %右点xij=(xi+xj)/2;fxj=subs(fx,'x',xj); %左点值fxi=subs(fx,'x',xi); %右点值fxij=subs(fx,'x',xij); %中点值f=(fxj+4*fxij+fxi)*(b-a)/(6*n);inum=sum(f)integrate=int(fx,0,1);integrate=double(integrate);fprintf('the relative error between inum and real-value is about: %g\n\n',...abs((inum-integrate)/integrate))【调试结果】inum =0.78539816339745the relative error between inum and real-value is about: 2.82716e-016【情况记录】1、梯形法和抛物线法程序设计较为顺利。

相关文档
最新文档