当前位置: 首页 > news >正文

数值分析—数值积分

研究背景

积分的数学解法为牛顿莱布尼兹公式,数学表示为 ∫ a b f ( x ) d x = F ( b ) − F ( a ) \int_{a}^{b} f(x)dx=F(b)-F(a) abf(x)dx=F(b)F(a),但应用该方法有如下困难:
1, f ( x ) f(x) f(x)的原函数有时不能用初等函数表示,如 e − x 2 e^{-x^2} ex2 s i n x x \frac{sinx}{x} xsinx
2,原函数可以用初等函数表示,但很复杂,如 x 2 1 + 2 x 2 x^2\sqrt{1+2x^2} x21+2x2
3, f ( x ) f(x) f(x)本身无表达式,只有在若干点上的值。

针对这些问题,本章介绍几种近似求解积分的方法。

数值积分公式

数值积分

由中值定理 ∫ a b f ( x ) d x = f ( ξ ) ( b − a ) , \int_{a}^{b} f(x)dx=f(\xi)(b-a), abf(x)dx=f(ξ)(ba)其中 f ( ξ ) f(\xi) f(ξ) f ( x ) f(x) f(x)在[a,b]上的平均高度,可以不求原函数计算积分,但 ξ \xi ξ未知,故基于该方法,提出数值积分公式——用a代替 ξ \xi ξ,即 ∫ a b f ( x ) d x ≈ f ( a ) ( b − a ) \int_{a}^{b} f(x)dx\approx f(a)(b-a) abf(x)dxf(a)(ba),计算左端点为宽的矩阵公式,称为左矩阵公式,同理还有右矩阵公式 f ( b ) ( b − a ) f(b)(b-a) f(b)(ba)和中矩阵公式 f ( a + b 2 ) ( b − a ) f(\frac{a+b}{2})(b-a) f(2a+b)(ba)

矩形的误差可能过于大了,该方法则再次修正为 f ( a ) + f ( b ) 2 ( b − a ) \frac{f(a)+f(b)}{2}(b-a) 2f(a)+f(b)(ba),即根据端点函数值计算梯形面积近似积分值。

该方法的再次改进为近似计算函数的平均值, f ( ξ ) ( b − a ) ≈ ∑ k = 0 n f ( x k ) n + 1 ( b − a ) f(\xi)(b-a)\approx \frac{\sum_{k=0}^{n}f(x_{k})}{n+1}(b-a) f(ξ)(ba)n+1k=0nf(xk)(ba),用多个点的平均值代替 f ( ξ ) f(\xi) f(ξ),上式可抽象为 ∑ k = 0 n A k f ( x k ) \sum_{k=0}^{n}A_{k}f(x_{k}) k=0nAkf(xk),其中 A k A_{k} Ak称为权,该算法关键在于如何确定 A k A_{k} Ak x k x_{k} xk,取点越多一定越精确,但如何衡量精确程度呢?

误差分析 R ( x ) = ∫ a b f ( x ) d x − ∑ k = 0 n A k f ( x k ) R(x)=\int_{a}^{b} f(x)dx-\sum_{k=0}^{n}A_{k}f(x_{k}) R(x)=abf(x)dxk=0nAkf(xk)

代数精度

定义:若数值积分公式对一切 ≤ m \le m m次的多项式均能精确成立,则称次求积公式至少具有m次代数精度,若求积公式对一切 ≤ m \le m m次的多项式均能精确成立,但对 m + 1 m+1 m+1次多项式不能精确成立,则称此公式的代数精度为m次。

求积公式代数精度越高,使公式精确成立的多项式次数越高。

定理
求积公式具有m次代数精度的充要条件,当 f ( x ) = 1 , x , x 2 . . . x m f(x)=1,x,x^{2}...x^{m} f(x)=1,x,x2...xm时公式均能准确成立,但 f ( x ) = x m + 1 f(x)=x^{m+1} f(x)=xm+1时不能准确成立。

例题:梯形公式的代数精度为多少?
解:梯形公式 ∫ a b f ( x ) d x = f ( a ) + f ( b ) 2 ( b − a ) \int_{a}^{b} f(x)dx=\frac{f(a)+f(b)}{2}(b-a) abf(x)dx=2f(a)+f(b)(ba)
f ( x ) = 1 f(x)=1 f(x)=1,左边=b-a=右边
f ( x ) = x f(x)=x f(x)=x,左= b 2 − a 2 2 \frac{b^{2}-a^{2}}{2} 2b2a2=右
f ( x ) = x 2 f(x)=x^{2} f(x)=x2 b 3 − a 3 2 ! = ( a 2 + b 2 ) 2 ( b − a ) \frac{b^3-a^3}{2}!=\frac{(a^2+b^2)}{2}(b-a) 2b3a3!=2(a2+b2)(ba)=右边
故该公式的代数精度为1。

插值型求积公式及Newton-Cotes公式

插值型求积公式

