昆仑山:眼中无形心中有穴之穴人合一

夫君子之行,静以修身,俭以养德;非澹泊无以明志,非宁静无以致远。夫学须静也,才须学也;非学无以广才,非志无以成学。怠慢则不能励精,险躁则不能冶性。年与时驰,意与岁去,遂成枯落,多不接世。悲守穷庐,将复何及!

 

4.7二重积分数值计算方法

二重积分数值计算方法 详细讲解与推导

各位同学,今天我们系统讲解矩形区域与一般区域上二重积分的数值计算方法,核心思想是化重积分为累次积分,对单变量积分依次套用成熟的数值求积公式,这是所有二重积分数值解法的核心逻辑。我们会从原理出发,完成完整的公式推导、案例解析,最后做系统性的归纳总结。


一、二重积分数值计算的理论基础

对于平面矩形区域上的二重积分:

\[\iint_R f(x,y)dA, \quad R = \{(x,y) \mid a \leq x \leq b,\ c \leq y \leq d\} \]

根据富比尼定理,二重积分可等价转化为累次积分:

\[\iint_R f(x,y)dxdy = \int_a^b \left( \int_c^d f(x,y) dy \right) dx \tag{1} \]

这个公式是我们所有数值方法的起点:二重积分的数值计算,本质就是先对内层的\(y\)积分做数值近似,得到关于\(x\)的函数,再对外层的\(x\)积分做数值近似,最终得到二重积分的近似值。

下面我们分别讲解工程中最常用的两种方法:复合辛普森求积法高斯求积法


二、复合辛普森公式计算二重积分 完整推导

2.1 前置知识:单变量复合辛普森公式推导

辛普森公式是二阶牛顿-柯特斯求积公式,核心是用二次插值多项式逼近被积函数,再对插值多项式积分,基本型的代数精度为3次(对次数≤3的多项式精确成立)。

(1)基本辛普森公式

对区间\([a,b]\),取节点\(x_0=a,\ x_1=\frac{a+b}{2},\ x_2=b\),步长\(h=\frac{b-a}{2}\),二次插值多项式\(L_2(x)\)满足\(L_2(x_i)=f(x_i)\),则:

\[\int_a^b f(x)dx \approx \int_a^b L_2(x)dx = \frac{h}{3}\left[ f(x_0) + 4f(x_1) + f(x_2) \right] \]

也可写成:

\[\int_a^b f(x)dx \approx \frac{b-a}{6}\left[ f(a) + 4f\left(\frac{a+b}{2}\right) + f(b) \right] \tag{2} \]

(2)复合辛普森公式

为提高精度,将积分区间\([c,d]\)等分为\(M\)个小区间,每个小区间长度\(k=\frac{d-c}{M}\),分点为\(y_i = c+ik\ (i=0,1,...,M)\),每个小区间的中点为\(y_{i+1/2}=c+(i+\frac{1}{2})k\)

对每个小区间\([y_i, y_{i+1}]\)应用基本辛普森公式:

\[\int_{y_i}^{y_{i+1}} f(y)dy \approx \frac{k}{6}\left[ f(y_i) + 4f(y_{i+1/2}) + f(y_{i+1}) \right] \]

\(M\)个小区间的积分求和,展开后合并同类项:

\[\begin{align*} \int_c^d f(y)dy &= \sum_{i=0}^{M-1} \int_{y_i}^{y_{i+1}} f(y)dy \\ &\approx \frac{k}{6}\left[ \sum_{i=0}^{M-1}f(y_i) + 4\sum_{i=0}^{M-1}f(y_{i+1/2}) + \sum_{i=0}^{M-1}f(y_{i+1}) \right] \\ &= \frac{k}{6}\left[ f(y_0) + 4\sum_{i=0}^{M-1}f(y_{i+1/2}) + 2\sum_{i=1}^{M-1}f(y_i) + f(y_M) \right] \end{align*} \tag{3} \]

这就是单变量复合辛普森公式,收敛阶为\(O(k^4)\),步长\(k\)减半时,误差约降低为原来的\(1/16\)

2.2 二重积分的复合辛普森公式推导

我们将单变量复合辛普森公式嵌套应用到二重积分的累次积分中。

