0%

SMM02 半离散 Fourier 变换

本文是书籍 Spectral Method in MATLAB 第二章 Unbounded Grids: the Semidiscrete Fourier Transform 无界网格:半离散 Fourier 变换 笔记。

我们现在导出第一个谱方法,就是第一章的两边无限的矩阵。这种方法适用于离散的、无界的区域,因此不是一种实用的方法。但是,它确实介绍了推导和分析实用方法所需的数学思想。

半离散 Fourier 变换

无限网格用 表示,节点 ,其中 是所有整数的集合。

SMM0201.png

根据半离散傅里叶变换和有限带宽 函数插值的基本思想去推导 (1.4) 两边无限的矩阵。函数 () 的 Fourier 变换后的函数 定义为

可以解释为 在波数 时的振幅,将一个函数分解为其组成波的过程称为 Fourier 分析。相反地,我们可以从 通过 逆 Fourier 变换重构

这是傅里叶合成。变量 是物理变量, 是 Fourier 变量或波数。

现在考虑 上的值而不是 。在这种情况下, Fourier 变换及其逆的精确变换是存在的。关键点在于,由于空间域是离散的,波数 将不覆盖R的所有范围。相反,波数域是长度为 的有界区间,一个适当的选择是 。记住 是有界的,因为 是离散的:

SMM0202.png

产生这些联系的原因是一种称为混叠的现象。当 ,两个复指数函数 上是不相等的。如果我们限制 ,取 ,如果 的整数倍,对每一个 。因此,对于任何复指数 在网格 上有无限多的其他复指数( 的“混叠” )与之匹配。因此,在 长度的间隔内计算网格的波数就足够了,并且出于对称性的原因,我们选择了间隔

下图说明了函数 相互“混叠”。网格节点的表示限制到了 ,其中这两个函数是相同的。

SMM0203.png

“混叠”也出现在非数学生活中,例如西方电影中的“马车轮效应”。如果说照相机的快门每秒发出 24 次咔哒声,货车车轮上的辐条每秒通过垂直方向 20 次,然后车轮看起来好像以每秒 -4 辐条的速度旋转,即向后旋转。同一现象的更高频率“混叠”是频闪显微镜科学的基础,而空间而非时间的混叠会导致云纹。

对于函数 定义在 上节点 值为 ,半离散 Fourier 变换的定义如下

半离散 Fourier 逆变换为

半离散 Fourier 变换 (2.3) 通过梯形公式逼近 Fourier 变换 (2.1),半离散 Fourier 逆变换 (2.4)逼近 (2.2) 则是通过截断 。当 ,两对公式收敛。

如果“半离散 Fourier 变换”这个表达式不熟悉,那可能是因为我们给一个旧概念取了一个新名字。Fourier 级数表示有界区间上的函数,它是离散波数上复指数的和,如 (2.3)。我们用半离散 Fourier 变换来强调我们在这里关心的是逆问题:空间变量是离散的,Fourier 变量是连续的,属于有界区间 。从数学上讲,这与 Fourier 级数理论没有区别,Fourier 级数在许多书中都有介绍,是数学中应用最广泛的分支之一。

对于谱微分,我们需要一个插值函数,而反变换 上式 (2.4) 将给出一个插值函数。我们所要做的只是计算 的相同公式,而不仅仅是 。也就是说,在确定 之后,我们定义插值函数

这是一个关于 的解析函数,并且对每个 都有 。而且通过推导,Fourier 变换 通过 (2.1) 定义为

关于解析:函数 在点 处是解析的,如果它在 附近的复数意义上是可微的,或者如果它的 Taylor 级数收敛到

因此,p在 具有紧支集。我们说 的带限插值,这并不意味着 有紧支集,但该支集包含在特定区间 中。虽然对于任何网格函数都有一定数量的可能插值,但在这个意义上只有一个带限插值。这个结果被称为抽样定理,与Whittaker、Shannon 和 Nyquist 的名字有关。

