卷积积分描述的是:当一个函数沿着另一个函数平移时,它们如何组合。在连续时间中,它定义为

(fg)(t)=f(τ)g(tτ)dτ(f * g)(t) = \int_{-\infty}^{\infty} f(\tau) g(t-\tau)\,d\tau

快速理解它的方法很简单:对每个 tt,把一个函数滑动过去,找出两个函数重叠的部分,在重叠处把函数值相乘,再把结果加起来。如果两个函数都是因果的,也就是在负时间上都为零,那么它通常可以写成

(fg)(t)=0tf(τ)g(tτ)dτ(f * g)(t) = \int_0^t f(\tau) g(t-\tau)\,d\tau

t0t \ge 0 成立,只要 [0,t][0,t] 覆盖了全部重叠区间。核心思想很实用:卷积把“滑动重叠”变成每个 tt 对应的一个数。

卷积积分的定义与直觉

f(τ)f(\tau) 看成固定不动,把 g(tτ)g(t-\tau) 看成 gg 的一个翻转后再平移的副本。随着 tt 改变,重叠区域也会改变,所以积分值也会改变。

这就是它与逐点相乘的主要区别。你不是在同一个输入点上比较两个函数,而是在平移后的副本与原函数重叠的整个区域上,把乘积累加起来。

为什么重叠决定积分上下限

卷积题里的积分上下限通常不是靠背模板得到的,而是通过判断两个因子在哪些地方同时非零得到的。

这也是为什么很多卷积结果都要分段写。随着 tt 移动,重叠区间可能变长、变短,或者直接消失,所以积分表达式也必须随之变化。

学生最容易忽略的就是这一点:难点通常不在积分本身,而在于先找对重叠区间。

卷积积分示例:两个单位脉冲

f(t)={1,0t10,otherwisef(t) = \begin{cases} 1, & 0 \le t \le 1 \\ 0, & \text{otherwise} \end{cases}

并且令 g(t)g(t) 与它相同。我们要求 (fg)(t)(f * g)(t)

这个例子很好,因为被积函数只可能是 1100,所以卷积值就是重叠区间的长度。

根据定义,

(fg)(t)=f(τ)g(tτ)dτ(f * g)(t) = \int_{-\infty}^{\infty} f(\tau) g(t-\tau)\,d\tau

由于 f(τ)=1f(\tau)=1 只在 [0,1][0,1] 上成立,而 g(tτ)=1g(t-\tau)=1 只在 0tτ10 \le t-\tau \le 1 时成立,所以被积函数恰好在这两个条件同时满足的地方等于 11

第二个条件意味着

t1τtt-1 \le \tau \le t

因此重叠区间是

[0,1][t1,t][0,1] \cap [t-1,t]

所以 (fg)(t)(f * g)(t) 就是这个重叠区间的长度。

情况 1:t<0t < 0

没有重叠,因此

(fg)(t)=0(f * g)(t) = 0

情况 2:0t10 \le t \le 1

重叠区间从 τ=0\tau=0τ=t\tau=t,因此

(fg)(t)=0t1dτ=t(f * g)(t) = \int_0^t 1\,d\tau = t

情况 3:1t21 \le t \le 2

重叠区间从 τ=t1\tau=t-1τ=1\tau=1,因此

(fg)(t)=t111dτ=2t(f * g)(t) = \int_{t-1}^1 1\,d\tau = 2-t

情况 4:t>2t > 2

同样没有重叠,因此

(fg)(t)=0(f * g)(t) = 0

把这些分段结果合起来,

(fg)(t)={0,t<0t,0t12t,1t20,t>2(f * g)(t) = \begin{cases} 0, & t < 0 \\ t, & 0 \le t \le 1 \\ 2-t, & 1 \le t \le 2 \\ 0, & t > 2 \end{cases}

结果是一个三角形。随着重叠区间变长,它的高度上升;随着重叠区间缩短,它又下降。

卷积积分中的常见错误

忘记平移后的输入

第二个因子是 g(tτ)g(t-\tau),不是 g(τt)g(\tau-t),也不是单纯的 g(τ)g(\tau)。这个平移正是卷积的关键。

使用了错误的积分上下限

最稳妥的方法是先找出两个因子同时非零的区域。如果重叠区间会随 tt 改变,那么结果通常就需要分段表示。

把卷积当成逐点相乘

逐点相乘是在同一个输入点上取值。卷积则是在整个区间上累加乘积。

跳过捷径成立的条件

捷径

(fg)(t)=0tf(τ)g(tτ)dτ(f * g)(t) = \int_0^t f(\tau)g(t-\tau)\,d\tau

在常见的因果情形下成立,但并不适用于任意一对函数。只有在支撑区间的假设确实满足时,才能使用它。

卷积积分用在哪里

当一个量取决于另一个量如何在附近的时间或空间中分布时,就会用到卷积。

在线性时不变系统中,卷积可以由输入和冲激响应求出输出。在概率论中,如果两个独立随机变量都有密度函数,那么它们和的密度就是这两个密度的卷积。更广泛地说,卷积还会出现在平滑、滤波、扩散,以及任何邻近数值会相互组合的场景中。

试试一个类似的卷积问题

还是用同样的脉冲例子,但把第二个脉冲的高度改成原来的两倍:

g(t)={2,0t10,otherwiseg(t) = \begin{cases} 2, & 0 \le t \le 1 \\ 0, & \text{otherwise} \end{cases}

重叠区间保持不变,但现在被积函数在该区间上的值变成了原来的两倍。如果你能在积分之前就预测出这会怎样改变那个三角形结果,那就说明你已经真正抓住了卷积的核心思想。

需要解题帮助?

上传你的问题,几秒钟内获得经过验证的分步解答。

打开 GPAI Solver →