利用Lagrange插值求n次多项式的 L n ( x ) = ∑ k = 0 n f ( x k ) l k ( x ) L_{n}(x)=\sum_{k=0}^{n}f(x_{k})l_{k}(x) Ln(x)=k=0nf(xk)lk(x)
其中 f ( x ) = L n ( x ) + R n ( x ) , R n x = f n + 1 ( ξ ) ( n + 1 ) ! w n + 1 ( x ) f(x)=L_{n}(x)+R_{n}(x),R_n{x}=\frac{f^{n+1}(\xi)}{(n+1)!}w_{n+1}(x) f(x)=Ln(x)+Rn(x),Rnx=(n+1)!fn+1(ξ)wn+1(x)
∫ a b f ( x ) d x = ∫ a b L n ( x ) d x + ∫ a b R n ( x ) d x = ∫ a b ∑ k = 0 n f ( x k ) l k ( x ) d x + ∫ a b R n ( x ) d x = ∑ k = 0 n f ( x k ) ∫ a b l k ( x ) d x + ∫ a b R n ( x ) d x A k \int_{a}^{b} f(x)dx=\int_{a}^{b} L_{n}(x)dx+\int_{a}^{b}R_{n}(x)dx=\int_{a}^{b} \sum_{k=0}^{n}f(x_{k})l_{k}(x)dx+\int_{a}^{b}R_{n}(x)dx=\sum_{k=0}^{n}f(x_{k})\frac{\int_{a}^{b}l_{k}(x)dx+\int_{a}^{b}R_{n}(x)dx}{A_{k}} abf(x)dx=abLn(x)dx+abRn(x)dx=abk=0nf(xk)lk(x)dx+abRn(x)dx=k=0nf(xk)Akablk(x)dx+abRn(x)dx
即用插值多项式代替被积函数。

若定义求积公式 ∫ a b f ( x ) d x ≈ ∑ k = 0 n A k f ( x k ) \int_{a}^{b} f(x)dx\approx\sum_{k=0}^{n}A_{k}f(x_{k}) abf(x)dxk=0nAkf(xk)中的求积公式用插值公式 A k = ∫ a b l k ( x ) d x A_{k}=\int_{a}^{b}l_{k}(x)dx Ak=ablk(x)dx表示,则称该数值积分公式为插值型求积公式

定理:插值型数值积分公式的代数精度至少有n阶精度。
注: ∑ k = 0 n A k = ∑ k = 0 n ∫ a b l k ( x ) d x = ∫ a b ∑ k = 0 n A k d x = ∫ a b 1 d x = b − a \sum_{k=0}^{n}A_{k}=\sum_{k=0}^{n}\int_{a}^{b}l_{k}(x)dx=\int_{a}^{b}\sum_{k=0}^{n}A_{k}dx=\int_{a}^{b}1dx=b-a k=0nAk=k=0nablk(x)dx=abk=0nAkdx=ab1dx=ba

Newton-Cotes公式

该公式主要研究具体节点的取法,若取[a,b]上n+1个等距节点, x 0 , x 1 . . . x n x_{0},x_{1}...x_{n} x0,x1...xn即第k个节点的值为初始值加上k步步长 x k = x 0 + k h x_{k}=x_{0}+kh xk=x0+kh,其中 h = b − a h , x 0 = a h=\frac{b-a}{h},x_{0}=a h=hba,x0=a,利用这些节点作n次Lagrange插值多项式,有如下公式:

∫ a b f ( x ) d x ≈ ∫ a b l k ( x ) f ( x k ) d x \int_{a}^{b}f(x)dx\approx \int_{a}^{b}l_{k}(x)f(x_{k})dx abf(x)dxablk(x)f(xk)dx

A k = ∫ a b ( x − x 0 ) ( x − x 1 ) . . . ( x − x k − 1 ) ( x − x k + 1 ) . . . ( x − x n ) ( x k − x 0 ) ( x k − x 1 ) . . . ( x k − x k k − 1 ) ( x k − x k + 1 ) . . . ( x k − x n ) d x A_{k}=\int_{a}^{b}\frac{(x-x_{0})(x-x_{1})...(x-x_{k-1})(x-x_{k+1})...(x-x_{n})}{(x_{k}-x_{0})(x_{k}-x_{1})...(x_{k}-x_{kk-1})(x_{k}-x_{k+1})...(x_{k}-x_{n})}dx Ak=ab(xkx0)(xkx1)...(xkxkk1)(xkxk+1)...(xkxn)(xx0)(xx1)...(xxk1)(xxk+1)...(xxn)dx

x = a + t h , x k = a + k h x=a+th,x_{k}=a+kh x=a+th,xk=a+kh,原式= ∫ a b ( b − a ) ( − 1 ) n − k n k ! ( n − k ) ! ∫ 0 n t ( t − 1 ) . . . ( t − k + 1 ) ( t − k − 1 ) . . . ( t − n ) d t \int_{a}^{b}\frac{(b-a)(-1)^n-k}{nk!(n-k)!}\int_{0}^{n}t(t-1)...(t-k+1)(t-k-1)...(t-n)dt abnk!(nk)!(ba)(1)nk0nt(t1)...(tk+1)(tk1)...(tn)dt

