普林斯顿微积分读本 · 第十五章

积分的方法(一)

换元法、分部积分与部分分式

15.1

换元法(u-替换)

换元法(u-substitution)是积分计算中最基本、最重要的方法之一。它本质上是链式法则的"逆运算"——当我们识别到被积函数中存在一个复合函数及其内函数的导数时,就可以通过变量替换将复杂积分化简为基本积分。

核心思想

令 u = g(x),则 du = g'(x)dx,原积分中的变量 x 被替换为 u:

∫ f(g(x)) · g'(x) dx = ∫ f(u) du

这个公式的直觉是:如果我们能将被积函数"拆解"成两部分——一部分是某个函数 f 的复合,另一部分恰好是内函数 g 的导数——那么令 u = g(x) 就能把积分完全用 u 表示,从而简化计算。

换元法五步流程

步骤操作说明
1选择 u = g(x)观察被积函数,找出合适的内函数 g(x)
2计算 du = g'(x)dx对 u 求微分,得到 du 与 dx 的关系
3用 u 重写积分将原积分中所有 x 替换为 u 的表达式
4求积分对关于 u 的积分进行计算
5回代 x将结果中的 u 替换回 g(x),恢复为 x 的函数
如何选择 u?

选择 u 的关键是寻找被积函数中的"复合结构"。通常优先考虑:

  • 被积函数中带有括号的部分,令 u 等于括号内的表达式
  • 指数函数的底数或对数函数的真数
  • 三角函数的角度部分
  • 选择 u 后,检查 du 是否(或乘以常数后)出现在被积函数的剩余部分中

定积分换元

对于定积分,换元法有一个重要的简化:可以同时变换积分限,避免最后回代的步骤。

ab f(g(x)) · g'(x) dx = ∫g(a)g(b) f(u) du

当 x = a 时,u = g(a);当 x = b 时,u = g(b)。这样积分限直接变为 u 的值,计算完关于 u 的定积分后无需回代。

换元法的几何直觉

换元法的几何本质是"坐标系变换"。想象你在 x 坐标系下看一个曲边梯形的面积,换元相当于换到 u 坐标系下重新观察同一个区域。虽然坐标轴变了、曲线形状变了,但面积不变——这就是换元法有效的原因。微分因子 du = g'(x)dx 正是两个坐标系之间的"面积缩放因子"。

图 15-1:换元法的几何直觉——变量替换前后面积不变
15.2

分部积分法

分部积分法(Integration by Parts)是乘积法则的"逆运算"。当被积函数是两个函数的乘积,且换元法不适用时,分部积分法往往能解决问题。

分部积分公式

∫ u dv = uv - ∫ v du

这个公式来源于乘积法则 (uv)' = u'v + uv' 的两边积分。选择哪个因子为 u、哪个为 dv,直接决定了计算的难易程度。

LIATE 法则——选择 u 的优先顺序

当面对 ∫f(x)g(x)dx 时,按照以下优先级选择 u(剩下的部分作为 dv):

优先级类型说明典型函数
L对数函数最优先选为 u,因为求导后简化ln(x), log(x)
I反三角函数求导后变为代数函数arcsin(x), arctan(x)
A代数函数多项式、有理函数等x, x², 1/x
T三角函数积分后仍为三角函数sin(x), cos(x)
E指数函数积分后仍为指数函数ex, 2x
LIATE 法则的原理

LIATE 法则的核心逻辑是:排在越前面的函数,求导后越容易简化。对数函数求导后变成 1/x(代数函数),反三角函数求导后变成代数函数,而三角函数和指数函数无论求导还是积分都不会改变类型。因此,我们希望 u 是求导后会简化的函数,而 dv 是容易积分的函数。

表格法(DI 方法)

当需要多次应用分部积分时(例如 ∫xnexdx),逐次展开会非常繁琐。表格法(也叫 DI 方法)提供了一种系统化的方式:

  1. 画一个两列表格,左列标题为 D(求导),右列标题为 I(积分)
  2. 左列不断对 u 求导,直到变为 0 或出现循环
  3. 右列不断对 dv 积分
  4. 对角线交替加减,乘积求和即为结果
表格法注意事项
  • 当左列出现 0 时停止,结果为对角线乘积的交替加减
  • 如果左列出现循环(如 ∫exsin(x)dx),需要将原积分移项求解
  • 符号交替规律:+, -, +, -, ...
