复化求积方法

阅读: 评论:0

复化求积方法

复化求积方法

从Newton-Cotes的截断误差公式可以看出,当积分区间 [ a , b ] [a,b] [a,b]较大时,低阶的Newton-Cotes求积公式截断误差都比较大。由于高阶Newton-Cotes求积公式是数值不稳定的,因此通过不断增加阶数来提高求积公式的精度是不可行的。但是,如果将积分区间 [ a , b ] [a,b] [a,b]分成几个小区间(任意的),在每个小区间上应用Newton-Cotes求积公式,其截断误差必然会减小,然后再把每个小区间上的积分值累加起来,这样却能大大提高整个积分的精度。这种方法称为复化求积方法。

常用的复化求积方法采用等分区间的做法,具体如下:

将区间 [ a , b ] [a,b] [a,b]划分为n等分,步长为 H = ( b − a ) n H=frac{(b-a)}{n} H=n(b−a)​,分点为 x k = a + k H , k = 0 , 1 , 2 , ⋯ , n x_k=a+kH,k=0,1,2,cdots,n xk​=a+kH,k=0,1,2,⋯,n。先用低阶Newton-Cotes求积公式求得每个子区间 [ x k , x k + 1 ] [x_k,x_{k+1}] [xk​,xk+1​]上的积分值 I k I_k Ik​,然后将它们累加起来求和,用 ∑ k = 0 n − 1 I k sum_{k=0}^{n-1}I_k ∑k=0n−1​Ik​作为所求积分 I = ∫ a b f ( x ) d x I=int_a^bf(x)dx I=∫ab​f(x)dx的近似值。

1. 复化梯形公式

在区间 [ a , b ] [a,b] [a,b]上采用复化求积方法,具体使用梯形求积公式进行计算,就得到复化梯形求积公式。用 T k T_k Tk​表示 f ( x ) f(x) f(x)在子区间 [ x k , x k + 1 ] [x_k,x_{k+1}] [xk​,xk+1​]上的积分值, T n T_n Tn​表示 f ( x ) f(x) f(x)在区间 [ a , b ] [a,b] [a,b]上的积分值,有:
T k = 1 2 H [ f ( x k ) + f ( x k + 1 ) ] T_k=frac{1}{2}H[f(x_k)+f(x_{k+1})] Tk​=21​H[f(xk​)+f(xk+1​)]
其中
H = ( b − a ) / n , x k = a + k H ( k = 0 , 1 , 2 , ⋯ , n ) H=(b-a)/n, quad x_k=a+kH quad(k=0,1,2,cdots,n) H=(b−a)/n,xk​=a+kH(k=0,1,2,⋯,n)

T n = ∑ k = 0 n − 1 T k = 1 2 H ∑ k = 0 n − 1 [ f ( x k ) + f ( x k + 1 ) ] T_n=sum_{k=0}^{n-1}T_k=frac{1}{2}Hsum_{k=0}^{n-1}[f(x_k)+f(x_{k+1})] Tn​=k=0∑n−1​Tk​=21​Hk=0∑n−1​[f(xk​)+f(xk+1​)]
即:
T n = 1 2 H [ f ( x k = 0 ) + f ( x k = n ) + 2 ∑ k = 1 n − 1 f ( x k ) ] T_n=frac{1}{2}H[f(x_{k=0})+f(x_{k=n})+2sum_{k=1}^{n-1}f(x_k)] Tn​=21​H[f(xk=0​)+f(xk=n​)+2k=1∑n−1​f(xk​)]

T n = b − a 2 n [ f ( a ) + f ( b ) + 2 ∑ k = 1 n − 1 f ( x k ) ] T_n=frac{b-a}{2n}[f(a)+f(b)+2sum_{k=1}^{n-1}f(x_k)] Tn​=2nb−a​[f(a)+f(b)+2k=1∑n−1​f(xk​)]
截断误差用 R T R_T RT​表示,由于 f ( x ) f(x) f(x)在区间 [ a , b ] [a,b] [a,b]上有连续的二阶导数,故有:
R T = ∑ k = 0 n − 1 − 1 12 H 3 f ( 2 ) ( η k ) = − 1 12 H 3 ∑ k = 0 n − 1 f ( 2 ) ( η k ) η k ∈ [ x k , x k + 1 ] R_T=sum_{k=0}^{n-1}-frac{1}{12}H^3f^{(2)}(eta_k)=-frac{1}{12}H^3sum_{k=0}^{n-1}f^{(2)}(eta_k) quad eta_kin[x_k,x_{k+1}] RT​=k=0∑n−1​−121​H3f(2)(ηk​)=−121​H3k=0∑n−1​f(2)(ηk​)ηk​∈[xk​,xk+1​]

R T = − 1 12 H 3 ⋅ n ⋅ f ( 2 ) ( η ) = − ( b − a ) 12 H 2 f n ( η ) η ∈ [ a , b ] R_T=-frac{1}{12}H^3·n·f^{(2)}(eta)=-frac{(b-a)}{12}H^2f^n(eta) quad eta in [a,b] RT​=−121​H3⋅n⋅f(2)(η)=−12(b−a)​H2fn(η)η∈[a,b]

2. 复化Simpson公式

