复化辛普森求积公式

合集下载

复化梯形公式,复化辛普森公式,复化柯特斯公式

复化梯形公式,复化辛普森公式,复化柯特斯公式

复化梯形公式,复化辛普森公式,复化柯特斯公式
复化梯形公式、复化辛普森公式和复化柯特斯公式都是用来计算定积分的近似值的方法。

1. 复化梯形公式:将积分区间分成若干个小区间,在每个小区间上用梯形面积近似代替该小区间的曲边梯形面积,然后将这些梯形面积相加,得到积分的近似值。

2. 复化辛普森公式:将积分区间分成若干个等分小区间,在每个小区间上用矩形面积近似代替该小区间的曲边梯形面积,然后将这些矩形面积相加,得到积分的近似值。

3. 复化柯特斯公式:将积分区间分成若干个等分小区间,在每个小区间上用切线段长度近似代替该小区间的曲边梯形面积,然后将这些切线段长度相加,得到积分的近似值。

这三种方法都是通过将积分区间分成若干个小区间,然后在每个小区间上用近似方法计算该小区间的曲边梯形面积,最后将这些近似值相加得到积分的近似值。

它们的精度和误差都与分区间的大小有关。

matlab复化Simpson求积公式计算数值积分

matlab复化Simpson求积公式计算数值积分

,(k 0,1,...,n)k x a kh =+=b a h n-=2221222121(x)dx (x)dx [(x )4(x )(x )]3k k m a x b x k m k k k k f f h f f f -=--=≈≈++∑⎰⎰∑复化Simpson 求积公式计算数值积分一·复化Simpson 求积公式的数学理论如果用分段二次插值函数近似被积函数,即在小区间上用Simpson 公式计算积分近似值,就可导出复化Simpson 公式。

二·复化Simpson 求积公式的算法和流程图将积分区间[a,b]分成n=2m 等分,分点为,在每个小区间[222,x k k x -](k=0,1,…,n-1)上。

用Simpson 公式求积分,则有2222222221222212(x)dx [(x )4(x )(x )]6[(x )4(x )(x )]3kk x k k k k k x k k k x x f f f f h f f f -------≈++=++⎰求和得整理后得到122111(x)dx [(a)(b)2(x )4(x )]3m m bk k a k k h f f f f f --==≈+++∑∑⎰ (5-21)式(5-21)称为复化Simpson 公式。

如果(4)(x)[a,b]f c ∈,则由Simpson 插值余项公式可得复化公式的截断误差为1221115(4)2221()(x)dx [(a)(b)2(x )4(x )]3(2h)()[x ,x ]2880m m bS k k a k k mk k k h R f f f f f f ξξ--==-==-+++=-∈∑∑⎰∑因为(4)f x 为连续,故存在[a,b]ξ∈,使得(4)(4)11()()m k k f f m ξξ==∑代入上式得5(4)4(4)1(2h)()()()(a,b)2880180m s k b a R f mf h f ξξξ=-=-=-∈∑ (5-22)式(5-22)表明,步长h 越小,截断误差越小。

复化梯形公式和复化Simpson公式

复化梯形公式和复化Simpson公式

一、计算定积分的近似值:221x e xe dx =⎰ 要求:(1)若用复化梯形公式和复化Simpson 公式计算,要求误差限71021-⨯=ε,分别利用他们的余项估计对每种算法做出步长的事前估计;(2)分别利用复化梯形公式和复化Simpson 公式计算定积分;(3)将计算结果与精确解比较,并比较两种算法的计算量。

