复合梯形公式的误差分析与步长优化
题目描述
考虑定积分 \(I = \int_a^b f(x) \, dx\),其中函数 \(f(x)\) 在区间 \([a, b]\) 上足够光滑(例如具有连续的二阶导数)。使用复合梯形公式计算该积分的近似值。要求分析复合梯形公式的截断误差,并基于误差分析给出如何选择子区间数量 \(n\)(或步长 \(h = \frac{b-a}{n}\)),使得近似积分值达到预设的精度要求 \(\epsilon\)。
解题过程
- 复合梯形公式的构造
首先将积分区间 \([a, b]\) 划分为 \(n\) 个等宽的子区间,步长 \(h = \frac{b-a}{n}\),节点为 \(x_i = a + i h\)(\(i = 0, 1, \dots, n\))。在每个子区间 \([x_{i-1}, x_i]\) 上应用梯形公式,然后将结果求和:
\[ T_n = h \left[ \frac{f(a)}{2} + f(x_1) + f(x_2) + \dots + f(x_{n-1}) + \frac{f(b)}{2} \right] \]
这就是复合梯形公式。其几何意义是用一系列梯形面积之和来逼近曲边梯形的面积。
- 局部误差分析
考虑单个子区间 \([x_{i-1}, x_i]\) 上的梯形公式误差。设 \(I_i = \int_{x_{i-1}}^{x_i} f(x) \, dx\),梯形公式近似为 \(T_i = \frac{h}{2} [f(x_{i-1}) + f(x_i)]\)。利用积分中值定理或泰勒展开,可以推导出局部截断误差:
\[ E_i = I_i - T_i = -\frac{f''(\xi_i)}{12} h^3 \]
其中 \(\xi_i \in (x_{i-1}, x_i)\)。推导要点:在子区间中点展开 \(f(x)\) 为泰勒级数,积分后与梯形公式比较,利用罗尔定理得到误差项。
- 全局误差分析
整体积分误差是各子区间误差之和:
\[ E_n = I - T_n = \sum_{i=1}^n E_i = -\frac{h^3}{12} \sum_{i=1}^n f''(\xi_i) \]
由于 \(f''(x)\) 连续,根据介值定理,存在 \(\eta \in (a, b)\) 使得:
\[ \sum_{i=1}^n f''(\xi_i) = n f''(\eta) \]
代入 \(n = \frac{b-a}{h}\),得到全局误差:
\[ E_n = -\frac{(b-a) f''(\eta)}{12} h^2 \]
因此,复合梯形公式的误差阶为 \(O(h^2)\),即当步长减半时,误差大致缩小为四分之一。
- 步长选择策略
设预设精度要求为 \(\epsilon > 0\),即要求 \(|E_n| \leq \epsilon\)。由误差公式:
\[ |E_n| \approx \frac{(b-a) M}{12} h^2 \leq \epsilon \]
其中 \(M = \max_{x \in [a, b]} |f''(x)|\)。解出步长 \(h\) 需满足:
\[ h \leq \sqrt{\frac{12 \epsilon}{(b-a) M}} \]
进而子区间数 \(n = \frac{b-a}{h}\) 应满足:
\[ n \geq \sqrt{\frac{(b-a)^3 M}{12 \epsilon}} \]
实际操作中,若 \(M\) 未知,可采用自适应策略:从较小的 \(n\) 开始计算 \(T_n\),然后倍增 \(n\) 计算 \(T_{2n}\),直到相邻两次近似值的差 \(|T_{2n} - T_n|\) 小于 \(\epsilon\)(注意误差与差值的关系为 \(|E_n| \approx \frac{|T_{2n} - T_n|}{3}\),因 \(T_{2n}\) 误差约为 \(T_n\) 的 1/4)。
- 数值验证示例
以 \(\int_0^1 e^{-x^2} dx\) 为例,\(f''(x) = (4x^2 - 2) e^{-x^2}\),在 \([0,1]\) 上 \(|f''(x)| \leq 2\)。若要求 \(\epsilon = 10^{-6}\),则:
\[ h \leq \sqrt{\frac{12 \times 10^{-6}}{1 \times 2}} \approx 0.00245, \quad n \geq 408 \]
实际计算中可取 \(n = 500\) 确保精度。通过计算 \(T_n\) 与 \(T_{2n}\) 的差值可验证精度是否达标。
通过以上步骤,我们系统分析了复合梯形公式的误差,并给出了步长优化的实用方法。