在区间 [ a , b ] [a,b] [a,b]上采用复化求积方法,具体使用Simpson求积公式进行计算,就得到复化Simpson公式。用 S k S_k Sk​表示 f ( x ) f(x) f(x)在子区间 [ x k , x k + 1 ] [x_k,x_{k+1}] [xk​,xk+1​]上的积分值, S n S_n Sn​表示 f ( x ) f(x) f(x)在区间 [ a , b ] [a,b] [a,b]上的积分值,有:
S k = 1 6 H [ f ( x k ) + 4 f ( x k + 1 2 ) + f ( x k + 1 ) ] S_k=frac{1}{6}H[f(x_k)+4f(x_{k+frac{1}{2}})+f(x_{k+1})] Sk​=61​H[f(xk​)+4f(xk+21​​)+f(xk+1​)]
式中, x k + 1 2 x_{k+frac{1}{2}} xk+21​​为子区间 [ x k , x k + 1 2 ] [x_k,x_{k+frac{1}{2}}] [xk​,xk+21​​]的中点, H = ( b − a ) / n H=(b-a)/n H=(b−a)/n。
S n = ∑ k = 0 n − 1 = 1 6 H ∑ k = 0 n − 1 [ f ( x k ) + 4 f ( x k + 1 2 ) + f ( x k + 1 ) ] S_n=sum_{k=0}^{n-1}=frac{1}{6}Hsum_{k=0}^{n-1}[f(x_k)+4f(x_{k+frac{1}{2}})+f(x_{k+1})] Sn​=k=0∑n−1​=61​Hk=0∑n−1​[f(xk​)+4f(xk+21​​)+f(xk+1​)]

S n = ∑ k = 0 n − 1 = 1 6 H [ f ( a ) + 4 ∑ k = 0 n − 1 f ( x k + 1 2 ) + 2 ∑ k = 1 n − 1 f ( x k ) + f ( b ) ] S_n=sum_{k=0}^{n-1}=frac{1}{6}H[f(a)+4sum_{k=0}^{n-1}f(x_{k+frac{1}{2}})+2sum_{k=1}^{n-1}f(x_{k})+f(b)] Sn​=k=0∑n−1​=61​H[f(a)+4k=0∑n−1​f(xk+21​​)+2k=1∑n−1​f(xk​)+f(b)]
截断误差用 R s R_s Rs​表示,由于 f ( x ) f(x) f(x)在区间 [ a , b ] [a,b] [a,b]上有连续的四阶导数,故有:
R S = ∑ k = 0 n − 1 − 1 2880 H 5 f ( 4 ) ( η k ) = − 1 2880 H 5 ∑ k = 0 n − 1 f ( 4 ) ( η k ) η k ∈ [ x k , x k + 1 ] R_S=sum_{k=0}^{n-1}-frac{1}{2880}H^5f^{(4)}(eta_k)=-frac{1}{2880}H^5sum_{k=0}^{n-1}f^{(4)}(eta_k) quad eta_k in [x_k,x_{k+1}] RS​=k=0∑n−1​−28801​H5f(4)(ηk​)=−28801​H5k=0∑n−1​f(4)(ηk​)ηk​∈[xk​,xk+1​]

3. 复化Cotes公式

在区间 [ a , b ] [a,b] [a,b]上采用复化求积方法,具体使用Cotes求积公式进行计算,就得到复化Cotes公式为:
C n = 1 90 H [ 7 f ( a ) + 32 ∑ k = 0 n − 1 f ( x k + 1 4 ) + 12 ∑ k = 0 n − 1 f ( x k + 1 2 ) + 32 ∑ k = 0 n − 1 f ( x k + 3 4 ) + 14 ∑ k = 1 n − 1 f ( x k ) + 7 f ( b ) ] C_n=frac{1}{90}H[7f(a)+32sum_{k=0}^{n-1}f(x_{k+frac{1}{4}})+12sum_{k=0}^{n-1}f(x_{k+frac{1}{2}})+32sum_{k=0}^{n-1}f(x_{k+frac{3}{4}})+14sum_{k=1}^{n-1}f(x_k)+7f(b)] Cn​=901​H[7f(a)+32k=0∑n−1​f(xk+41​​)+12k=0∑n−1​f(xk+21​​)+32k=0∑n−1​f(xk+43​​)+14k=1∑n−1​f(xk​)+7f(b)]
截断误差为:
R c = − 2 ( b − a ) 945 ( H 4 ) 6 f ( 6 ) ( η ) η ∈ [ a , b ] R_c=-frac{2(b-a)}{945}(frac{H}{4})^6f^{(6)}(eta) quad etain[a,b] Rc​=−9452(b−a)​(4H​)6f(6)(η)η∈[a,b]
从复化求积的余项公式中可以看出,复化梯形公式、复化Simpson公式、复化Cotes公式的余项和步长的关系为 R T = O ( h 2 ) , R s = O ( h 4 ) , R c = O ( h 6 ) R_T=O(h^2),R_s=O(h^4),R_c=O(h^6) RT​=O(h2),Rs​=O(h4),Rc​=O(h6)。因此,当 H → 0 Hto 0 H→0或 n → ∞ nto infty n→∞时, T n , S n , C n → I T_n,S_n,C_nto I Tn​,Sn​,Cn​→I。

本文发布于:2024-03-14 09:20:56,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/1710800211149218.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:方法   复化求积
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23