JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

狄拉克 delta 与阶跃函数

一个理想化的开关,从 0 跳到 1;一个理想化的尖峰,无限高却恰好围出面积 1。两者都不是真正的函数——而这恰恰是为什么它们正是开关、冲量、点源与采样的完美工具。

两个你离不开的不可能之物

想象一个电灯开关。在时刻 t = 0 之前房间是暗的;你一拨开关的瞬间,灯就亮了,并且一直亮着。画成图,就是一个在 t < 0 时为 0、在 t > 0 时为 1 的函数,在原点直直地往上跳,中间没有任何过渡。这就是亥维赛阶跃函数 H(t)——一个瞬时开关的数学理想化。参见亥维赛阶跃函数。它如实刻画了工程中时刻在做的事:接通一个电压、把一个荷载砸到梁上、打开一个阀门——这些事件在该问题的时间尺度上,实际上就是瞬间发生的。

现在问那个危险的问题:这个开关的导数是什么?除原点外处处 H 都是平的,所以当 t 不为 0 时 H'(t) = 0。但在 t = 0 处,图像在零水平距离上跃升了整整一个单位——那里的斜率,从诚实的意义上说,是无穷大。于是 H' 处处为零,唯独在一点上无限高,然而——这正是奇妙之处——它下方的总面积必须恰好是 1,因为这正是 H 攀升的量。一个无限细、无限高、面积为 1 的尖峰:这就是狄拉克 delta delta(t)。参见狄拉克 delta 函数。开关与尖峰,互为对方的导数与原函数。

把它弄严格:一个不断变窄的鼓包的极限

你怎么驯服一个破坏规则的对象?把它构造成一族完全普通函数的极限。取一个又高又瘦的矩形:宽 epsilon、高 1/epsilon、以 0 为中心。它的面积是宽乘高 = 1,不论 epsilon 多小都如此。现在让 epsilon 缩向 0。矩形变得越来越高、越来越瘦,面积始终是 1,挤压到 x = 0 这一个点上。delta 就是这一过程的理想化终点——不是某个特定 epsilon 处的矩形,而是当 epsilon 趋于 0 时,它所触及的每一个量所收敛到的东西。

矩形是最粗糙的选择;更光滑的也行,而且往往更好用。一个面积为一、又高又窄的高斯钟形 (1/(epsilon square root of pi)) e^{-x^2/epsilon^2},当 epsilon 趋于 0 时收窄为 delta——一个熟悉的形状,直接连回那个高斯积分,正是其总面积里的 pi 让它保持归一。这一点令人释然:并不存在唯一「正确」的鼓包。任何一族面积为一、向原点集中的脉冲,都给出同一个 delta,因为它们身上唯一能在极限中存活下来的,就是它们对一个光滑函数所做的事——而这件事,竟归结为一条干净的法则。

定义它的唯一法则:筛选性质

delta 所做的一切,都装在一个方程里:f(x) 乘以 delta(x - a) 在整条直线上的积分等于 f(a)。这就是筛选性质,也是真正的定义——delta 恰好就是这样的东西:与任意光滑的 f 相乘再积分,便把 f 在某一点的那个值交还给你。用变窄的鼓包来想象:delta(x - a) 除了 x = a 附近一个极小的窗口外处处为零。在那个窗口里 f 基本上恒为 f(a),于是它滑出积分号外,留下 f(a) 乘以(鼓包的面积)= f(a) 乘以 1 = f(a)。尖峰恰好在一处采样了 f,把其余一切都丢掉。

DEFINING PROPERTY (the sifting / sampling rule):
    integral_{-inf}^{+inf}  f(x) delta(x - a) dx  =  f(a)

Special case f = 1  (total area is one):
    integral_{-inf}^{+inf}  delta(x) dx  =  1

LINK TO THE STEP (Fundamental Theorem of Calculus):
    integral_{-inf}^{x}  delta(s) ds  =  H(x)        so      H'(x) = delta(x)

USEFUL ALGEBRA OF THE DELTA:
    delta(-x)     = delta(x)              (even)
    delta(c x)    = (1/|c|) delta(x)      (rescaling shrinks the area)
    x delta(x)    = 0                     (the spike sits where x = 0)
    delta(g(x))   = sum over roots x_k of   delta(x - x_k) / |g'(x_k)|
筛选性质就是定义;其余一切都是它的推论。注意 delta(c x) = (1/|c|) delta(x):压缩自变量会重新缩放面积,这正是为什么 delta 不是函数,而是一种密度。

现在这两个对象之间的联系,恰恰就是宽松地理解的微积分基本定理。把 delta 从负无穷积分到 x,会在你跨过原点的那一刻积累起它那唯一的一份面积,于是累计值在 0 之前为 0、在 0 之后为 1——这正是 H(x)。反方向用定理便得 H'(x) = delta(x)。所以开关是尖峰的积分,尖峰是开关的导数。Volume I 教过你光滑函数的这种配对;在这里它原封不动地存活下来,适用于那些在旧意义下根本不可微的对象——这正是广义函数视角的全部威力。

工程师为何爱用它:冲量、点源、采样

