傅里叶变换笔记

Eli Bendersky 论文

摘要

深入探索傅里叶变换,从傅里叶级数出发,延伸至非周期函数,包含交互式可视化与数学推导。

<link rel="stylesheet" href="https://eli.thegreenplace.net/demos/fourier/windowed.css"><p>傅里叶级数是一种分析周期函数的强大工具。但那些不重复的函数呢?<a class="reference external" href="https://eli.thegreenplace.net/2026/notes-on-fourier-series/">我们之前看到</a>,对于定义在有限区间上的非周期函数,只要我们不关心该区间之外的行为,就可以计算其傅里叶级数。</p><p>现在将这个想法推广到<em>从不</em>重复的函数,即定义在区间<object class="valign-m4 latex-math" data="https://eli.thegreenplace.net/images/math/1cf8fee97b88d4aa5eb4787c05b533d0db945e98.svg" style="height: 18px;" type="image/svg+xml">(-\infty,\infty)</object>上的非周期函数。</p><div class="section" id="visualizing-fourier-series-for-non-repeating-functions"><h2>非重复函数的傅里叶级数可视化</h2><p>为了启发后续内容,回顾之前<a class="reference external" href="https://eli.thegreenplace.net/2026/notes-on-fourier-series/">关于傅里叶级数的文章</a>中使用的例子:</p><object class="align-center" data="https://eli.thegreenplace.net/images/math/219270dd9765adc74c363412ff71219137e90f0c.svg" style="height: 51px;" type="image/svg+xml">\[t(x)= \begin{cases} x &amp; 0 \leq x \leq 1 \\ 2-x &amp; 1 &lt; x \leq 2 \\ \end{cases}\]</object><p>将其奇延拓到<object class="valign-m4 latex-math" data="https://eli.thegreenplace.net/images/math/8291e9956dc145c0d40503664cdb2aa8907faeec.svg" style="height: 17px;" type="image/svg+xml">[-2,0]</object>。在那篇文章中,为了让傅里叶级数成立,我们假设<object class="valign-m4 latex-math" data="https://eli.thegreenplace.net/images/math/75a7147566fd4ba98fe5d85fe008fab6d58d3968.svg" style="height: 17px;" type="image/svg+xml">t(x)</object>在整条<object class="valign-0 latex-math" data="https://eli.thegreenplace.net/images/math/11f6ad8ec52a2984abaafd7c3b516503785c2072.svg" style="height: 8px;" type="image/svg+xml">x</object>轴上以周期<object class="valign-0 latex-math" data="https://eli.thegreenplace.net/images/math/8f459dda90739295986eb4ce950ace772ec696f7.svg" style="height: 12px;" type="image/svg+xml">2L=4</object>不断重复。现在,让我们面对现实:它实际上并没有重复,并观察傅里叶级数的表现。</p><p>回顾一下,逼近<object class="valign-m4 latex-math" data="https://eli.thegreenplace.net/images/math/75a7147566fd4ba98fe5d85fe008fab6d58d3968.svg" style="height: 17px;" type="image/svg+xml">t(x)</object>的傅里叶级数是正弦级数(因为它是奇函数):</p><object class="align-center" data="https://eli.thegreenplace.net/images/math/7942a20004aaf07d850b012826c56720f6efa3ce.svg" style="height: 41px;" type="image/svg+xml">\[t(x)=\frac{8}{\pi^2}\bigg[ sin\frac{\pi x}{2}-\frac{1}{3^2} sin\frac{3\pi x}{2}+\frac{1}{5^2}sin\frac{5\pi x}{2}-\cdots\bigg]\]</object><p>以下可视化是交互式的。默认情况下,显示<object class="valign-m4 latex-math" data="https://eli.thegreenplace.net/images/math/75a7147566fd4ba98fe5d85fe008fab6d58d3968.svg" style="height: 17px;" type="image/svg+xml">t(x)</object>(及其奇延拓),不显示傅里叶级数逼近。我们将通过一系列步骤观察结果:</p><div class="plot-stack"> <canvas id="series-canvas" class="canvas" width="760" height="470"></canvas> <div class="controls"> <div class="number-controls"> <div class="number-control"> <label for="terms-number">n(傅里叶级数项数)</label> <input id="terms-number" type="number" min="0" max="500" step="1" value="0"> </div> <div class="number-control"> <label for="interval-l">L</label> <input id="interval-l" type="number" min="2" max="128" step="1" value="2"> </div> <div class="number-control"> <label for="x-min">x 最小值</label> <input id="x-min" type="number" min="-512" max="511" step="1" value="-16"> </div> <div class="number-control"> <label for="x-max">x 最大值</label> <input id="x-max" type="number" min="-511" max="512" step="1" value="16"> </div> </div> </div> <canvas id="coeffs-canvas" class="canvas" width="760" height="260"></canvas> </div><p><strong>步骤1</strong>:将 <img alt="n" class="valign-0 latex-math" src="https://eli.thegreenplace.net/images/math/d1854cae891ec7b29161ccaf79a24b00c274bdaa.png" style="height: 7px;" /> 设为某个非零数值;当 n=3 时,逼近已经非常好。</p><p>频率间隔为 <object class="valign-m6 latex-math" data="https://eli.thegreenplace.net/images/math/5a600bbe993cfd18233241243dff681270daa29f.svg" style="height: 19px;" type="image/svg+xml">\frac{\pi}{L}</object>(这是正弦函数中 <object class="valign-0 latex-math" data="https://eli.thegreenplace.net/images/math/11f6ad8ec52a2984abaafd7c3b516503785c2072.svg" style="height: 8px;" type="image/svg+xml">x</object> 的系数)。注意傅里叶级数每隔 <object class="valign-0 latex-math" data="https://eli.thegreenplace.net/images/math/8dde33545500de38fae974b4b18036def142e9e3.svg" style="height: 12px;" type="image/svg+xml">2L</object> 重复一次,符合预期。</p><p><strong>步骤2</strong>:将 <object class="valign-0 latex-math" data="https://eli.thegreenplace.net/images/math/d160e0986aca4714714a16f29ec605af90be704d.svg" style="height: 12px;" type="image/svg+xml">L</object> 增加到 6。这意味着我们构造级数时假设 <object class="valign-m4 latex-math" data="https://eli.thegreenplace.net/images/math/75a7147566fd4ba98fe5d85fe008fab6d58d3968.svg" style="height: 17px;" type="image/svg+xml">t(x)</object> 的周期为 12,而非 4。注意现在傅里叶级数的形状——它们每隔 12 重复一次,且与 <object class="valign-m4 latex-math" data="https://eli.thegreenplace.net/images/math/75a7147566fd4ba98fe5d85fe008fab6d58d3968.svg" style="height: 17px;" type="image/svg+xml">t(x)</object> 的匹配程度不如之前。我们可以将 <img alt="n" class="valign-0 latex-math" src="https://eli.thegreenplace.net/images/math/d1854cae891ec7b29161ccaf79a24b00c274bdaa.png" style="height: 7px;" /> 增加到更大的数值以改善匹配。随着 <object class="valign-0 latex-math" data="https://eli.thegreenplace.net/images/math/d160e0986aca4714714a16f29ec605af90be704d.svg" style="height: 12px;" type="image/svg+xml">L</object> 增大,相邻频率之间的间隔减小。</p><p><strong>步骤3</strong>:将 <object class="valign-0 latex-math" data="https://eli.thegreenplace.net/images/math/d160e0986aca4714714a16f29ec605af90be704d.svg" style="height: 12px;" type="image/svg+xml">L</object> 增加到 10。我们不再看到重复,因此可以随意增大 <em>x 最小值</em> 和 <em>x 最大值</em> 直到看到重复。再次注意,我们需要添加越来越多的系数来让更大的 <object class="valign-0 latex-math" data="https://eli.thegreenplace.net/images/math/d160e0986aca4714714a16f29ec605af90be704d.svg" style="height: 12px;" type="image/svg+xml">L</object> 下的逼近效果更好,且相邻频率的间隔变得更小。</p><p>增加 <object class="valign-0 latex-math" data="https://eli.thegreenplace.net/images/math/d160e0986aca4714714a16f29ec605af90be704d.svg" style="height: 12px;" type="image/svg+xml">L</object> 意味着函数以越来越大的间隔重复。这一进展的逻辑结论是提出一个问题——如果函数<em>从不</em>重复,即 <object class="valign-0 latex-math" data="https://eli.thegreenplace.net/images/math/7024b94c8e1c4e174500651fed6f4034b9133" type="image/svg+xml">L \to \infty</object>,会发生什么?</p>
查看原文
查看缓存全文