1.复化梯形公式程序:程序1(求f (x )的n 阶导数:syms xf=x*exp(x) %定义函数f (x )n=input('输入所求导数阶数:')f2=diff(f,x,n) %求f(x)的n 阶导数结果1输入n=2f2 =2*exp(x) + x*exp(x)程序2:clcclearsyms x %定义自变量xf=inline('x*exp(x)','x') %定义函数f(x)=x*exp(x),换函数时只需换该函数表达式即可f2=inline('(2*exp(x) + x*exp(x))','x') %定义f(x)的二阶导数,输入程序1里求出的f2即可。

f3='-(2*exp(x) + x*exp(x))'%因fminbnd()函数求的是表达式的最小值,且要求表达式带引号,故取负号,以便求最大值e=5*10^(-8) %精度要求值a=1 %积分下限b=2 %积分上限x1=fminbnd(f3,1,2) %求负的二阶导数的最小值点,也就是求二阶导数的最大值点对应的x值for n=2:1000000 %求等分数nRn=-(b-a)/12*((b-a)/n)^2*f2(x1) %计算余项if abs(Rn)<e %用余项进行判断break% 符合要求时结束endendh=(b-a)/n %求hTn1=0for k=1:n-1 %求连加和xk=a+k*hTn1=Tn1+f(xk)endTn=h/2*((f(a)+2*Tn1+f(b)))z=exp(2)R=Tn-z %求已知值与计算值的差fprintf('用复化梯形算法计算的结果 Tn=')disp(Tn)fprintf('等分数 n=')disp(n) %输出等分数fprintf('已知值与计算值的误差 R=')disp(R)输出结果显示:用复化梯形算法计算的结果 Tn=等分数 n=7019已知值与计算值的误差 R=2. Simpson公式程序:程序1:(求f(x)的n阶导数):syms xf=x*exp(x) %定义函数f(x)n=input('输入所求导数阶数:')f2=diff(f,x,n) %求f(x)的n阶导数结果1输入n=4f2 =4*exp(x) + x*exp(x)程序2:clcclearsyms x%定义自变量xf=inline('x*exp(x)','x') %定义函数f(x)=x*exp(x),换函数时只需换该函数表达式即可f2=inline('(4*exp(x) + x*exp(x))','x') %定义f(x)的四阶导数,输入程序1里求出的f2即可f3='-(4*exp(x) + x*exp(x))'%因fminbnd()函数求的是表达式的最小值,且要求表达式带引号,故取负号,一边求最大值e=5*10^(-8) %精度要求值a=1 %积分下限b=2 %积分上限x1=fminbnd(f3,1,2) %求负的四阶导数的最小值点,也就是求四阶导数的最大值点对应的x值for n=2:1000000 %求等分数nRn=-(b-a)/180*((b-a)/(2*n))^4*f2(x1) %计算余项if abs(Rn)<e %用余项进行判断break% 符合要求时结束endendh=(b-a)/n %求hSn1=0Sn2=0for k=0:n-1 %求两组连加和xk=a+k*hxk1=xk+h/2Sn1=Sn1+f(xk1)Sn2=Sn2+f(xk)endSn=h/6*(f(a)+4*Sn1+2*(Sn2-f(a))+f(b)) %因Sn2多加了k=0时的值,故减去f(a)z=exp(2)R=Sn-z %求已知值与计算值的差fprintf('用Simpson公式计算的结果 Sn=')disp(Sn)fprintf('等分数 n=')disp(n)fprintf('已知值与计算值的误差 R=')disp(R)输出结果显示:用Simpson公式计算的结果 Sn=等分数 n=24已知值与计算值的误差 R=用复化梯形公式计算的结果为:,与精确解的误差为:。

复化辛甫生求积公式的应用

复化辛甫生求积公式的应用

真实值为: s*=0.9460830 绝对误差: ∣s*-s∣=∣0.9460830- 0.9460833∣=0.00000003<a 算法评价: 优点:精度达不到需增加节点时,只需计算新分点的值,避免 重复计算。 缺点:精度低,收敛慢。
ห้องสมุดไป่ตู้
复化辛普生公式求积的应用
1. 题目 用函数f(x)=sin(x)/x 的数据表计算积分 2. 复化辛甫生求积公式的目的及意义。 实际问题中常常需要计算积分。有些数值方法,如微分方程和积分 方程的求解,也都和积分计算相联系。依据人们所熟知的微积分基本定 理,根据牛顿——莱布尼兹公式,只要找到被积函数的原函数即可。不 过,这种方法在原则上虽然可行,但实际运用往往有困难。因为大量的 被积函数,找不到用初等函数表示的原函数;另外,当f(x)是由实验测 量或数值计算给出的一张数据表时,牛顿——莱布尼兹公式也不能直接 应用。而复化辛甫生求积公式的应用在对上述的难题是非常有用的。 3. 算法描述。 1. 输入计算所需要的数据。 2. 求出步长h=(b-a)/n,f(b)-f(a)=s,x=a 3. 对计算次数进行循环,在每次循环中,x=x+h/2,s=s+4f(x),对x进 行重新赋值,x=x+h/2,s=s+2f(x),直到k=n时停止。 4. 输出结果s=(h*s)/6. 流程图如下所示: 输入a,b,n h=(b-a)/n s=f(a)-f(b) x=a K=0,1,2,3.......n-1 S=s+2f(x) X=x+h/2 S=s+4f(x) X=x+h/2 输出s=(h*s)/6 四.程序设计 program di4 implicit none real :: a=0.0000001 integer ::b=1 integer :: n=4 real h,s ,x,k,f

4.3 复化求积公式

4.3 复化求积公式

点,将新增加的分点处的函数值从求和记号中分离出来,就有:
b a
n1
n1

T2n
4n

f
(a)

2
k 1
f
(xk )

2
k 0
f
( xk 1
2
)
f
(b)

1 2
h 2

f
(a)

n1
2
k 1
f
(xk )

f
(b)
h 2
n k 0
0
1/4
例4.14 对于函数 f (x) sin x x
试用数据表应用复化梯形法计算积分
1 sin x
I ( f ) 0 x dx
2/4
x 0 1/8
解 将区间[0,1]划分为n=8等分,h=1/8, 应 2/8
用复化梯形法求得
3/8
T8

h 2

f
7
(a) 2
k 1
f
(xk )
x
k

1
)

