【问题标题】:Fourier integral/ Fourier transformation of an oscillatory function with FFT用 FFT 对振荡函数进行傅里叶积分/傅里叶变换
【发布时间】:2012-05-18 04:09:54
【问题描述】:

f(x) = cos(x^2)g(k) = pi^0.5 cos((pi*k)^2 - pi/4) 是傅里叶对。

我想通过傅里叶使用 FFT 对 f(x) 进行积分来重现 g(k),即

近似于Integrate[ f(x) * exp(2 pi * ikx), {x, -inf, inf} ]

Sum[ fn * exp(2 pi * ik x_n), {n, 0, N-1} ] * Delta_x

但是,如果结果完全一致,则结果仅在非常小的k 范围内与g(k) 一致(相同的代码适用于平滑傅里叶对,例如高斯函数)。我想问题是为NDelta_x 选择合适的值。是否有任何既定的规则来选择它们?我在哪里可以找到文献中的相关主题(我已经阅读了数字食谱第 13.9 节,但它似乎并没有解决我的问题)?

【问题讨论】:

  • 很有趣,但您想要一个专注于数学的 Stack Exchange 网站。 math.stackexchange.com适用于任何级别的数学学习者和相关领域的专业人士)或 mathoverflow.com(研究级数学问题

标签: fft dft numerical-integration


【解决方案1】:

FFT 固有地用一个长度为 N 的矩形窗口对 f(x) 进行窗口化。对于在该窗口内不完全周期性的任何 k,这将产生不同的 g(k) 结果。您可以尝试选择 Delta_X 和 N,以便它们的结果是您想要的 k 的整数倍。

【讨论】:

  • 也许我的问题不是很清楚。 link 的另一个答案与我的问题更相关。无论如何感谢您的回答!
猜你喜欢
  • 2021-07-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多