C k n = ( b − a ) ( − 1 ) n − k n k ! ( n − k ) ! ∫ 0 n t ( t − 1 ) . . . ( t − k + 1 ) ( t − k − 1 ) . . . ( t − n ) d t C_{k}^{n}=\frac{(b-a)(-1)^n-k}{nk!(n-k)!}\int_{0}^{n}t(t-1)...(t-k+1)(t-k-1)...(t-n)dt Ckn=nk!(nk)!(ba)(1)nk0nt(t1)...(tk+1)(tk1)...(tn)dt则为Cotes系数, A k = ( b − a ) C k n A_{k}=(b-a)C_{k}^{n} Ak=(ba)Ckn

最终Newton-Cotes公式为 ∫ a b f ( x ) d x ≈ ( b − a ) ∑ k = 0 n C k n f ( x k ) \int_{a}^{b} f(x)dx\approx (b-a)\sum_{k=0}^{n}C_{k}^{n}f(x_{k}) abf(x)dx(ba)k=0nCknf(xk),即节点均匀分割的求和公式。

例如当n=1,
C o 1 = ( − 1 ) 1 1 ! 0 ! 1 ! , ∫ 0 1 ( t − 1 ) d t = 1 2 C_{o}^{1}=\frac{(-1)^1}{1!0!1!},\int_{0}^{1}(t-1)dt=\frac{1}{2} Co1=1!0!1!(1)1,01(t1)dt=21
C 1 1 = ( − 1 ) 1 1 ! 1 ! 0 ! , ∫ 0 1 t d t = − 1 2 C_{1}^{1}=\frac{(-1)^1}{1!1!0!},\int_{0}^{1}tdt=-\frac{1}{2} C11=1!1!0!(1)1,01tdt=21
∫ a b f ( x ) d x ≈ b − a 2 [ f ( a ) + f ( b ) ] \int_{a}^{b}f(x)dx\approx \frac{b-a}{2}[f(a)+f(b)] abf(x)dx2ba[f(a)+f(b)]
即在[a,b]区间整体运算,此时计算方法为梯形公式,代数精度为1.

当n=2时,
分别计算 C 0 2 , C 1 2 , C 2 2 C_{0}^{2},C_{1}^{2},C_{2}^{2} C02,C12,C22
∫ a b f ( x ) d x ≈ b − a 6 [ f ( a ) + 4 f ( a + b 2 ) + f ( b ) ] \int_{a}^{b}f(x)dx\approx \frac{b-a}{6}[f(a)+4f(\frac{a+b}{2})+f(b)] abf(x)dx6ba[f(a)+4f(2a+b)+f(b)]
该公式为Sinpson公式,至少精度为2

n=4时为Cotes公式,具有至少5次代数精度。

定理:n为偶数时,其代数精度至少为n+1次,n表示区间个数,而非节点个数,如5个节点将区间分为四个区间,精度为5。

例题 f ( x ) = x 2 时,用梯形公式和 S i m p s o n 计算 ∫ 0 2 x 2 d x f(x)=x^2时,用梯形公式和Simpson计算\int_{0}^{2}x^2dx f(x)=x2时,用梯形公式和Simpson计算02x2dx
解:
梯形公式 ∫ 0 2 x 2 d x ≈ 2 − 0 2 ( 0 + 4 ) = 4 \int_{0}^{2}x^2dx\approx \frac{2-0}{2}(0+4)=4 02x2dx220(0+4)=4
Simpson ∫ 0 2 x 2 d x ≈ 2 − 0 6 ( 0 + 4 + 4 ) = 8 3 \int_{0}^{2}x^2dx\approx \frac{2-0}{6}(0+4+4)=\frac{8}{3} 02x2dx620(0+4+4)=38
可以看到梯形公式的误差还是比较大的,而Simpson甚至得到了精确答案。

性质:
1,对称性。 C k n = C n − k n C_{k}^{n}=C_{n-k}^n Ckn=Cnkn
2, ∑ k = 0 n C k n = 1 \sum_{k=0}^{n}C_{k}^{n}=1 k=0nCkn=1

Newton-Cotes余项:
梯形公式下 R ( f ) = ∫ a b f ′ ′ ( ξ ) 2 ( x − a ) ( x − b ) d x R(f)=\int_{a}^{b}\frac{f''(\xi)}{2}(x-a)(x-b)dx R(f)=ab2f′′(ξ)(xa)(xb)dx,存在 η ∈ [ 0 , 1 ] ,使 R ( f ) = 1 2 f ′ ′ ( η ) ∫ a b ( x − a ) ( x − b ) d x = − f ′ ′ ( η ) 12 ( b − a ) 3 \eta \in [0,1],使R(f)=\frac{1}{2}f''(\eta)\int_{a}^{b}(x-a)(x-b)dx=-\frac{f''(\eta)}{12}(b-a)^3 η[0,1],使R(f)=21f′′(η)ab(xa)(xb)dx=12f′′(η)(ba)3