第一步:对内层\(y\)的积分应用复合辛普森公式
对固定的\(x\),将\(\int_c^d f(x,y)dy\)用公式(3)展开,其中\(y_i=c+ik,\ k=\frac{d-c}{M}\),得:

\[\int_c^d f(x,y)dy \approx \frac{k}{6}\left[ f(x,y_0) + 4\sum_{i=0}^{M-1}f(x,y_{i+1/2}) + 2\sum_{i=1}^{M-1}f(x,y_i) + f(x,y_M) \right] \]

第二步:代入外层\(x\)的积分,交换积分与求和顺序

\[\begin{align*} \int_a^b\int_c^d f(x,y)dydx &\approx \int_a^b \frac{k}{6}\left[ f(x,y_0) + 4\sum_{i=0}^{M-1}f(x,y_{i+1/2}) + 2\sum_{i=1}^{M-1}f(x,y_i) + f(x,y_M) \right] dx \\ &= \frac{k}{6}\left[ \int_a^b f(x,y_0)dx + 4\sum_{i=0}^{M-1}\int_a^b f(x,y_{i+1/2})dx + 2\sum_{i=1}^{M-1}\int_a^b f(x,y_i)dx + \int_a^b f(x,y_M)dx \right] \end{align*} \]

第三步:对每个关于\(x\)的积分再次应用复合辛普森公式
\(x\)的区间\([a,b]\)等分为\(N\)份,步长\(h=\frac{b-a}{N}\),分点\(x_j=a+jh\),中点\(x_{j+1/2}=a+(j+\frac{1}{2})h\),对任意固定的\(y\),有:

\[\int_a^b f(x,y)dx \approx \frac{h}{6}\left[ f(x_0,y) + 4\sum_{j=0}^{N-1}f(x_{j+1/2},y) + 2\sum_{j=1}^{N-1}f(x_j,y) + f(x_N,y) \right] \]

将其代入上式,最终得到二重积分的复合辛普森公式

\[\begin{align*} \iint_R f(x,y)dxdy \approx \frac{hk}{36}\bigg[ &f(x_0,y_0)+f(x_0,y_M)+f(x_N,y_0)+f(x_N,y_M) \\ +&4\sum_{i=0}^{N-1}\sum_{j=0}^{M-1}f(x_{j+1/2},y_{i+1/2}) + 2\sum_{i=1}^{N-1}\sum_{j=0}^{M-1}f(x_j,y_{i+1/2}) \\ +&2\sum_{i=0}^{N-1}\sum_{j=1}^{M-1}f(x_{j+1/2},y_i) + 4\sum_{j=1}^{N-1}f(x_j,y_0)+4\sum_{j=1}^{N-1}f(x_j,y_M) \\ +&4\sum_{i=1}^{M-1}f(x_0,y_i)+4\sum_{i=1}^{M-1}f(x_N,y_i) + 4\sum_{j=1}^{N-1}\sum_{i=1}^{M-1}f(x_j,y_i) \bigg] \end{align*} \tag{4} \]

2.3 案例解析(例4.14)

求积分\(I=\int_{1.4}^{2.0}\int_{1.0}^{1.5}\ln(x+2y)dydx\),取\(N=2,\ M=1\)

  1. 区间与步长:\(x\in[1.4,2.0]\)\(h=(2.0-1.4)/2=0.3\)\(y\in[1.0,1.5]\)\(k=(1.5-1.0)/1=0.5\)
  2. 内层\(y\)积分展开(\(M=1\),仅1个小区间):

\[\int_{1.0}^{1.5}\ln(x+2y)dy \approx \frac{0.5}{6}\left[ \ln(x+2.0) + 4\ln(x+2.5) + \ln(x+3.0) \right] \]

  1. 外层\(x\)积分对每个项应用复合辛普森公式(\(N=2\)),最终计算得近似值\(0.42955244\),与真值\(0.4295545275\)对比,达到6位有效数字,共计算15个函数值。

三、高斯求积公式计算二重积分 完整推导

高斯求积的核心优势是:通过选择非等距的高斯点作为求积节点,让n个节点的求积公式达到2n-1次代数精度,远高于等距节点的牛顿-柯特斯公式,实现“少节点、高精度”。

3.1 前置知识:高斯-勒让德求积与区间变换