2
f
( xk 1)]
xk
x k1
x k 1
2
b
n1
f (x)dx
xk1 f (x)dx
a
x k 0 k
4 4

xk 1 xk 6
m1 f
k0
xk

4f
(
x
k

1
)

2
f
( xk 1 )
4
4
4
称Sn为复化 Simpson公式

复化梯形法 复化矩形法 变步长梯形 变步长辛普森

复化梯形法 复化矩形法 变步长梯形 变步长辛普森

陕西科技大学机械教改班用C++的积分其实积分的思想就是,微分—>求和—>取极限,如果是用纯手工法那就是先对一个函数微分,再求出它的面积,在取极限,因为我们的计算速度和计算量有限,现在有了计算机这个速度很快的机器,我们可以把微分后的每个小的面积加起来,为了满足精度,我们可以加大分区,即使实现不了微分出无限小的极限情况,我们也至少可以用有限次去接近他,下面我分析了四种不同的积分方法,和一个综合通用程序。

一.积分的基本思想1、思路:微分—>求和—>取极限。

2、Newton —Leibniz 公式 ⎰-=ba a Fb F dx x f )()()( 其中,)(x F 被积函数)(x f的原函数。

3、用计算机积分的思路在积分区间内“微分—>求和—>控制精度”。

因为计算机求和不可以取极限,也就是不可以无限次的加下去,所以要控制精度。

二.现有的理论1、一阶求积公式---梯形公式⎰=+-=b a T b f a f a b dx x f )]()([2)( 他只能精确计算被积函数为0、1次多项式时的积分。

2、二阶求积分公式——牛顿、科特斯公式 ⎰=+++-=ba Sb f a b f a f a b dx x f )]()2(4)([6)(他只能精确计算被积函数为0、1、2、3次多项式时的积分。

三.四种实现方法1.复化矩形法将积分区间[a,b]等分成n 个子区间:],[],[],[],[],[112322110n n n n x x x x x x x x x x ---、、、 则h=(b-a)/n,区间端点值k x =a+kh)hf(x ))f(x x (x I 11121=-=)()()x (22232x hf x f x I =-=............................)()()(111n ---=-=n n n n x hf x f x x I∑==ni i x hf T 1n )(源程序:#include <iostream.h>#include<math.h>double f(double x) //计算被积函数{double y;y=log(1+x)/(1+x*x); //被积函数return y;}double Tn(double a,double b,int n) //求Tn{double t=0.0;double xk; //区间端点值double t1,t2; //用来判断精度do{double h=(b-a)/n;for(int k=1;k<=n-1;k++) //每一小段的矩形叠加 {t1=t;xk=a+k*h;t+=h*f(xk);t2=t;}n++; //如果精度不够就对区间再次细分,直到达到精度要求 }while(fabs(t1-t2)<=1e-7); //判断计算精度return t;}void main(){double a=0.0; //积分下线double b=2.0; //积分上限int n=1024; //把区间分为1024段cout<<Tn(a,b,n)<<endl; //输出积分结果}执行结果:2.复化梯形法方法和复化矩形法类似,只是把原来的矩形小面积变成了梯形小面积,但是精确度明显提高了,也就是说达到同样的精度需要的时间少了。

数值分析6.3 复化求积公式、龙贝格求积公式讲解

数值分析6.3  复化求积公式、龙贝格求积公式讲解

精度不够可将步长逐次分半. 设将区间 [a, b]分为n等
分,共有n+1个分点,如果将求积区间再分一次,则
分点增至2n+1个,我们将二分前后两个积分值联系
起来加以考虑. 注意到每个子区间[xk, xk+1]经过二分
只增加了一个分点
x k 1/ 2
1 ( x k xk 1 ) 2
设hn=(ba)/n, xk=a+khn (k=0,1,,n),在[xk, xk+1]
I f ( x )dx
b a k 0 n 1 xk 1 xk
f ( x )dx
每个子区间[xk, xk+1]上的积分用梯形公式, 得

xk 1 xk
h f ( x )dx [ f ( xk ) f ( xk 1 )] 2
xk 1 xk
I
k 0
6.3 复化求积公式
从求积公式的余项的讨论中我们看到,被积函数
所用的插值多项式次数越高,对函数光滑性的要求也
越高.另一方面,插值节点的增多(n的增大),在使用
牛顿-柯特斯公式时将导致求积系数出现负数(当n≥8
时, 牛顿-柯特斯求积系数会出现负数),即牛顿-柯特
斯公式是不稳定的,不可能通过提高阶的方法来提高 求积精度.
b n 1 xk 1 xk a
I f ( x )dx
k 0
f ( x )dx
h n 1 I [ f ( xk ) 4 f ( xk 1/2 ) f ( xk 1 )] 6 k 0
n 1 n 1 h [ f (a ) 4 f ( xk 1/2 ) 2 f ( xk ) f ( b)] 6 k 0 k 1

辛普森求积公式分解

辛普森求积公式分解
n
的插值型求积公式
In=(b-a)ckn)f(Xk)
为牛顿一柯特斯(Newton-Cotes)公式,式中ckn)称为柯特斯系数.根据插值型求积公式系数(1-2),引进变换x=a+th,则有
(一1严n
dt=鳥丿昭nn(t-j)dt
nk!(n-k)!0j出
j?k
当n =2时,由上式有
(2)121
C0=4J0(tT)(t-2)dt ="
i二0
这就是数值求积的思想(有效地解决了本章开始提出的问题),权因子A和节点Xi
i=0,1,2,…,n的不同确定方法就对应不同的数值求积公式
§
定义1.1称形如(1-1)式的求积公式为机械求积公式,其中Ai仅节点的选择与
f (x)无关,a =Xo兰X1<X2兰…Xn=b称为求积节点,Ai(20,1,2,…,n)称为求积
1.1基本思想及基本概念
§
由定积分中值定理:
b
=ff (x)dx=f (E)(b -a), a<E<ba
可知:积分可以通过被积函数在©处的值得到.由于积分中值定理仅仅告诉我们匕在 一定条件下是存在的,但并没有给出确定匕的方法.一个很自然的想法就是利用被积
函数f(X)在节点a =Xo<X1<X2Xn=b处函数值的加权平均来替代(近似)f(©),
Rs =
晋(宁)4f(4m,ya,b],f(x)心⑻b]
(1-5)
§
例1.1用辛普森求积公式计算积分
2
4+x
由积分形式可知a =0,b=1,n= 2
用辛普森公式计算有下式
1x1 1
-0^^6[f(O^4f(1^f(1)]
其中f(xV
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
式中ξ与变量 有x关, (x) (x x0 )(x x1) (x xn ).
12
当 f (x是)次数不超过 的n多项式时,插值多项式就是
函数本身,余项 R[ f ] 为零,所以这时插值型求积公式
至少具有 n次代数精度.
反之,如果求积公式(1.5)至少具有 次n代数精度,则
它必定是插值型的.
实际得到将是
~f ,k

f (xk )
~ fk
k.

n
I n ( f ) Ak f ( xk ),
In
(
~ f)
n
Ak ~f k .
k 0
k 0
15
如果对任给小正数 0,只要误差 充k 分小就有
~
In( f ) In( f )
n
Ak [ f ( xk )
~ fk ]
,
(1.8)
曲边梯形的面积 I(图4-1).
图4-1
3
问题在于点ξ的具体位置一般是不知道的,因而难以
准确算出 f (的)值. 将 f 称(为) 区间
上[a的, b平]均高度.
这样,只要对平均高度 f提(供) 一种算法,相应地便
获得一种数值求积方法.
用两端点“高度“ f (a与) f的(b算) 术平均作为平均高度
构造形如(1.3)的求积公式,原则上是一个确定参数 xk 和 A的k 代数问题.
10
4.1.3 插值型的求积公式
设给定一组节点
a x0 x1 x2 xn b,
且已知函数 f (在x)这些节点上的值, 作插值函数 Ln (.x)

b
In a Ln (x)dx
作为积分
I
b
a
f
的(x近)d似x 值,
f ( )的近似值,这样导出的求积公式
T b a [ f (a) f (b)] 2
是梯形公式(几何意义参看图4-2).
(1.1)
4
图4-2
用区间中点 c 的a “2 b高度” 近f似(c地) 取代平均 高度 f (,)则又可导出所谓中矩形公式(简称矩形公式)
R (b a) f ( a b ). 2
权 A仅k 仅与节点 的xk选取有关, 而不依赖于被积函数
f (x) 的具体形式.
6
这类数值积分方法通常称为机械求积,其特点是将积 分求值问题归结为函数值的计算,这就避开了牛顿-莱布尼 兹公式需要寻求原函数的困难.
7
4.1.2 代数精度的概念
数值求积是近似方法,为保证精度,自然希望求积公 式对尽可能多的函数准确成立.
证明 都有
对任给 0, 取 , 若对 k 0,1, , n
ba
~ f ( xk ) fk
,
则当 Ak 时0有
In ( f ) In ( ~f )
n
Ak (
f
( xk )
~ fk )
(1.2)
5
一般地,可以在区间 [a上, b适] 当选取某些节点 , xk
然后用 f (x加k )权平均得到平均高度 的f (近 )似值,
这样构造出的求积公式具有下列形式:
b
n
f (x)dx
a
Ak f ( xk ),
k 0
(1.3)
式中 x称k 为求积节点; Ak 称为求积系数,亦称伴随节点 xk 的权.
x
初等函数表示的原函数; (2)当 f是(x由) 测量或数值计算给出的一张数据表
时,牛顿-莱布尼兹公式也不能直接运用. 因此有必要研究积分的数值计算问题.
由积分中值定理知,在积分区间 [a内, b存]在一点ξ, 成立
b
a f (x)dx (b a) f ( ),
2
就是说,底为 b 而a高为 f的(矩)形面积恰等于所求
4.1 引言
4.1.1 数值求积的基本思想
依据微积分基本定理,对于积分
b
I a f (x)dx,
只要找到被积函数 f (的x)原函数 F,(x便) 有下列牛顿-莱 布尼兹(Newton-Leibniz)公式:
b
a f (x)dx F (b) F (a).
但对于下列情形:
1
(1)被积函数,诸如 sin x 等, si等n ,x2找不到用
充分必要条件是,它是插值型的.
14
4.1.4 求积公式的收敛性与稳定性
定义2 在求积公式(1.3)中,若
n
b
lim
n h0
k 0
Ak
f
( xk )
a
f (x)dx.
其中
h
max
Байду номын сангаас1i n
(
xi
xi1 ),
则称求积公式(1.3)是收敛的.
在求积公式(1.3)中,由于计算 可f (能xk 产) 生误差 , k
k 0
则表明求积公式(1.3)计算是稳定的, 由此给出:
定义3 对任给 0, 若 0, 只要
f
(xk )
~ fk
(k 0,1, , n)
就有(1.8)成立,则称求积公式(1.3)是稳定的.
16
定理2 若求积公式(1.3)中系数 Ak 0(k 0,1, , n) 则此求积公式是稳定的.
定义1 如果某个求积公式对于次数不超过 m的多项式 均能准确地成立,但对于 m 次1多项式就不准确成立,
则称该求积公式具有 m次代数精度.
梯形公式(1.1)和矩形公式(1.2)均具有一次代数精度.
8
欲使求积公式(1.3)具有 次m代数精度,则只要令它
对 f (x) 1,2,都准, x确m成立,就得到
事实上,这时公式(1.5)对于插值基函数 成立,即有
应lk (准x) 确
b
n
a lk ( x)dx
Ajlk ( x j ).
j 0
13
注意到 lk (x j ) kj , 上式右端实际上即等于 A,k 因而式(1.6)
b
Ak a lk (x)dx.
成立. 这样,有
定理1 形如(1.5)的求积公式至少有 次n 代数精度的
n
Ak b a,
k 0
n
1
Ak xk (b2 a2 ),
k 0
2
n
k 0
Ak xkm
1 (bm1 a m1 ).
m 1
(1.4)
9
如果事先选定求积节点 ,xk譬如,以区间 的[a等, b]
距分点作为节点,这时取 m ,n求解方程组(1.4)即可确
定求积系数 A,k 而使求积公式(1.3)至少具有 次n代数精度.
这样构造出的求积公式
n
I n Ak f ( xk ) k 0
(1.5)
11
称为是插值型的,式中求积系数 A通k 过插值基函数 lk (x)
积分得出
b
Ak a lk (x)dx.
(1.6)
由插值余项定理(第2章的定理2)即知,对于插值型的 求积公式(1.5),其余项
R[ f ] I In b f (n1) ( ) (x)dx, (1.7) a (n 1)!
相关文档
最新文档