缓存时间: 2026/07/15 10:52

# 傅里叶变换笔记 来源:https://eli.thegreenplace.net/2026/notes-on-the-fourier-transform 傅里叶级数是分析周期函数的强大工具。但对于不重复的函数呢?我们已经看到(https://eli.thegreenplace.net/2026/notes-on-fourier-series/),对于定义在有限区间上的非周期函数,只要我们不关心其在该区间之外的行为,就可以计算其傅里叶级数。 现在,让我们将这个想法扩展到**从不**重复的函数,即定义在区间 \\((-\infty, \infty)\\) 上的非周期函数。 ## 可视化非重复函数的傅里叶级数 为了引入后续内容,让我们回顾一下之前关于傅里叶级数的文章(https://eli.thegreenplace.net/2026/notes-on-fourier-series/)中使用的例子: 通过对 \\([-L, L]\\) 进行奇延拓。在那篇文章中,为了使傅里叶级数成立,我们假设 \\(t(x)\\) 以周期 \\(2L\\) 在整个数轴上重复。现在,让我们面对现实——它实际上并不重复——并观察我们的傅里叶级数会如何表现。 回顾一下,逼近 \\(t(x)\\) 的傅里叶级数是正弦级数(因为它是奇函数): \\[ t(x) \approx \sum_{n=1}^{N} b_n \sin\left(\frac{n\pi x}{L}\right) \\] 以下可视化是交互式的。默认情况下,它显示 \\(t(x)\\)(及其奇延拓)且没有傅里叶级数逼近。我们将通过一系列步骤并观察结果: **n**(傅里叶级数中的项数) **L** **x min** **x max** **第 1 步**:将 **n** 设置为某个非零值;当值为 3 时,逼近结果已经非常好。 频率间隔为 \\(\frac{\pi}{L}\\)(这是正弦项中 \\(x\\) 的系数)。注意,傅里叶级数每 \\(2L\\) 重复一次,正如预期。 **第 2 步**:将 \\(L\\) 增加到 6。这意味着我们构建级数时假设 \\(t(x)\\) 的周期为 12,而不是 4。注意现在的傅里叶级数每 12 重复一次,且匹配度不如之前。我们可以将 **n** 增加到更高的值以改善匹配。随着 \\(n\\) 增大,相邻频率之间的间隔减小。 **第 3 步**:将 \\(L\\) 增加到 10。我们不再看到重复,所以可以随意增加 **x min** 和 **x max** 的值直到看到为止。再次注意,我们需要添加越来越多的系数来匹配这个更大的 \\(L\\),且相邻频率的间隔变得更小。 增大 \\(L\\) 意味着我们的函数在越来越大的区间上重复。这个过程的逻辑结论是问——如果函数**从不**重复,即 \\(L \to \infty\\),会发生什么?虽然数学上不严格,但这里的视觉实验让我们可以做出一些推测:我们很可能需要无限多的系数才能实现良好的逼近,而且这些系数之间的间隔将趋于零。 换句话说,我们将不再得到离散的系数集,而是得到一个连续的线,或者说一个**函数**。这个过程中产生的函数就是 \\(t(x)\\) 的傅里叶变换,下一节将展示其数学推导。 ## 当 \\(L \to \infty\\) 时,从傅里叶级数到傅里叶变换 在这些笔记中,我们将使用傅里叶级数的复指数形式: \\[ f(x) = \sum_{n=-\infty}^{\infty} c_n e^{i n \omega_0 x}, \quad c_n = \frac{1}{2L} \int_{-L}^{L} f(x) e^{-i n \omega_0 x} dx, \quad \omega_0 = \frac{\pi}{L} \\] 我们感兴趣的是定义在 \\((-\infty, \infty)\\) 上的非周期函数 \\(f(x)\\)。因此,我们将探讨当 \\(L \to \infty\\) 时上述方程的行为。 首先,让我们对符号做一点改动。我们不使用周期 \\(2L\\) 来表达公式,而是使用第 \\(n\\) 次谐波的角频率 \\(\omega_n = n\omega_0\\): \\[ f(x) = \sum_{n=-\infty}^{\infty} c_n e^{i \omega_n x} \\] 使用 \\(\Delta \omega = \omega_{n} - \omega_{n-1} = \omega_0 = \frac{\pi}{L}\\) 作为两个相邻频率之间的间隔。 使用这个符号,\\(c_n\\) 可以表示为: \\[ c_n = \frac{\Delta \omega}{2\pi} \int_{-L}^{L} f(x) e^{-i \omega_n x} dx \\] 到目前为止,这里没有新的见解,只是一些新符号。现在我们用它来促进下一步。 由于 \\(L = \frac{\pi}{\Delta \omega}\\),于是 \\(\frac{1}{2L} = \frac{\Delta \omega}{2\pi}\\)。让我们计算当 \\(L \to \infty\\) 时 \\(f(x)\\) 的傅里叶级数表示的极限: \\[ f(x) = \lim_{L \to \infty} \sum_{n=-\infty}^{\infty} \frac{\Delta \omega}{2\pi} \left[ \int_{-L}^{L} f(t) e^{-i \omega_n t} dt \right] e^{i \omega_n x} \\] 并将最新的式子代入此式,将其虚拟积分变量从 \\(x\\) 改为 \\(t\\) 以避免混淆\\(^{[1]}\\)。 稍微重新排序,并将方括号内的积分限中的 \\(L\\) 替换为 \\(\pi/\Delta \omega\\): \\[ f(x) = \lim_{\Delta \omega \to 0} \frac{1}{2\pi} \sum_{n=-\infty}^{\infty} \left[ \int_{-\pi/\Delta \omega}^{\pi/\Delta \omega} f(t) e^{-i \omega_n t} dt \right] e^{i \omega_n x} \Delta \omega \\] 仔细看这个极限下的求和,这是一个黎曼和(见附录 A)!括号内的项是 \\(w\\) 的“采样”版本,而 \\(\Delta \omega \to 0\\)。因此,我们可以将其替换为一个积分,将 \\(\omega_n\\) 变为 \\(\omega\\),将 \\(\Delta \omega\\) 变为 \\(d\omega\\)\\(^{[2]}\\): \\[ f(x) = \frac{1}{2\pi} \int_{-\infty}^{\infty} \left[ \int_{-\infty}^{\infty} f(t) e^{-i \omega t} dt \right] e^{i \omega x} d\omega \\] 内层积分被称为 \\(f(x)\\) 的**傅里叶变换**,记作\\(^{[3]}\\): \\[ F(\omega) = \int_{-\infty}^{\infty} f(t) e^{-i \omega t} dt \\] 而 \\(f(x)\\) 的完整方程就是**逆**傅里叶变换: \\[ f(x) = \frac{1}{2\pi} \int_{-\infty}^{\infty} F(\omega) e^{i \omega x} d\omega \\] ## 计算傅里叶变换的示例 让我们以我们最喜欢的奇三角脉冲为例,计算其傅里叶变换。该函数的数学定义和图示已在本文前面展示。注意,我们并没有周期性地延拓这个函数——它在区间 \\([-1, 1]\\) 之外为零;这正是为什么我们需要傅里叶变换——正如我们已经看到的,傅里叶级数行不通,因为它重构的函数最终会开始重复。 我们要找出: \\[ T(\omega) = \int_{-\infty}^{\infty} t(x) e^{-i \omega x} dx \\] 为了计算这个积分,让我们使用欧拉公式分解复指数: \\[ T(\omega) = \int_{-1}^{1} t(x) \cos(\omega x) dx - i \int_{-1}^{1} t(x) \sin(\omega x) dx \\] 由于我们的 \\(t(x)\\) 是奇函数,第一个积分(余弦部分)为零(https://eli.thegreenplace.net/2025/notes-on-even-and-odd-functions/)。此外,\\(t(x) \sin(\omega x)\\) 是偶函数,所以我们可以写成: \\[ T(\omega) = -2i \int_{0}^{1} t(x) \sin(\omega x) dx = -2i \int_{0}^{1} (1 - x) \sin(\omega x) dx \\] 我们已经计算过一个非常相似的积分,就在关于傅里叶级数的文章(https://eli.thegreenplace.net/2026/notes-on-fourier-series/)中,所以让我们直接跳到结果: \\[ T(\omega) = -2i \left( \frac{\sin \omega}{\omega} - \frac{1 - \cos \omega}{\omega^2} \right) \\] 唯一剩下的困难是它在 \\(\omega = 0\\) 处的值,初看似乎未定义(除零)。然而,注意当 \\(\omega \to 0\\) 时,分子也趋于 0,所以我们可以使用洛必达法则(两次!)求出: \\[ \lim_{\omega \to 0} T(\omega) = 0 \\] 因此: \\[ T(\omega) = \frac{-2i}{\omega^2} (\omega \sin \omega - 1 + \cos \omega) \\] 这个函数是复值的;实际上,它是纯虚数。如何可视化它?一种常见的方法是将复值函数的幅度和相位分开绘制。 \\(T(\omega)\\) 的幅度是: \\[ |T(\omega)| = \frac{2}{\omega^2} |\omega \sin \omega - 1 + \cos \omega| \\] 由于 \\(T(\omega)\\) 是纯虚数,相位只有两种可能: * 当分子为正时,得到负的虚数,相位为 \\(-\pi/2\\)。 * 当分子为负时,得到正的虚数,相位为 \\(\pi/2\\)。 * 最后,当 \\(T(\omega) = 0\\) 时(当 \\(\omega = 0\\) 时发生,由我们之前的分析,但也当 \\(w\\) 是 \\(\pi\\) 的整数倍时),相位未定义。 以下是 \\(T(\omega)\\) 相对于 \\(w\\) 的幅度和相位图: [此处插入图:t(x) 傅里叶变换的幅度和相位] 通常将 \\(F(\omega)\\) 称为 \\(f(x)\\) 的**频域**表示。 ## 函数的频域表示 当我们处理的函数定义域是**时间**时(例如,\\(f(t)\\) 中的 \\(t\\) 代表时间),这在信号与系统的研究中很常见,傅里叶变换可以看作是计算该函数的**频域**表示。 再次给出傅里叶变换公式: \\[ F(\omega) = \int_{-\infty}^{\infty} f(t) e^{-i \omega t} dt \\] 它接受 \\(f(t)\\)——函数的**时域**表示,并将其转换为 \\(F(\omega)\\)——**频域**表示。对于性质良好的函数,这两个表示是**对偶**的——每个表示都完整地描述了函数,只是方式不同。 要从频域表示转换回时域,我们使用逆傅里叶变换: \\[ f(t) = \frac{1}{2\pi} \int_{-\infty}^{\infty} F(\omega) e^{i \omega t} d\omega \\] 时域图(\\(f(t)\\))显示信号随时间的变化,而频域图(\\(F(\omega)\\))显示信号在所有可能频率上的分布。此外,正如我们已经看到的,\\(F(\omega)\\) 是复值的。因此,每个频率都有幅度和相位:幅度告诉我们该频率的贡献有多强,而相位告诉我们该分量是如何移位的。 频域在信号分析中非常有用;例如,在设计滤波器时。 傅里叶变换还具有许多在信号分析和处理中非常有用的性质。但首先,让我们讨论一下,为了应用傅里叶变换,“性质良好的函数”是什么意思。 ## 傅里叶变换的存在条件 傅里叶变换最简单的存在条件是绝对可积性(也称为勒贝格可积): \\[ \int_{-\infty}^{\infty} |f(x)| dx < \infty \\] 在这个条件下,\\(F(\omega)\\) 在整个 \\(\omega\\) 域上存在,是连续的,并且在 \\(|\omega| \to \infty\\) 时消失(趋于 0)\\(^{[4]}\\)。 虽然这个条件是充分的,但并非必要;有些性质不太好的函数,在一定的限制下也有定义的傅里叶变换。在这些笔记中,我们主要关注实际工程中使用的性质良好的函数,因此我们不会讨论其他情况。 对于实际世界的函数,另一个常见的假设是当 \\(|x| \to \infty\\) 时它们消失(趋于 0)。虽然这并非绝对可积性的直接结果\\(^{[5]}\\),但在工程中是一个合理的假设。毕竟,现实世界的信号具有有限能量。 直观上,当我们还假设 \\(f(x)\\) 是**一致连续**(https://en.wikipedia.org/wiki/Uniform_continuity)的时,在无穷远处消失的假设是合乎逻辑的结论,因为否则在 \\((-\infty, \infty)\\) 上的总面积如何可能是有限的? 这个讨论的一个重要结果是傅里叶变换**不适合**周期函数。以间隔重复的函数**不是绝对可积的**。对于周期函数,我们使用傅里叶级数。 ## 傅里叶变换的一些有用性质 **线性性** 傅里叶变换是线性算子,因为积分是线性的: \\[ \mathcal{F}\\{\alpha f(x) + \beta g(x)\\} = \alpha \mathcal{F}\\{f(x)\\} + \beta \mathcal{F}\\{g(x)\\} \\] 逆傅里叶变换也是如此;很容易证明: \\[ \mathcal{F}^{-1}\\{\alpha F(\omega) + \beta G(\omega)\\} = \alpha \mathcal{F}^{-1}\\{F(\omega)\\} + \beta \mathcal{F}^{-1}\\{G(\omega)\\} \\] **缩放性** 如果我们用一个常数缩放函数的定义域,其变换只会稍微改变: \\[ \mathcal{F}\\{f(ax)\\} = \int_{-\infty}^{\infty} f(ax) e^{-i \omega x} dx \\] 让我们进行变量替换 \\(u = ax\\): \\[ \mathcal{F}\\{f(ax)\\} = \frac{1}{|a|} \int_{-\infty}^{\infty} f(u) e^{-i \omega u/a} du \\] 这是傅里叶变换在 \\(\omega/a\\) 处的值,所以: \\[ \mathcal{F}\\{f(ax)\\} = \frac{1}{|a|} F\left(\frac{\omega}{a}\right) \\] 这里有一个小问题;当 \\(a\\) 为负时,积分限应该翻转,导致变换前面出现负号。所以我们可以写成: \\[ \mathcal{F}\\{f(ax)\\} = \frac{1}{|a|} F\left(\frac{\omega}{a}\right) \\] 这对任何 \\(a \neq 0\\) 都成立。 这个性质在思考信号时很直观:假设 \\(a > 1\\),那么 \\(f(ax)\\) 意味着信号在时域上被**压缩**了 \\(a\\) 倍。缩放性质说频域被用相同的因子**扩展**了;换句话说,更高的频率变得更突出,因为我们需要更锐利的过渡来表示压缩后的信号。 **时移** 如果我们对输入信号进行时移一个常数 \\(a\\),傅里叶变换会发生什么:\\(f(x - a)\\)。根据定义: \\[ \mathcal{F}\\{f(x - a)\\} = \int_{-\infty}^{\infty} f(x - a) e^{-i \omega x} dx \\] 代入 \\(u = x - a\\),我们得到 \\(dx = du\\),所以: \\[ \mathcal{F}\\{f(x - a)\\} = \int_{-\infty}^{\infty} f(u) e^{-i \omega (u + a)} du = e^{-i \omega a} \int_{-\infty}^{\infty} f(u) e^{-i \omega u} du = e^{-i \omega a} F(\omega) \\] **导数的变换** 一个非常常用的性质,常用于偏微分方程的求解;让我们计算 \\(f(x)\\) 的导数的傅里叶变换: \\[ \mathcal{F}\\{f'(x)\\} = \int_{-\infty}^{\infty} f'(x) e^{-i \omega x} dx \\] 我们将使用分部积分法,其中 \\(u = e^{-i \omega x}\\) 且 \\(dv = f'(x) dx\\)。因此,\\(du = -i \omega e^{-i \omega x} dx\\) 且 \\(v = f(x)\\): \\[ \mathcal{F}\\{f'(x)\\} = \left[ f(x) e^{-i \omega x} \right]_{-\infty}^{\infty} + i \omega \int_{-\infty}^{\infty} f(x) e^{-i \omega x} dx \\] 回顾“存在条件...”一节中关于 \\(f(x)\\) 在无穷远处消失的假设。因此,上面方程的第一部分为零,我们得到: \\[ \mathcal{F}\\{f'(x)\\} = i \omega F(\omega) \\] **卷积的变换** 两个连续函数 \\(f(x)\\) 和 \\(g(x)\\) 之间的卷积定义为: \\[ (f * g)(x) = \int_{-\infty}^{\infty} f(t) g(x - t) dt \\] 让我们计算这个函数的傅里叶变换: \\[ \mathcal{F}\\{f * g\\} = \int_{-\infty}^{\infty} \left[ \int_{-\infty}^{\infty} f(t) g(x - t) dt \right] e^{-i \omega x} dx \\] 这一步将积分合并为双重积分,以及下一步(改变积分顺序)的可行性依赖于**富比尼定理**(https://en.wikipedia.org/wiki/Fubini%27s_theorem)以及我们对 \\(f(x)\\) 和 \\(g(x)\\) 是勒贝格可积的假设。 交换积分顺序: \\[ \mathcal{F}\\{f * g\\} = \int_{-\infty}^{\infty} f(t) \left[ \int_{-\infty}^{\infty} g(x - t) e^{-i \omega x} dx \right] dt \\] 现在,在内层积分中,\\(f(t)\\) 不依赖于 \\(x\\),所以我们可以将其提出来: \\[ \mathcal{F}\\{f * g\\} = \int_{-\infty}^{\infty} f(t) \left[ \int_{-\infty}^{\infty} g(x - t) e^{-i \omega x} dx \right] dt \\] 内层积分正是时移后的 \\(g\\) 的傅里叶变换,所以我们可以写成: \\[ \mathcal{F}\\{f * g\\} = \int_{-\infty}^{\infty} f(t) e^{-i \omega t} G(\omega) dt \\] 剩下的积分就是 \\(f(x)\\) 的傅里叶变换,所以: \\[ \mathcal{F}\\{f * g\\} = F(\omega) G(\omega) \\] 时域中的卷积转化为频域中的乘法!这个结果在信号处理中非常重要,被称为**卷积定理**。 ## 附录 A:黎曼和与定积分 假设我们有一个函数 \\(f(x)\\),我们想要知道该函数图形与 \\(x\\) 轴在某个区间 \\([a, b]\\) 之间围成的面积。一种方法是对区间进行**划分**(https://en.wikipedia.org/wiki/Partition_of_an_interval): \\[ a = x_0 < x_1 < x_2 < \cdots < x_n = b \\] 并计算每个划分元素下 \\(f\\) 的面积。然后我们可以用矩形来近似这些子区域,如下所示: [此处插入黎曼和图示] 我们将每个矩形的面积记为 \\(A_i\\): - \\(\Delta x_i = x_i - x_{i-1}\\) 是一个区间的宽度(假设均匀划分,但对于非均匀划分数学上同样成立)。 - \\(x_i^*\\) 是区间 \\([x_{i-1}, x_i]\\) 中的某个值。 有许多选择区间中哪一点作为 \\(x_i^*\\) 的方法:左端点(\\(x_{i-1}\\))、右端点(\\(x_i\\))、中点(如图中所示)或介于两者之间的任意一点。对于我们目的而言,这种区别并不重要,正如我们很快会看到的。 我们可以用**黎曼和**来近似区间 \\([a, b]\\) 上 \\(f\\) 曲线下的面积,使用均匀划分: \\[ S_n = \sum_{i=1}^{n} f(x_i^*) \Delta x, \quad \Delta x = \frac{b - a}{n} \\] 如果 \\(f\\) 在 \\([a, b]\\) 上连续,那么当 \\(n \to \infty\\) 时: \\[ \lim_{n \to \infty} S_n = \int_{a}^{b} f(x) dx \\] 这就是所谓的**黎曼积分**,或简称为定积分。极限过程就是为什么 \\(x_i^*\\) 的具体选择不重要:当 \\(n \to \infty\\) 时,\\(\Delta x \to 0\\),区间内的所有点都一样好。 --- [\[1\]](https://eli.thegreenplace.net/2026/notes-on-the-fourier-transform#footnote-reference-1)注意 \\(c_n\\) 不是 \\(x\\) 的函数;在其定义中,\\(x\\) 仅作为虚拟积分变量,可以任意命名。当我们将其代入 \\(f(x)\\) 的方程时,\\(f(x)\\) 是 \\(x\\) 的函数,我们必须小心。因此重命名。 [\[2\]](https://eli.thegreenplace.net/2026/notes-on-the-fourier-transform#footnote-reference-2)注意我们应用了极限;因此,内层积分(方括号内的)的积分限现在也介于 \\(-\infty\\) 和 \\(\infty\\) 之间。 [\[3\]](https://eli.thegreenplace.net/2026/notes-on-the-fourier-transform#footnote-reference-3)为了保持一致性,这里我们将虚拟积分变量改回 \\(x\\)。再次强调,由于 \\(x\\) 只是积分变量且积分是定积分,最终结果不依赖于 \\(x\\)。它是 \\(\omega\\) 的函数。 [\[4\]](https://eli.thegreenplace.net/2026/notes-on-the-fourier-transform#footnote-reference-4)在无穷远处消失的部分是黎曼-勒贝格引理;你可以在维基百科上找到证明。 [\[5\]](https://eli.thegreenplace.net/2026/notes-on-the-fourier-transform#footnote-reference-5)病态的绝对可积函数可以在无穷远处有尖峰但总面积仍然有限。

相似文章

离散时间傅里叶级数与变换笔记

Eli Bendersky

本文详细笔记了离散时间傅里叶级数(DTFS)与离散时间傅里叶变换(DTFT),涵盖其理论基础及信号处理应用实例。

观察圆圈、正弦与信号

Hacker News Top

介绍一个交互式网站,通过可视化和动画解释离散傅里叶变换和数字信号处理概念。

新手学FFT

Lobsters Hottest

一个面向初学者的快速傅里叶变换(FFT)指南,使用R语言,解释如何解读fft函数的输出、幅度、相位以及奈奎斯特极限。