(1)标准区间\([-1,1]\)上的高斯-勒让德公式

对积分\(\int_{-1}^1 f(t)dt\),n个节点的高斯-勒让德公式为:

\[\int_{-1}^1 f(t)dt \approx \sum_{i=0}^{n-1} A_i f(t_i) \tag{5} \]

其中\(t_i\)是n次勒让德多项式\(P_n(t)\)的零点(高斯点),\(A_i\)为对应的求积系数,公式代数精度为\(2n-1\)次。

工程中最常用的3节点(n=3)高斯公式:

  • 高斯点:\(t_0=-\sqrt{3/5}\approx-0.774596662,\ t_1=0,\ t_2=\sqrt{3/5}\approx0.774596662\)
  • 求积系数:\(A_0=A_2=5/9,\ A_1=8/9\)
  • 代数精度:5次

(2)任意区间到标准区间的线性变换

对任意区间\([a,b]\),做线性变换将其映射到\([-1,1]\)

\[t = \frac{2x-(a+b)}{b-a} \iff x = \frac{b-a}{2}t + \frac{a+b}{2} \]

此时\(dx = \frac{b-a}{2}dt\),积分变换为:

\[\int_a^b f(x)dx = \frac{b-a}{2}\int_{-1}^1 f\left( \frac{b-a}{2}t + \frac{a+b}{2} \right) dt \tag{6} \]

3.2 二重积分的高斯求积公式推导

第一步:矩形区域的变量替换
对矩形区域\(R=[a,b]\times[c,d]\),分别对\(x,y\)做线性变换,将其映射为标准正方形\(\overline{R}=[-1,1]\times[-1,1]\)

\[u = \frac{2x-(a+b)}{b-a},\quad v = \frac{2y-(c+d)}{d-c} \]

反解得到:

\[x = \frac{b-a}{2}u + \frac{a+b}{2},\quad y = \frac{d-c}{2}v + \frac{c+d}{2} \]

计算变换的雅可比行列式:

\[J = \frac{\partial(x,y)}{\partial(u,v)} = \begin{vmatrix} \frac{\partial x}{\partial u} & \frac{\partial x}{\partial v} \\ \frac{\partial y}{\partial u} & \frac{\partial y}{\partial v} \end{vmatrix} = \begin{vmatrix} \frac{b-a}{2} & 0 \\ 0 & \frac{d-c}{2} \end{vmatrix} = \frac{(b-a)(d-c)}{4} \]

根据二重积分变量替换公式,原积分变为:

\[\iint_R f(x,y)dxdy = \frac{(b-a)(d-c)}{4} \int_{-1}^1\int_{-1}^1 f\left( \frac{b-a}{2}u+\frac{a+b}{2},\ \frac{d-c}{2}v+\frac{c+d}{2} \right) dudv \tag{7} \]

第二步:对\(u,v\)分别应用高斯求积公式
\(u\)取n个高斯点\(u_0,...,u_{n-1}\),求积系数\(A_0,...,A_{n-1}\);对\(v\)取m个高斯点\(v_0,...,v_{m-1}\),求积系数\(B_0,...,B_{m-1}\)

先对\(v\)的积分应用高斯公式,再对\(u\)的积分应用高斯公式,交换求和与积分顺序,最终得到二重积分的高斯求积公式

\[\iint_R f(x,y)dxdy \approx \frac{(b-a)(d-c)}{4} \sum_{i=0}^{n-1}\sum_{j=0}^{m-1} A_i B_j \cdot f\left( \frac{b-a}{2}u_i+\frac{a+b}{2},\ \frac{d-c}{2}v_j+\frac{c+d}{2} \right) \tag{8} \]

3.3 案例解析(例4.15)

用3节点高斯公式求例4.14的积分。

  1. 区域变换:\(x\in[1.4,2.0]\),变换为\(x=0.3u+1.7\)\(y\in[1.0,1.5]\),变换为\(y=0.25v+1.25\);雅可比行列式\(J=0.075\)
  2. 积分变换:

\[I = 0.075 \int_{-1}^1\int_{-1}^1 \ln(0.3u+0.5v+4.2) dudv \]

  1. 代入3节点高斯公式,仅需计算\(3\times3=9\)个函数值,最终得到近似值\(0.42955453\),与真值对比达到8位有效数字,节点更少、精度更高。