同理:
Simpson余项 R ( f ) = − 1 90 ( b − a 2 ) 5 f 4 ( η ) R(f)=-\frac{1}{90}(\frac{b-a}{2})^5f^4(\eta) R(f)=901(2ba)5f4(η)
Cotes余项 R ( f ) = 2 ( b − a ) 945 ( b − a 4 ) 6 f 6 ( η ) R(f)=\frac{2(b-a)}{945}(\frac{b-a}{4})^6f^6(\eta) R(f)=9452(ba)(4ba)6f6(η)

复化求积公式

为了克服容格现象,用分段函数代替原函数,用于求积分时同样应用分治思想,划分区间应用梯形或Simpson公式,使用分段线性插值代替原函数,数学公式表示为 ∫ a b f ( x ) d x = ∑ k = 0 n − 1 ∫ x k x k + 1 f ( x ) d x ≈ ∑ k = 0 n − 1 I k \int_{a}^{b}f(x)dx= \sum_{k=0}^{n-1}\int_{x_k}^{x_{k+1}}f(x)dx\approx \sum_{k=0}^{n-1}I_k abf(x)dx=k=0n1xkxk+1f(x)dxk=0n1Ik,其中 I k = ∫ x k x k + 1 f ( x ) d x ≈ h 2 [ f ( x k ) + f ( x k + 1 ) ] I_k=\int_{x_k}^{x_{k+1}}f(x)dx\approx \frac{h}{2}[f(x_k)+f(x_{k+1})] Ik=xkxk+1f(x)dx2h[f(xk)+f(xk+1)] 或用Simpson

复化的梯形公式

分割区间使用 I = ∫ x k x k + 1 f ( x ) d x ≈ h 2 [ f ( x k ) + f ( x k + 1 ) ] I_=\int_{x_k}^{x_{k+1}}f(x)dx\approx \frac{h}{2}[f(x_k)+f(x_{k+1})] I=xkxk+1f(x)dx2h[f(xk)+f(xk+1)] I k = ∑ k = 0 n − 1 ∫ x k x k + 1 f ( x ) d x ≈ 2 h 2 [ f ( a ) + f ( b ) ] + 2 ∑ k = 1 n − 1 f ( x k ) I_k= \sum_{k=0}^{n-1}\int_{x_k}^{x_{k+1}}f(x)dx \approx 2\frac{h}{2}[f(a)+f(b)]+2\sum_{k=1}^{n-1}f(x_k) Ik=k=0n1xkxk+1f(x)dx22h[f(a)+f(b)]+2k=1n1f(xk)
多个区间分别计算梯形公式后求和

Romberg公式

复化梯形公式方程 T n = h 2 [ f ( a ) + f ( h ) + 2 ∑ k = 0 n − 1 f ( x k + 1 2 ) ] T_n=\frac{h}{2}[f(a)+f(h)+2\sum_{k=0}^{n-1}f(x_{k+\frac{1}{2}})] Tn=2h[f(a)+f(h)+2k=0n1f(xk+21)],将 T n = T 1 ( h ) T_n=T_1(h) Tn=T1(h),由E-M欧拉麦克劳林公式, T 1 ( h ) − I = α 1 h 2 + α 2 h 4 + . . . + α k h 2 k + . . . T_1(h)-I=\alpha_1h^2+\alpha_2h^4+...+\alpha_kh^2k+... T1(h)I=α1h2+α2h4+...+αkh2k+...

后面不写了,反正使用外推法构造出高精度积分公式 T m + 1 ( h ) = 4 m 4 m − 1 T m ( h 2 ) − 1 4 m − 1 T_{m+1}(h)=\frac{4^m}{4^{m}-1}T_m(\frac{h}{2})-\frac{1}{4^{m}-1} Tm+1(h)=4m14mTm(2h)4m11

计算过程如下图:
Romberg计算过程
例题:利用复化求积公式将[0,1]8等分,计算 I = ∫ 0 1 4 + x 1 + x 2 I=\int_{0}^{1}\frac{4+x}{1+x^2} I=011+x24+x
解:
复化梯形公式, I ≈ 1 2 × 8 [ f ( 0 ) + f ( 1 ) + 2 ∑ 1 7 f ( x k ) ] ≈ 3 , 138988 I\approx\frac{1}{2×8}[f(0)+f(1)+2\sum_{1}^7f(x_k)]\approx 3,138988 I2×81[f(0)+f(1)+217f(xk)]3,138988
复化Simpson, I ≈ 1 6 × 4 [ ] f ( 0 ) + f ( 1 ) + 4 ∑ 0 3 f ( x k + 1 2 ) + 2 ∑ 1 3 f ( x k ) ] ≈ 3.141593 I\approx\frac{1}{6×4}[]f(0)+f(1)+4\sum_{0}^3f(x_{k+\frac{1}{2}})+2\sum_{1}^3f(x_k)]\approx3.141593 I6×41[]f(0)+f(1)+403f(xk+21)+213f(xk)]3.141593