分部积分的直觉

分部积分的本质是一种"以退为进"的策略:将一个难以直接计算的积分,转化为另一个(希望更简单的)积分。就像解方程时,我们常常通过移项将未知量集中到一侧——分部积分则是通过"转移"一部分难度,让整体问题变得可解。选择好 u 和 dv 的关键,就是确保"转移"后的问题确实更简单。

15.3

部分分式

部分分式分解(Partial Fractions)是处理有理函数积分的有力工具。其核心思想是将一个复杂的有理函数拆解为若干个简单分式的和,然后分别积分。

适用条件

∫ P(x)/Q(x) dx      其中 deg(P) < deg(Q)

如果分子的次数大于或等于分母的次数,需要先用多项式除法(长除法)将假分式化为真分式与多项式的和。

部分分式分解四步法

步骤操作说明
1因式分解分母将 Q(x) 分解为一次因式和不可约二次因式的乘积
2设部分分式根据因式类型设定对应的部分分式形式
3通分比较系数将所有部分分式通分,与原式比较分子,解方程组
4分别积分对每个简单的部分分式分别求积分

三种基本形式

分母因式类型部分分式形式积分结果
一次因式 (x - a)A/(x - a)A · ln|x - a|
重根因式 (x - a)²A/(x - a) + B/(x - a)²A · ln|x - a| - B/(x - a)
不可约二次因式 (x² + px + q)(Bx + C)/(x² + px + q)需要完成平方后积分
完成平方的技巧

对于不可约二次因式 x² + px + q,完成平方的步骤为:

x² + px + q = (x + p/2)² + (q - p²/4)