我们准备给出在 上定义的函数 的谱微分的前两个描述。下面是一个

  • 给定 ,通过 (2.5) 确定其带限插值
  • .

另一个在 Fourier 空间中同样可以得到。如果可微函 有 Fourier 变换 ,则 的 Fourier 变换是

这个结果可以通过对 (2.2) 或 (2.5) 关于 微分得到,因此我们有一个等价的谱微分过程:

  • 给定 ,通过 (2.3) 计算其半离散 Fourier 变换.
  • 定义 .
  • 利用 通过 (2.4) 计算 .

这两种谱微分的描述在数学上都是完整的,但是我们还没有导出矩阵 (1.4) 的系数,为此,我们可以使用傅里叶变换回代并对带限插值 有更全面的了解。令 为克罗内克(Kronecker delta)函数,

通过 (2.3), 的半离散 Fourier 变换是一个常数: 对于所有的 。通过 (2.5), 的带限插值是

处的值为 1)。这个著名又漂亮的函数称为 函数,

Sir Edmund Whittaker 称 “···尊贵血统在整个家族中的一种函数,其独特的属性使其与资产阶级的兄弟分离。

既然我们知道如何插值 函数,我们可以插值任何函数。对于任意 ,带限插值是一个平移不变的过程, 的带限插值是 。一般网格函数 可以写成

因此,根据半离散 Fourier 变换的线性性质, 的带限插值是转换 函数的线性组合:

相应的导数

现在让我们导出 (1.4) 两边无限 Toeplitz 矩阵 的元素。上式(2.11) 可以导出 (1.5) 的矩阵方程,我们可以看出向量 是矩阵 的列 ,其他列通过适当地上下移动该列而获得。公式 (1.4) 的项是由微分练习 (2.8) 决定的

Program 3

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
% p3.m - band-limited interpolation

h = 1; xmax = 10; clf
x = -xmax:h:xmax; % computational grid
xx = -xmax-h/20:h/10:xmax+h/20; % plotting grid
for plt = 1:3
subplot(4,1,plt)
switch plt
case 1, v = (x==0); % delta function
case 2, v = (abs(x)<=3); % square wave
case 3, v = max(0,1-abs(x)/3); % hat function
end
plot(x,v,'.','markersize',14), grid on
p = zeros(size(xx));
for i = 1:length(x),
p = p + v(i)*sin(pi*(xx-x(i))/h)./(pi*(xx-x(i))/h);
end
line(xx,p), axis([-xmax xmax -.5 1.5])
set(gca,'xtick',[]), set(gca,'ytick',[0 1])
end

SMM0204.png

类似的模式适用于所有的谱配置方法。谱微分矩阵的第 列包含值 ,其中 是通过在 的离散 函数的全局插值。

Program 3 通过绘制定义在 (即 )上的三个离散函数及其带限插值。从输出结果的三个图中的第一个图可以清楚地看出, 函数是平滑的。第二个图描绘了离散方波的插值,显示了 插值对于逼近非光滑函数不是特别好。当 时,不连续处附近的振荡幅度不会减小,甚至在空间上也没有很好的局部化。这种在间断附近产生的振荡称为吉布斯现象。第三幅图显示了离散三角波或“hat函数”及其插值。这里的插值比较好,但仍然不令人印象深刻。实际上,正如我们将在第4章中详细解释的那样,插值的精度取决于 的光滑性,并且这些例子不是很平滑。每一个 的导数都提高了 1 阶精度。

为了找到高阶谱导数,我们可以多次对 微分。例如

结果告诉我们对称双无穷 Toeplitz 矩阵 的每一列的项对应的二阶导数是

本章小结

网格上的函数 有一个唯一的插值 ,它的频带仅限于 区间内的波数。我们可以通过计算 的半离散 Fourier 逆变换来计算网格上的 ,或者作为 函数平移的导数的线性组合。