步长越多结果越精确,但应用中具体步长我们难以直接确定,下面将介绍一种能够使步长动态迭代的方法。

变步长的梯形公式

基本思想为:原步长h折半,再利用复化求积公式,不断折半,用前后两次结果做差,如果精度满足要求则停止折半,故该方法又称折半求积公式。

例如: ∫ a b f ( x ) d x \int_a^bf(x)dx abf(x)dx将[a,b]等分, h = b − a n , x k = a + k h h=\frac{b-a}{n},x_k=a+kh h=nba,xk=a+kh
复化梯形公式 T 2 n = h 4 ∑ k = 0 n − 1 [ f ( x k ) + 2 f ( x k + 1 2 ) + f ( x k + 1 ) ] = T n 2 + h 2 ∑ k = 0 n − 1 f ( x k + 1 2 ) T_{2n}=\frac{h}{4}\sum_{k=0}^{n-1}[f(x_k)+2f(x_{k+\frac{1}{2}})+f(x_{k+1})]=\frac{T_n}{2}+\frac{h}{2}\sum_{k=0}^{n-1}f(x_{k+\frac{1}{2}}) T2n=4hk=0n1[f(xk)+2f(xk+21)+f(xk+1)]=2Tn+2hk=0n1f(xk+21)
将已复化的梯形公式再折半步长应用复化公式,该公式实际上只需计算 x k + 1 2 x_{k+\frac{1}{2}} xk+21即新分节点的函数值。

应用中往往使用 ∣ t 2 k − T 2 k − 1 ∣ < ε |t_{2k}-T_{2k-1}|<\varepsilon t2kT2k1<ε,前后两次变化之差来控制步长。

例题:用变步长的梯形公式计算 I = ∫ 0 1 s i n x x d x I=\int^1_0\frac{sinx}{x}dx I=01xsinxdx
解:令 f ( x ) = s i n x x f(x)=\frac{sinx}{x} f(x)=xsinx,并补充定义 f ( 0 ) = 1 f(0)=1 f(0)=1使之连续, T 1 = 1 2 [ f ( 0 ) + f ( 1 ) ] ≈ 0.9207355 T_1=\frac{1}{2}[f(0)+f(1)]\approx0.9207355 T1=21[f(0)+f(1)]0.9207355
T 2 = 1 2 T 1 + 1 2 f ( 1 2 ) ≈ 0.9397933 T_2=\frac{1}{2}T_1+\frac{1}{2}f(\frac{1}{2})\approx0.9397933 T2=21T1+21f(21)0.9397933

使用该方法的计算量大,收敛慢,为了改进该问题,引入变步长的Romberg公式。

变步长的Romberg公式

其实就是Romberg的折半法,可视化展示如下:
变步长Romberg
公式计算方式如下:

  1. T 1 = b − a 2 [ f ( a ) + f ( b ) ] T_1=\frac{b-a}{2}[f(a)+f(b)] T1=2ba[f(a)+f(b)]
  2. T 2 = T 1 2 + b − a 2 f ( a + b 2 ) T_2=\frac{T_1}{2}+\frac{b-a}{2}f(\frac{a+b}{2}) T2=2T1+2baf(2a+b)
  3. S 1 = 4 3 T 2 − 1 3 T 1 S_1=\frac{4}{3}T_2-\frac{1}{3}T_1 S1=34T231T1
  4. T 4 = T 2 2 + b − a 4 [ f ( 3 a + b 4 ) + f ( 3 b + a 4 ) ] T_4=\frac{T_2}{2}+\frac{b-a}{4}[f(\frac{3a+b}{4})+f(\frac{3b+a}{4})] T4=2T2+4ba[f(43a+b)+f(43b+a)]
  5. S 2 = 4 3 T 4 − 1 3 T 2 S_2=\frac{4}{3}T_4-\frac{1}{3}T_2 S2=34T431T2
  6. C 1 = 16 15 S 2 − 1 15 S 1 C_1=\frac{16}{15}S_2-\frac{1}{15}S_1 C1=1516S2151S1
  7. T 8 = 1 2 T 4 + b − a 8 [ f ( 7 a + b 8 ) + f ( 5 a + 3 b 8 ) + f ( 5 b + 3 a 8 ) + f ( 3 b + a 2 ) ] T_8=\frac{1}{2}T_4+\frac{b-a}{8}[f(\frac{7a+b}{8})+f(\frac{5a+3b}{8})+f(\frac{5b+3a}{8})+f(\frac{3b+a}{2})] T8=21T4+8ba[f(87a+b)+f(85a+3b)+f(85b+3a)+f(23b+a)]
  8. S 4 = 4 3 T 8 − 1 3 T 4 S_4=\frac{4}{3}T_8-\frac{1}{3}T4 S4=34T831T4
  9. C 2 = 16 15 S 4 − 1 15 S 2 C_2=\frac{16}{15}S_4-\frac{1}{15}S_2 C2=1516S4151S2
  10. R 1 = 64 63 C 2 − 1 63 C 1 R_1=\frac{64}{63}C_2-\frac{1}{63}C_1 R1=6364C2631C1

