从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−1Ik作为所求积分 I = ∫ a b f ( x ) d x I=int_a^bf(x)dx I=∫abf(x)dx的近似值。
在区间 [ 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=21H[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−1Tk=21Hk=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=21H[f(xk=0)+f(xk=n)+2k=1∑n−1f(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−1f(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−121H3f(2)(ηk)=−121H3k=0∑n−1f(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=−121H3⋅n⋅f(2)(η)=−12(b−a)H2fn(η)η∈[a,b]
在区间 [ 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=61H[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=61Hk=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=61H[f(a)+4k=0∑n−1f(xk+21)+2k=1∑n−1f(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−28801H5f(4)(ηk)=−28801H5k=0∑n−1f(4)(ηk)ηk∈[xk,xk+1]
在区间 [ 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=901H[7f(a)+32k=0∑n−1f(xk+41)+12k=0∑n−1f(xk+21)+32k=0∑n−1f(xk+43)+14k=1∑n−1f(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 条评论) |