离散傅里叶变换和连续傅里叶变换的区别?

计算科学 离散化 傅里叶变换
2021-12-17 18:26:09

我正在尝试使用 Python 可视化给定初始波函数的自由粒子的时间依赖性,我只是想知道是否可以使用 NumPy 的内置 FFT 实现来查找积分的系数

Ψ(x,t)=12πϕ(k)exp[i(kxk22mt)]dk

在我以此为基础的教科书中,他们解决了ϕ(k)通过在给定初始函数的情况下分析地找到傅立叶变换Ψ(x,0). 从逻辑上讲,这似乎是在进行离散傅立叶变换来模拟对表示的值数组的傅立叶变换Ψ(x,0)没关系,但我想知道在使用离散傅立叶变换查找时是否有一些我可能遗漏的细微之处实际上改变了我的结果的解释ϕ(k)而不是一个连续的。我想,更一般地说,除了应用于离散变量而不是连续变量集的事实之外,离散傅里叶变换和连续傅里叶变换之间有什么区别。

1个回答

欢迎来到 scicomp!

你想绘图还是做一个模拟?

在离散傅立叶空间内进行数值模拟没有问题。它有几个优点和缺点。

一旦你对你的轮廓进行了傅立叶变换,在你的例子中是一个波幅,那么计算导数就很容易了。你可以简单地乘以i kj, 和kj作为该特定系数的波数。因此,在 DFT 代码中计算导数非常方便。(拉普拉斯算子基本上是(ikj)2)!)

实空间到傅里叶空间的变换可以通过 FFT 算法完成,取O(NLOG(N))如果我没记错的话。有性能库可以解决这个问题。

一个问题当然是你不能直接计算非线性。如果你有一个系数数组r一世在真实空间中,你想计算一个非线性,那么你可以简单地计算(r一世)2等等。在傅立叶空间中这是不可能的。因此,例如在纳维斯托克斯代码中,非线性是在实际空间中计算的,然后可以重新转换回来以进行其余的数值处理。

另一个限制是您仅限于周期性或准周期性问题。由于计算的基础本质上是正弦和余弦函数,因此没有解决任何边界条件或不连续性的好方法。如果你想在一个大的空域中查看一个自由粒子,你应该没问题。

你的意思是什么类型的时间依赖?你是在陈述初始条件,但并不是你想要做的事情的动态!