令 u = x + p/2,则积分变为 ∫(Bu + C')/(u² + a²)du 的形式,其中 a² = q - p²/4。这可以进一步拆分为 ln 和 arctan 两部分。

常见错误
  • 忘记检查 deg(P) < deg(Q) 的条件,直接分解假分式
  • 对于重根因式,只设一个部分分式(如 (x-a)² 只写 A/(x-a)²,漏掉了 A/(x-a))
  • 对于不可约二次因式,分子只写常数而漏掉 Bx 项
  • 解系数方程组时出现计算错误——建议用代入法验证结果
部分分式的直觉

部分分式分解就像把一个大分数拆成几个小分数的和。例如 5/6 = 1/2 + 1/3,虽然值不变,但每个小分数更容易处理。对于有理函数,分母的每个因式都"贡献"一个对应的简单分式——就像把一个复杂问题分解为若干个简单子问题,逐个击破。

实际应用:积分技巧在工程与科学中的应用

概率密度函数积分:在概率论中,连续随机变量的概率由概率密度函数 f(x) 的积分给出。例如正态分布 N(μ, σ²) 的概率计算需要用到换元法将一般正态分布标准化为标准正态分布,这是统计推断和假设检验的基础。

信号能量计算:在信号处理中,信号的总能量定义为 E = ∫|x(t)|²dt。对于衰减的正弦信号 x(t) = e^(-at)sin(ωt),计算能量需要分部积分两次,形成循环后解出能量值。这在通信系统和音频工程中至关重要。

电路中的功率积分:交流电路中,电阻消耗的平均功率 P = (1/T)∫[0,T] i²(t)R dt。对于非正弦周期电流(如整流后的脉动电流),需要用三角恒等式降幂后积分,这是电力电子和电源设计的核心计算。

EX

例题精讲

例1:换元法 — ∫2x · √(x²+1) dx

∫2x · √(x²+1) dx

第一步:选择 u

观察被积函数,√(x²+1) 是一个复合函数,其内函数为 x²+1。注意到 2x 恰好是 x²+1 的导数。

u = x² + 1

第二步:计算 du

du = 2x dx

恰好被积函数中就有 2x dx 这一项。

第三步:用 u 重写积分

∫2x · √(x²+1) dx = ∫ √u du = ∫ u1/2 du

第四步:求积分

∫ u1/2 du = (2/3) u3/2 + C

第五步:回代 x

(2/3)(x² + 1)3/2 + C
∫2x · √(x²+1) dx = (2/3)(x² + 1)3/2 + C
例2:分部积分 — ∫x · ex dx

∫x · ex dx

第一步:选择 u 和 dv(LIATE 法则)

根据 LIATE 法则,代数函数 x 优先于指数函数 ex,所以:

u = x   ⇒   du = dx
dv = ex dx   ⇒   v = ex

第二步:应用分部积分公式

∫x · ex dx = x · ex - ∫ex dx

第三步:计算剩余积分

∫ex dx = ex + C

第四步:合并结果

∫x · ex dx = x · ex - ex + C = ex(x - 1) + C
∫x · ex dx = ex(x - 1) + C
例3:分部积分两次循环 — ∫ex · sin(x) dx

∫ex · sin(x) dx

第一步:选择 u 和 dv

u = ex   ⇒   du = ex dx
dv = sin(x) dx   ⇒   v = -cos(x)

第二步:第一次分部积分

∫ex sin(x) dx = -excos(x) + ∫excos(x) dx

右侧出现了新的积分 ∫excos(x)dx,需要再次分部积分。

第三步:第二次分部积分

对 ∫excos(x)dx,再次选择:

u = ex   ⇒   du = ex dx
dv = cos(x) dx   ⇒   v = sin(x)
∫excos(x) dx = exsin(x) - ∫exsin(x) dx

第四步:代入并解方程

将第二次的结果代入第一次的结果:

I = -excos(x) + exsin(x) - I
2I = ex(sin(x) - cos(x))
I = (ex/2)(sin(x) - cos(x)) + C
∫ex sin(x) dx = (ex/2)(sin(x) - cos(x)) + C
例4:部分分式 — ∫1/(x²-1) dx

∫1/(x²-1) dx

第一步:因式分解分母

x² - 1 = (x + 1)(x - 1)

第二步:设部分分式

1/[(x+1)(x-1)] = A/(x+1) + B/(x-1)

第三步:通分比较系数

1 = A(x - 1) + B(x + 1)

令 x = 1:1 = A(0) + B(2) ⇒ B = 1/2

令 x = -1:1 = A(-2) + B(0) ⇒ A = -1/2

第四步:分别积分

∫1/(x²-1) dx = ∫[-1/(2(x+1)) + 1/(2(x-1))] dx
= (-1/2)ln|x+1| + (1/2)ln|x-1| + C
= (1/2)ln|(x-1)/(x+1)| + C
∫1/(x²-1) dx = (1/2)ln|(x-1)/(x+1)| + C
例5:部分分式 — ∫x/(x²+3x+2) dx

∫x/(x²+3x+2) dx

第一步:因式分解分母

x² + 3x + 2 = (x + 1)(x + 2)

deg(P) = 1 < deg(Q) = 2,满足条件,可以直接分解。

第二步:设部分分式

x/[(x+1)(x+2)] = A/(x+1) + B/(x+2)

第三步:通分比较系数

x = A(x + 2) + B(x + 1)

令 x = -1:-1 = A(1) + B(0) ⇒ A = -1

令 x = -2:-2 = A(0) + B(-1) ⇒ B = 2

验证:展开 A(x+2) + B(x+1) = -x - 2 + 2x + 2 = x。正确。

第四步:分别积分

∫x/(x²+3x+2) dx = ∫[-1/(x+1) + 2/(x+2)] dx
= -ln|x+1| + 2ln|x+2| + C
= ln[(x+2)²/|x+1|] + C
∫x/(x²+3x+2) dx = -ln|x+1| + 2ln|x+2| + C
ML

MATLAB 可视化代码

以下 MATLAB 代码帮助你可视化换元法、验证分部积分结果以及进行部分分式分解。

substitution_visual.m — 换元法可视化
% 换元法可视化:int 2x*sqrt(x^2+1) dx % 令 u = x^2+1, du = 2x dx x = linspace(-3, 3, 500); f = 2.*x .* sqrt(x.^2 + 1); % 不定积分结果 F = (2/3) .* (x.^2 + 1).^(3/2); figure('Position', [100 100 900 550]); % 子图1:被积函数 subplot(1,2,1); plot(x, f, 'LineWidth', 2.5, 'Color', [0.77 0.36 0.24]); hold on; % 标注 u = x^2+1 的替换区域 x_fill = linspace(0, 2, 100); f_fill = 2.*x_fill .* sqrt(x_fill.^2 + 1); area(x_fill, f_fill, 'FaceColor', [0.77 0.36 0.24], ... 'FaceAlpha', 0.3, 'EdgeColor', 'none'); xlabel('x'); ylabel('f(x) = 2x\sqrt{x^2+1}'); title('被积函数(x 坐标系)'); grid on; % 子图2:原函数(积分结果) subplot(1,2,2); plot(x, F, 'LineWidth', 2.5, 'Color', [0.18 0.49 0.43]); xlabel('x'); ylabel('F(x) = (2/3)(x^2+1)^{3/2}'); title('原函数(积分结果)'); grid on; saveas(gcf, 'ch15_substitution_visual.png');
parts_verification.m — 分部积分验证
% 分部积分验证 % 例: int x*e^x dx = e^x(x-1) + C % 例: int e^x*sin(x) dx = (e^x/2)(sin(x)-cos(x)) + C syms x; f1 = x * exp(x); F1 = int(f1, x); fprintf('int x*e^x dx = '); disp(F1); % 验证:对结果求导应得到被积函数 fprintf('验证: d/dx[F1] = '); disp(simplify(diff(F1, x))); f2 = exp(x) * sin(x); F2 = int(f2, x); fprintf('int e^x*sin(x) dx = '); disp(F2); % 数值验证 x_vals = linspace(0, 2*pi, 200); y_integrand = x_vals .* exp(x_vals); y_antideriv = exp(x_vals) .* (x_vals - 1); figure('Position', [100 100 1200 500]); subplot(1,2,1); plot(x_vals, y_integrand, 'LineWidth', 2.5, 'Color', [0.77 0.36 0.24]); hold on; plot(x_vals, y_antideriv, 'LineWidth', 2, 'Color', [0.18 0.49 0.43], 'LineStyle', '--'); xlabel('x'); ylabel('y'); title('x*e^x 及其积分 e^x(x-1)'); legend('x*e^x', 'e^x(x-1)'); grid on; subplot(1,2,2); y_int2 = exp(x_vals) .* sin(x_vals); y_ant2 = (exp(x_vals)/2) .* (sin(x_vals) - cos(x_vals)); plot(x_vals, y_int2, 'LineWidth', 2.5, 'Color', [0.77 0.36 0.24]); hold on; plot(x_vals, y_ant2, 'LineWidth', 2, 'Color', [0.18 0.49 0.43], 'LineStyle', '--'); xlabel('x'); ylabel('y'); title('e^x*sin(x) 及其积分'); legend('e^x*sin(x)', '(e^x/2)(sin-cos)'); grid on; saveas(gcf, 'ch15_parts_verification.png');
partial_fractions.m — 部分分式分解
% 部分分式分解演示 syms x; % 例1: 1/(x^2-1) fprintf('--- 例1: 1/(x^2-1) ---\n'); f1 = 1/(x^2 - 1); pf1 = partfrac(f1, x); fprintf('部分分式分解: '); disp(pf1); F1 = int(f1, x); fprintf('积分结果: '); disp(F1); % 例2: x/(x^2+3x+2) fprintf('--- 例2: x/(x^2+3x+2) ---\n'); f2 = x/(x^2 + 3*x + 2); pf2 = partfrac(f2, x); fprintf('部分分式分解: '); disp(pf2); F2 = int(f2, x); fprintf('积分结果: '); disp(F2); % 数值可视化 x_vals = linspace(-3, 3, 1000); y_orig = x_vals ./ (x_vals.^2 + 3*x_vals + 2); y_pf = -1./(x_vals + 1) + 2./(x_vals + 2); figure('Position', [100 100 900 550]); plot(x_vals, y_orig, 'LineWidth', 2.5, 'Color', [0.77 0.36 0.24]); hold on; plot(x_vals, y_pf, '--', 'LineWidth', 2, 'Color', [0.18 0.49 0.43]); ylim([-10 10]); xlabel('x'); ylabel('y'); title('x/(x^2+3x+2) 与部分分式 -1/(x+1)+2/(x+2) 重合'); legend('原函数', '部分分式'); grid on; saveas(gcf, 'ch15_partial_fractions.png');
CH

交互式图表

图 15-1:换元法的几何直觉——变量替换前后面积不变