使用折半+外推法计算Romberg,T使用折半法迭代, S = 4 3 T k + 1 − 1 3 T k S=\frac{4}{3}T_{k+1}-\frac{1}{3}T_k S=34Tk+131Tk C = 16 15 S k + 1 − 1 15 S k C=\frac{16}{15}S_{k+1}-\frac{1}{15}S_k C=1516Sk+1151Sk R = 64 63 C k + 1 − 1 63 C k R=\frac{64}{63}C_{k+1}-\frac{1}{63}C_{k} R=6364Ck+1631Ck

例题:使用Romberg公式计算 ∫ 2 8 1 2 x d x \int_2^8\frac{1}{2x}dx 282x1dx,每步计算保留4位小数。
解:
T 1 = 8 − 2 2 [ f ( 8 ) + f ( 2 ) ] ≈ 0.9375 T_1=\frac{8-2}{2}[f(8)+f(2)]\approx0.9375 T1=282[f(8)+f(2)]0.9375
T 2 = T 1 2 + 8 − 2 2 f ( 5 ) ≈ 0.76875 T_2=\frac{T_1}{2}+\frac{8-2}{2}f(5)\approx0.76875 T2=2T1+282f(5)0.76875
S 1 = 4 3 T 2 − 1 3 T 1 = 0.7125 S_1=\frac{4}{3}T_2-\frac{1}{3}T_1=0.7125 S1=34T231T1=0.7125
T 4 = 1 2 T 2 + 8 − 2 4 [ f ( 3.5 ) + f ( 6.5 ) ] = 0.7140 T_4=\frac{1}{2}T_2+\frac{8-2}{4}[f(3.5)+f(6.5)]=0.7140 T4=21T2+482[f(3.5)+f(6.5)]=0.7140
S 2 = 4 3 T 4 + 1 3 T 2 = 0.6958 S_2=\frac{4}{3}T_4+\frac{1}{3}T_2=0.6958 S2=34T4+31T2=0.6958
C 1 = 16 15 S 2 − 1 15 S 1 = 0.6947 C_1=\frac{16}{15}S_2-\frac{1}{15}S_1=0.6947 C1=1516S2151S1=0.6947
T 8 = 1 2 T 4 + 8 − 2 8 [ f ( 2.75 ) + f ( 4.25 ) + f ( 5.75 ) + f ( 7.25 ) ] = 0.6986 T_8=\frac{1}{2}T_4+\frac{8-2}{8}[f(2.75)+f(4.25)+f(5.75)+f(7.25)]=0.6986 T8=21T4+882[f(2.75)+f(4.25)+f(5.75)+f(7.25)]=0.6986
S 4 = 4 3 T 8 − 1 3 T 4 = 0.6934 S_4=\frac{4}{3}T_8-\frac{1}{3}T_4=0.6934 S4=34T831T4=0.6934
C 2 = 16 15 S 4 − 1 15 S 2 = 0.6932 C_2=\frac{16}{15}S_4-\frac{1}{15}S_2=0.6932 C2=1516S4151S2=0.6932
R 1 = 64 63 C 2 − 1 63 C 1 = 0.6932 R_1=\frac{64}{63}C_2-\frac{1}{63}C_1=0.6932 R1=6364C2631C1=0.6932

其他参考资料在此

总结

本章学习了如何利用迭代公式计算积分的近似值:

首先是使用数值积分矩形或梯形来代替原有积分曲线的方法,并用自变量 x x x的次数作为代数精度衡量近似的程度。

然后是利用插值多项式求和代替原积分曲线积分,其中点的取法用Newton-Cotes均匀选取。

最后为了计算迭代终点,采用变步长求积动态折半计算,不断逼近真实值,有基本的复化梯形公式和加快迭代收敛速度的Romberg公式,Romberg计算方法最复杂,需要迭代四次计算,但收敛速度快,计算量也没那么大,可以说是计算数值积分最先进的方法。

相关文章:

数值分析—数值积分

研究背景 积分的数学解法为牛顿莱布尼兹公式&#xff0c;数学表示为 ∫ a b f ( x ) d x F ( b ) − F ( a ) \int_{a}^{b} f(x)dxF(b)-F(a) ∫ab​f(x)dxF(b)−F(a)&#xff0c;但应用该方法有如下困难&#xff1a; 1&#xff0c; f ( x ) f(x) f(x)的原函数有时不能用初等函…...