四、非矩形区域的二重积分数值计算

对于一般平面区域\(R=\{(x,y) \mid a\leq x\leq b,\ c(x)\leq y\leq d(x)\}\),二重积分可化为累次积分:

\[I = \int_a^b \int_{c(x)}^{d(x)} f(x,y) dydx \]

处理核心:内层积分的上下限是x的函数,先对固定x的y积分应用求积公式,将其转化为关于x的函数,再对外层x的积分应用求积公式

以辛普森公式为例,对固定的x,y的积分区间为\([c(x),d(x)]\),应用基本辛普森公式,步长\(k(x)=\frac{d(x)-c(x)}{2}\),得:

\[\int_{c(x)}^{d(x)} f(x,y)dy \approx \frac{k(x)}{3}\left[ f(x,c(x)) + 4f(x,c(x)+k(x)) + f(x,d(x)) \right] \]

代入外层积分,得到:

\[I \approx \int_a^b \frac{d(x)-c(x)}{6}\left[ f(x,c(x)) + 4f\left(x,\frac{c(x)+d(x)}{2}\right) + f(x,d(x)) \right] dx \]

再对外层的x积分应用复合辛普森/高斯求积公式,即可得到积分近似值。


五、知识点系统归纳总结

对比维度 复合辛普森公式(二重积分) 高斯求积公式(二重积分) 非矩形区域二重积分数值方法
核心思想 化二重积分为累次积分,对x、y方向分别应用等距节点的复合辛普森公式(牛顿-柯特斯型) 先将矩形区域变换为标准正方形\([-1,1]\times[-1,1]\),对u、v方向分别应用非等距高斯点的高斯-勒让德求积 化二重积分为累次积分,先对内层y积分(上下限为x的函数)应用求积公式,再对外层x积分应用求积公式
适用区域 矩形区域\(R=[a,b]\times[c,d]\) 矩形区域\(R=[a,b]\times[c,d]\)(可线性变换为标准区域) 一般平面区域$R={(x,y)
节点特点 等距节点,x方向N等份、y方向M等份,包含区间端点与中点 非等距节点(勒让德多项式零点,高斯点),节点数与代数精度直接绑定 内层y积分的节点随x变化,外层x积分可灵活选择等距/非等距节点
代数精度 单变量代数精度3次,整体对x、y的次数≤3的多项式精确成立 n个节点单变量代数精度2n-1次,整体对x、y的次数≤2n-1的多项式精确成立 取决于内外层选用的求积公式,内层+外层辛普森的整体代数精度为3次
收敛阶 收敛阶\(O(h^4 + k^4)\),步长减半时误差约降低为1/16 收敛速度远快于等距节点公式,误差随节点数增加呈指数衰减 收敛阶由内外层求积公式的阶数共同决定
计算量 节点数为\((2N+1)\times(2M+1)\),例4.14需计算15个函数值 节点数为\(n\times m\),例4.15仅需计算9个函数值,精度更高 计算量随x节点数增加而增加,每个x节点需单独计算对应y的函数值
核心优点 1. 节点等距,编程实现简单,无需预存节点与系数;
2. 稳定性好,无数值不稳定问题;
3. 可通过增加等份数稳定提升精度
1. 相同节点数下精度远高于辛普森公式;
2. 计算量小,适配高精度需求场景;
3. 收敛速度极快
1. 适用范围广,可处理非矩形的一般平面区域;
2. 可灵活搭配不同求积公式,适配复杂上下限
核心缺点 1. 等距节点导致代数精度有限,高精度需求下计算量激增;
2. 收敛速度慢于高斯求积
1. 节点非等距,需预存高斯点与系数,编程复杂度稍高;
2. 仅适用于可变换为标准区域的矩形域
1. 内层积分步长随x变化,编程实现难度高;
2. 上下限函数复杂时,计算量显著增加
典型应用场景 矩形区域、中等精度要求、需快速实现的工程常规计算 矩形区域、高精度要求、计算资源有限的科学计算 曲边梯形等非矩形区域的二重积分计算

posted on 2026-03-09 10:34  Indian_Mysore  阅读(2)  评论(0)    收藏  举报

导航