Laplace 变换 II:阶跃、冲击与分段输入
上一章里,输入项大多是多项式、指数、正弦和余弦。它们连续、光滑,适合用待定系数法,也适合直接查 Laplace 变换表。现实系统常常没有这么温顺:电路在某个时刻接通,阀门开一段时间后关闭,药物被一次性注入,弹簧被锤子短促敲击。输入突然变了,系统却要从已有状态继续运动。
本章处理这类“有时间事件”的输入。单位阶跃函数负责开关,Dirac delta 负责理想冲击,卷积把任意输入拆成许多小冲击的叠加。学完本章后,Laplace 变换不再只是把微分方程改写成代数方程;它会变成描述输入、系统和响应之间关系的语言。

单位阶跃从 a 起开启;窗口函数在 a 到 b 之间开启,随后关闭。
阶跃函数:把时间轴切开
单位阶跃函数记作 u(t−a),也常叫 Heaviside 函数。它在 t=a 之前为 0,在 t=a 之后为 1:
u(t−a)={0,1,t<
在 Laplace 变换中,单个点的取值不影响积分,所以 t=a 处取 0、1 或 21 通常都不改变计算。本课默认使用右连续写法,也就是 。
阶跃函数的第一种用法是“开启”。例如 5u(t−3) 表示 t=3 之前输入为 0,从 t=3 开始输入为 5。第二种用法是“关闭”。例如 表示 之前为 ,之后为 。把两个阶跃相减,就得到一个只在有限时间内打开的窗口:
u(t−a)−u(t−b)=
这件事很简单,但非常有用。一个矩形脉冲、一次开关电压、一段时间内持续施加的外力,都可以先写成阶跃组合,再送进 Laplace 变换。
用跳变量写分段函数
如果分段函数每一段都是常数,最省力的写法是从第一段开始,每遇到一个断点,就加上“新值减旧值”的修正。
例如
g(t)=⎩⎨
从 1 开始。到 t=2 时,函数从 1 跳到 3,修正量是 2;到 t=5 时,函数从 跳到 ,修正量是 。因此
g(t)=1+2u(t−2)−3u(t−5).
检验也直接:当 2≤t<5 时,只有 u(t−2) 打开,函数值是 1+2=3;当 时,两个阶跃都打开,函数值是 。
阶跃函数不是为了把图像写得更复杂,而是为了把“在某个时刻发生变化”写进一个统一公式。这个统一公式可以直接进入 Laplace 变换,不必在每个时间区间重新解一次微分方程。
下面的交互可以调节两个断点和三个电平,观察分段图像如何同步变成阶跃表示。
平移定理的关键细节
阶跃函数进入 Laplace 变换后,最重要的公式是第二平移定理。设
F(s)=L{f(t)}.
若 a>0,则
L{u(t−a)f(t−a)}=e−asF(s).
反过来,
L−1{e−asF(s)}=u(t−a)f(t−
这条公式说的是:如果一个信号在 t=a 才打开,并且打开后从 f(0) 的形状重新开始,那么它的 Laplace 变换就是原来的 F(s) 乘上延迟因子 e−as。
公式从定义可以直接看出来:
L{u(t−a)f(t−a
令 r=t−a,则
∫a∞e−stf(t−

平移定理中应先改变量再乘阶跃:u(t−a)f(t−a) 从 f(0) 重新展开,而 u(t−a)f(t 接上原函数在 的高度。
公式要求阶跃后面的函数写成 f(t−a),不是任意的 f(t)。看到 u(t−a)t2 时,不能直接写成 ;必须先把 改写成 。
一个必须改变量的例子
求
L{u(t−3)t2}.
要使用平移定理,先把 t2 写成关于 t−3 的表达式:
t2=(t−3+3)2=(t−3)
于是
u(t−3)t2=u(t−3)((t−3)
现在阶跃后的函数已经是 f(t−3) 的形式,其中
f(t)=t2+6t+9.
所以
L{u(t−3)t2}=e−3s(
如果输入本来就是 u(t−3)(t−3)2,那才可以直接得到
L{u(t−3)(t−3)2}=e−3s
分段输入的 Laplace 解法
处理分段输入时,建议先做两件事。第一,画出断点,确认每个断点前后输入发生了什么变化。第二,把输入写成阶跃组合,且每个阶跃后的表达式都改成关于 t−a 的形式。

把分段输入写成阶跃组合:找断点,写基础段,每次跳变加修正,再做 Laplace 变换。
开关输入的一阶系统
考虑初值问题
y′+2y=g(t),y(0)=0,
其中输入从 t=1 打开,到 t=4 关闭:
g(t)=⎩⎨
这个输入可以写成
g(t)=3u(t−1)−3u(t−4).
现在求解。
对方程两边取 Laplace 变换,并使用 y(0)=0。若 Y(s)=L{y(t)},则左边变为 。
这条解的含义很清楚:t=1 后系统开始向稳态 3/2 上升;t=4 后输入被关闭,解中减去一个从 t=4 开始的同形响应,系统逐渐回到 0。
当分段表达式不是常数
如果分段函数的后半段含 t,也先写成修正量,再改变量。例如
q(t)={t,5,0≤t<2,
从基础段 t 开始。到 t=2 后,新表达式是 5,旧表达式是 t,所以
q(t)=t+(5−t)u(t−2).
但 5−t 还不是关于 t−2 的表达式。把 t=(t−2)+2 代入:
5−t=5−((t−2)+2)=3−(t−2).
因此
q(t)=t+(3−(t−2))u(t−2).
现在才能直接变换:
Q(s)=s21+e−2
分段函数写成阶跃组合后,还不能立刻机械套公式。每个 u(t−a) 后面的表达式都要检查:它是否已经写成关于 t−a 的函数?这一步漏掉,延迟因子通常会对,但延迟后的形状会错。
冲击输入与 Dirac delta
阶跃函数描述的是突然打开或关闭。还有一种输入更短促:它只持续极短时间,但总作用量不小。锤子敲弹簧、球拍击球、瞬时电压脉冲、一次快速注射,都可以用“冲击”来近似。
Dirac delta 记作 δ(t−a)。它不是普通函数,而是一种理想化对象。对本课来说,掌握它的积分性质就够了:
∫a−εa+εδ(t−a)dt=1,ε>
并且对足够好的测试函数 ϕ(t),
∫a−εa+εϕ(t)δ(t−a)dt=ϕ(a
这第二条叫取样性质。delta 不关心 ϕ(t) 在整个区间上的形状,只取出 t=a 处的值。

冲击看面积,不看瞬时高度。
把取样性质用到 Laplace 变换定义中,可以得到
L{δ(t−a)}=∫0∞e
特别地,
L{δ(t)}=1
在工程直觉中,δ(t−a) 是一个面积为 1、集中在 t=a 的单位冲击。如果前面乘上常数 I,那么 Iδ(t− 的冲击量就是 。
冲击怎样改变系统状态
看二阶机械模型
my′′+cy′+ky=Iδ(t−a)
在 a−ε 到 a+ε 上积分:
∫a−εa+ε(my′′
右边等于 I。左边第一项是
m(y′(a+ε)−y′(a−ε)).
若位移 y 在冲击瞬间没有跳变,另外两项在 ε→0 时趋于 0,于是得到
m(y′(a+)−y′(a−)
也就是说,冲击通常让速度瞬间跳变,而位移保持连续。这个结论比“delta 在某一点无限大”更可靠,也更接近物理含义。
delta 的系数有单位。若右边是力,Iδ(t−a) 中的 I 是冲量;若右边是输入速率,I 是一次性加入的总量。不要只看公式形状,忘记面积代表真实作用量。
冲击响应:系统自己的回声
设线性常系数系统从静止开始:
P(D)y=f(t),y(0)=y′(0)=⋯=0.
如果输入是单位冲击 δ(t),输出称为单位冲击响应,记作 h(t):
P(D)h=δ(t).
在 Laplace 域里,零初始条件让微分算子变成多项式 P(s),而 L{δ(t)}=1,所以
P(s)H(s)=1,H(s)=P(s)1.

冲击输入 δ(t) 后,系统按自身动力学产生自由衰减振荡响应 h(t)。
一个二阶冲击响应
求系统
y′′+2y′+5y=δ(t),
的冲击响应。
取 Laplace 变换。零初始条件下,
(s2+2s+5)Y(s)=1.
如果输入不是 δ(t),而是延迟到 t=3 的 4δ(t−3),那么
Y(s)=4e−3sH(s).
逆变换给出
y(t)=2u(t−3)e−(t−3)sin(2(t−3)).
这说明延迟冲击不会改变系统自身的响应形状,只是把响应推迟到冲击发生后,并按冲击量放大。
冲击响应是理解线性系统的钥匙。知道 h(t) 后,系统对复杂输入的响应可以看成许多延迟冲击响应的叠加。
卷积:把任意输入拆成小冲击
若系统从静止开始,冲击响应为 h(t),输入为 f(t),那么输出可以写成卷积:
y(t)=(h∗f)(t)=∫0th(t
这个积分的读法是:过去时刻 τ 的输入 f(τ) 会激发一个从 τ 开始的响应;到了当前时刻 t,这份响应已经走过 t−τ 的时间,所以权重是 h(。把所有过去输入的贡献加起来,就是当前输出。
卷积定理把这件事变得很短:
L{h∗f}=H(s)F(s).
因此,时域里的卷积在 s 域里只是乘法。反过来,如果在求逆变换时看到两个变换的乘积,也可以把它理解成两个时间函数的卷积。
一阶系统的卷积公式
考虑
y′+2y=f(t),y(0)=0.
零初始条件下
(s+2)Y(s)=F(s),Y(s)=s+2
所以
H(s)=s+21,h(t)=e−2
系统对任意输入 f(t) 的响应是
y(t)=∫0te−2(t−τ)f(τ)d
若 f(t)=u(t−1),积分从 τ=1 才开始有贡献:
y(t)=u(t−1)∫1t
这正是前面阶跃输入例题中的上升响应。卷积不是另一套独立技巧,它是在解释同一个 Laplace 结果。
传递函数入口
对零初始条件的线性常系数系统
P(D)y=f(t),
取 Laplace 变换得到
P(s)Y(s)=F(s).
如果 F(s)=0,输入和输出的比值是
H(s)=F(s)Y(s)=P(s)
这个 H(s) 称为传递函数,也就是冲击响应 h(t) 的 Laplace 变换。它把系统本身从具体输入中分离出来:换一个输入,只需换 F(s);系统的部分仍由同一个 H(s) 描述。

传递函数 H(s) 描述系统:时域卷积在 s 域中转化为乘法。
在时域里,我们写
y(t)=h(t)∗f(t).
在 s 域里,我们写
Y(s)=H(s)F(s).
这两行表达的是同一件事。前者强调“过去输入逐渐累加”,后者强调“系统对输入的代数滤波”。后续学习线性系统、控制理论和频率响应时,传递函数会反复出现。
传递函数默认描述零初始条件下“输入到输出”的关系。如果初始条件不为零,完整解还要加上由初始状态产生的自然响应。不要把 H(s)F(s) 误认为所有情况下的完整解。
综合例题:开关和冲击同时出现
求解
y′′+3y′+2y
右边表示:从 t=1 到 t=3 有一个高度为 2 的输入窗口,t=4 又有一次冲击量为 5 的瞬时作用。
零初始条件下,左边变成
(s2+3s+2)Y(s)=
这个解把三种作用分得很清楚:第一个延迟阶跃让系统上升,第二个延迟阶跃把窗口关闭,最后的冲击激发出一个从 t=4 开始的自由响应。
常见误区与练习
本章最容易出错的地方,不在微分方程本身,而在输入函数进入 Laplace 变换之前的整理。
不要把 u(t−a)f(t) 自动变成 e−asF(s)。只有当阶跃后面是 f(t 时,才能直接套第二平移定理。若后面是 ,先改写成关于 的表达式。
还要记住三个小检查。第一,分段函数的断点处取值通常不影响 Laplace 变换,但会影响你画图和解释模型时的约定。第二,delta 不是普通函数,不要讨论它在冲击点的“函数值”;讨论面积和取样性质。第三,传递函数描述零初始条件下的输入输出关系,非零初值会额外带来自然响应。
练习一
把下面的分段函数写成阶跃函数组合:
g(t)=⎩⎨
从基础值 2 开始。t=1 时从 2 跳到 −1,修正量是 −3;t=4 时从 跳到 ,修正量是 。所以
练习二
求
L{u(t−2)t}.
先把 t 写成 (t−2)+2:
u(t−2)t=u(
练习三
求逆变换:
L−1{s+1e−5s}.
先看不含延迟因子的部分:
L−1{s+11}=e
练习四
解初值问题
y′+3y=2u(t−1),y(0)=0.
取 Laplace 变换:
(s+3)Y(s)=s2e−s.所以
练习五
系统
y′′+4y=δ(t−π),y(0)=0,
的解是什么?
取 Laplace 变换:
(s2+4)Y(s)=e−πs.所以
本章收束
阶跃函数让输入在指定时刻打开或关闭,第二平移定理把这种时间延迟变成 e−as。Dirac delta 把极短作用抽象成面积固定的冲击,它的 Laplace 变换正好也是延迟因子。冲击响应 h(t) 描述系统被单位冲击敲一下后如何自己运动;卷积把任意输入看成连续许多小冲击的叠加。
下一步进入幂级数解法时,我们会暂时离开 Laplace 变换。但这里形成的系统观点会继续留下来:输入、系统、输出之间的关系,往往比某一个具体公式更重要。