第一项工作是冲量。用锤子敲一个质量块:一个在极短时间内作用的大力,其乘积——力乘时间,即动量的改变——才是真正要紧的。把锤击理想化为 F(t) = J times delta(t),其中 J 是总冲量。把它喂进一个系统,你就读出它的冲激响应:系统在一次尖锐的猛击之后如何振铃、衰减或归位的全过程。参见冲激响应。这可不是玩具。知道一个线性系统的冲激响应,就能告诉你它对任意输入的响应——把无穷多个被缩放、平移的冲量叠加起来即可,而这正是卷积。

第二项工作是点源。一个点电荷、一个质点、梁上单独一处集中的荷载——物理上这些物质都坐落在一个位置,总量有限却没有任何展布。空间中的一个 delta,delta(x - a)(或它的多维版本),是唯一诚实地写出「这份量的全部,全打包在点 a 处」的方式。用一个 delta 源去解微分方程,你得到的答案就是格林函数——介质对单点一戳的响应,是冲激响应在空间上的表亲,也是那块积木:把对一个弥散源的响应,通过积分组装起来,靠的就是它。

第三项工作是采样,它不过是穿上工作服的筛选性质。一排间隔为 T 的 delta——一把「狄拉克梳」——与一个连续信号相乘,便在每个刻度上拣出信号的值、忽略其余。这一幅图就是把模拟信号转换成计算机存储的数字流的数学核心,也是为什么存在一个最密的间隔 T,低于它就不会丢失任何细节。于是同一个理想化的尖峰,既能为锤击建模,也能为模数转换器的每一次「咔哒」建模——这个抽象,三次三倍地赚回了自己的成本。

delta 在变换机器里

delta 真正物尽其用之处,是在积分变换内部,在那里乱糟糟的开关与尖峰运算化为干净的代数。看拉普拉斯变换:把它作用到 delta(t) 上,只是凭筛选性质在 t = 0 处采样核 e^{-st},得出 delta 的拉普拉斯变换等于 1——可能是最简单的答案。一个延迟的猛击 delta(t - a) 变换为 e^{-as}。于是当你求解一个由突发冲量驱动的微分方程时,delta 在变换空间里变成常数 1,你做普通的代数,再反变换。冲激响应,字面上就是系统传递函数的逆变换。

  1. 把突发事件建模为一个 delta。在 t = a 的锤击、在 x = a 的点荷载、一个理想化的电流脉冲——把它写成方程里一个(可能平移、可能缩放的)delta 项。
  2. 做变换,让筛选性质把它坍缩掉。delta 变成一个干净的因子——1,或 e^{-as},或 e^{-i omega a}——你的微分方程便化为变换变量里的一个代数方程。
  3. 解出代数,再反变换。逆变换把你带回时间或空间响应——对一个 delta 输入,这个响应恰好就是你想要的冲激响应或格林函数。

傅里叶这一侧讲了最深的故事。狄拉克 delta 的傅里叶变换是一个平直的常数——delta 等量地包含每一个频率。这正是「一个尖锐的尖峰是由所有波一齐造成的」的精确含义,也是为什么一记干净的冲量是完美的探针:给系统一个 delta,你就同时在每一个频率上测试了它。反方向用对偶性,时间上的一个常数变换为频率上的一个 delta,编码了那个显然的事实:一个纯粹不变的信号恰好住在一个频率上,即零。阶跃函数也来掺一脚:对任何信号里的一个跳变求导,会在其导数的频谱里种下一个 delta,这正是为什么吉布斯过冲在跳变附近始终不肯彻底消失。

安全地驾驭它们:什么允许、什么不允许

因为 delta 是分布而非函数,有些熟悉的运算可以做,有些则被禁止——而把两者混淆,正是人们出错的地方。你可以让 delta 乘以一个光滑函数(g(x) delta(x - a) = g(a) delta(x - a),它只是采样了 g),可以积分它、平移它、缩放它,并且想求多少次导就求多少次——delta'(x),那个「偶极子」,完全说得通,并服从 f 乘以 delta' 的积分等于 minus f'(a),由分部积分得到。你不可以做的,是把两个 delta 相乘:delta(x) times delta(x),或 delta(x)^2,毫无意义,因为同一点处两个单位面积的尖峰,给出一个你无法定义的面积。

阶跃本身也有一处不动声色的微妙:H(0) 的值是多少?答案是:无所谓。不同的书把 H(0) 取作 0、1 或 1/2,而每一个含 H 的积分无论如何都得出相同的结果,因为在一个孤立点上改变函数值,并不改变任何积分。(对称的取法 1/2 是最自然的,因为它是两侧的平均——而这恰好是傅里叶级数在跳变处所收敛到的值,那里部分和落在缺口的中点上。)这个教训可以推广:分布是由它们在积分下所做的事来定义的,所以凡能在积分中存活下来的都是真实的,凡存活不下来的,都不过是一个无害的约定选择。

退后一步,看看你得到了什么。通过把「函数」的概念拓宽到包含这些理想化对象,Volume I 的微积分——导数积分基本定理——便能继续作用于那些让旧规则呛住的开关、猛击与点源。你在前头付出了一点严格性(你必须记住它们只有在积分内部才有意义),换来的是覆盖范围的巨大增益:阶跃与尖峰让你能干净而精确地写下那些充满真实物理与工程的突发与集中事件。它们并不真是函数——而这恰恰是要害所在。