克服大规模语言模型限制,构建新的应用方法——LangChain

大模型 大模型的出现和落地开启了人工智能(AI)新一轮的信息技术革命&#xff0c;改变了人们的生 活方式、工作方式和思维方式。大模型的落地需要数据、算力和算法三大要素。经过几 年发展&#xff0c;大模型的数据集(包括多模态数据集)制作已经形成了规约&#xff0c;Meta、Go…...

计算机网络 —— HTTPS 协议

前一篇文章&#xff1a;计算机网络 —— HTTP 协议&#xff08;详解&#xff09;-CSDN博客 目录 前言 一、HTTPS 协议简介 二、HTTPS 工作过程 1.对称加密 2.非对称加密 3.中间人攻击 4.引入证书 三、HTTPS 常见问题 1.中间人能否篡改证书&#xff1f; 2.中间人能否调…...

React第十七章(useRef)

useRef 当你在React中需要处理DOM元素或需要在组件渲染之间保持持久性数据时&#xff0c;便可以使用useRef。 import { useRef } from react; const refValue useRef(initialValue) refValue.current // 访问ref的值 类似于vue的ref,Vue的ref是.value&#xff0c;其次就是vu…...

React第十五节useReducer使用详解差异

useReducer() 的用法注意事项 1、 概述&#xff1a; useReducer() 常用于管理复杂的状态更新逻辑&#xff0c;特别是在状态更新依赖于多个条件或动作时&#xff0c;useReducer 提供了一种更加结构化和可维护的方式来处理状态。可以将更新函数写在组件外面 它与 useState() 相…...

NanoLog起步笔记-5-客户端简要描述

nonolog起步笔记-5-客户端简要描述 客户端的简要的设计图路notify模式服务端最好分两个核 NanoLog::setLogLevel(NOTICE);从 NANO_LOG 开始NANO_LOGcompiling time的语句getNumNibblesNeeded&#xff1a;得到prompt中&#xff0c;number的数量countFmtParams&#xff1a;得到所…...

Flink:入门介绍

目录 一、Flink简介 2.1 Flink 架构 2.2 Flink 应用程序 运行模式 二、Flink 集群 部署 2.1 本地集群模式 2.1.1 安装JDK​编辑 2.1.2 下载、解压 Flink 2.1.3 启动集群 2.1.4 停止集群 2.2 Standalone 模式 2.2.0 集群规划 2.2.1 安装JDK 2.2.2 设置免密登录 2…...

目标跟踪领域经典论文解析

亲爱的小伙伴们&#x1f618;&#xff0c;在求知的漫漫旅途中&#xff0c;若你对深度学习的奥秘、JAVA 、PYTHON与SAP 的奇妙世界&#xff0c;亦或是读研论文的撰写攻略有所探寻&#x1f9d0;&#xff0c;那不妨给我一个小小的关注吧&#x1f970;。我会精心筹备&#xff0c;在…...

网络编程 | TCP套接字通信及编程实现经验教程

1、TCP基础铺垫 TCP/IP协议簇中包含了如TCP、UDP、IP、ICMP、ARP、HTTP等通信协议。TCP协议是TCP/IP协议簇中最为常见且重要的通信方式之一&#xff0c;它为互联网上的数据传输提供了可靠性和连接管理。 TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议…...

SAP导出表结构并保存到Excel 源码程序

SAP导出表结构并保存到Excel,方便写代码时复制粘贴 经常做接口,需要copy表结构,找到了这样一个程程,特别有用。 01. 先看结果...

Linux下redis环境的搭建

1.redis的下载 redis官网下载redis的linux压缩包&#xff0c;官网地址:Redis下载 网盘链接&#xff1a; 通过网盘分享的文件&#xff1a;redis-5.0.4.tar.gz 链接: https://pan.baidu.com/s/1cz3ifYrDcHWZXmT1fNzBrQ?pwdehgj 提取码: ehgj 2.redis安装与配置 将包上传到 /…...

REDMI瞄准游戏赛道,推出小屏平板

近日&#xff0c;REDMI推出了一款8.8英寸的小屏平板&#xff0c;引发市场关注。该平板采用LCD屏幕&#xff0c;搭载天玑9400处理器&#xff0c;定位游戏市场&#xff0c;意在开拓小屏平板的新领域‌。 ‌小屏平板新尝试‌ 这款REDMI平板未追随大屏潮流&#xff0c;而是选择了8…...

springai结合ollama

目录 ollama 介绍 使用 下载&#xff1a; 安装&#xff1a; 点击这个玩意next就行了。 运行 spring ai使用ollama调用本地部署的大模型 加依赖 配置yml 写代码 ollama 介绍 官网&#xff1a;Ollama Ollama是一个用于部署和运行各种开源大模型的工具&#xff1b; …...

React第十三节开发中常见问题之(视图更新、事件处理)

一、视图更新有哪些方案&#xff1f; useState用法介绍 1、对于数据变量 正常的增删改查&#xff0c;只会让数据更新&#xff0c;但是不会触发 React 视图的更新&#xff1b; 如&#xff1a; <script lang"jsx">const baseTable [{name:Andy, age: 18, id…...

【Appium报错】安装uiautomator2失败

目录 1、通过nmp安装uiautomator2&#xff1a;失败 2、通过 Appium 的平台直接安装驱动程序 3、通过pip 来安装 uiautomator2 1、通过nmp安装uiautomator2&#xff1a;失败 我先是通过npm安装的uiautomator2&#xff0c;也显示已经安装成功了&#xff1a; npm install -g …...

DataSophon集成CMAK KafkaManager

本次集成基于DDP1.2.1 集成CMAK-3.0.0.6 设计的json和tar包我放网盘了. 通过网盘分享的文件&#xff1a;DDP集成CMAK 链接: https://pan.baidu.com/s/1BR70Ajj9FxvjBlsOX4Ivhw?pwdcpmc 提取码: cpmc CMAK github上提供了zip压缩包.将压缩包解压之后 在根目录下加入启动脚本…...

Ubuntu22.04深度学习环境安装【显卡驱动安装】

前言 使用Windows配置环境失败&#xff0c;其中有一个包只有Linux版本&#xff0c;Windows版本的只有python3.10的&#xff0c;所以直接选用Linux来配置环境&#xff0c;显卡安装比较麻烦&#xff0c;单独出一期。 显卡驱动安装 方法一&#xff1a;在线安装&#xff08;操作…...

21届秋/校招面经

开篇先说一下我自身情况&#xff0c;东南大学本科计算机科学与技术专业毕业&#xff0c;gpa3.2/4.8。零零散散搞过一年多ACM&#xff0c;去年&#xff08;2019&#xff09;在icpc上海站拿了铜之后增加了信心&#xff08;因为当时训练总时间半年不到&#xff09;&#xff0c;于是…...

相机动态/在线标定

图1 图2 基本原理 【原理1】平行线在射影变换后会交于一点。如图所示,A为相机光心,蓝色矩形框为归一化平面,O为平面中心。地面四条黄色直线为平行且等距的车道线。HI交其中两条车道线于H、I, 过G作HI的平行线GM交车道线于M。HI、GM在归一化平面上的投影分别为JK、PN,二者会…...

MySQL 8.0 新特性汇总

文章目录 前言1. 运维管理 1.1 可持久化变量1.2 管理员端口1.3 资源组1.4 数据库粒度只读1.5 show processlist 实现方式1.6 加速索引创建速度1.7 控制连接的内存使用量1.8 克隆插件1.9 mysqldump 新增参数1.10 慢日志增强1.11 快速加列1.12 InnoDB 隐藏主键1.13 Redo 配置1.14…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波&#xff1a;可以用来解决所提出的地质任务的波&#xff1b;干扰波&#xff1a;所有妨碍辨认、追踪有效波的其他波。 地震勘探中&#xff0c;有效波和干扰波是相对的。例如&#xff0c;在反射波…...

srs linux

下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935&#xff0c;SRS管理页面端口是8080&#xff0c;可…...

如何将联系人从 iPhone 转移到 Android

从 iPhone 换到 Android 手机时&#xff0c;你可能需要保留重要的数据&#xff0c;例如通讯录。好在&#xff0c;将通讯录从 iPhone 转移到 Android 手机非常简单&#xff0c;你可以从本文中学习 6 种可靠的方法&#xff0c;确保随时保持连接&#xff0c;不错过任何信息。 第 1…...

Matlab | matlab常用命令总结

常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

SpringTask-03.入门案例

一.入门案例 启动类&#xff1a; package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec&#xff1f; IPsec VPN 5.1 IPsec传输模式&#xff08;Transport Mode&#xff09; 5.2 IPsec隧道模式&#xff08;Tunne…...

在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?

uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件&#xff0c;用于在原生应用中加载 HTML 页面&#xff1a; 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...

C++ 设计模式 《小明的奶茶加料风波》

&#x1f468;‍&#x1f393; 模式名称&#xff1a;装饰器模式&#xff08;Decorator Pattern&#xff09; &#x1f466; 小明最近上线了校园奶茶配送功能&#xff0c;业务火爆&#xff0c;大家都在加料&#xff1a; 有的同学要加波霸 &#x1f7e4;&#xff0c;有的要加椰果…...

解析奥地利 XARION激光超声检测系统:无膜光学麦克风 + 无耦合剂的技术协同优势及多元应用

在工业制造领域&#xff0c;无损检测&#xff08;NDT)的精度与效率直接影响产品质量与生产安全。奥地利 XARION开发的激光超声精密检测系统&#xff0c;以非接触式光学麦克风技术为核心&#xff0c;打破传统检测瓶颈&#xff0c;为半导体、航空航天、汽车制造等行业提供了高灵敏…...