According to the documentation, the multidimensional Fourier transform is defined as $$ \frac{1}{(2\pi)^{n/2}} \int_{-\infty}^\infty \int_{-\infty}^\infty \cdots f(t_1, t_2, \dots, t_n) \mathrm e^{\mathrm i(t_1 \omega_1 + t_2 \omega_2 + \dots + t_n \omega_n)} \mathrm d t_1 \mathrm d t_2 \dots \mathrm d t_n\text.$$ Define some assumptions:

$Assumptions = t > 0 && Element[a, Reals] && Element[b, Reals];

Now, I would expect if I do the 2D Fourier transform of $\mathrm e^{\frac{\mathrm i}{2} (x^2 + z^2) t}$, going $x \mapsto a$, $z \mapsto b$, that this factorizes and I could equally well do the product of the 1D Fourier transforms of $\mathrm e^{\frac{\mathrm i}{2} x^2}$ and $\mathrm e^{\frac{\mathrm i}{2} z^2}$. Integrate confirms this:

  Integrate[Exp[I/2 (x^2 + z^2) t] Exp[I (x a + z b)],
            {x, -Infinity, Infinity}, {z, -Infinity, Infinity}]
  Integrate[Exp[I/2 x^2 t] Exp[I x a], {x, -Infinity, Infinity}]
  Integrate[Exp[I/2 z^2 t] Exp[I z b], {z, -Infinity, Infinity}]

> True

Now I try the same with FourierTransform:

  FourierTransform[Exp[I/2 (x^2 + z^2) t], {x, z}, {a, b}]
  FourierTransform[Exp[I/2 x^2 t], x, a]
  FourierTransform[Exp[I/2 z^2 t], z, b]

> 1 + Exp[I (a^2 + b^2)/t] == 0

How does this strange behavior arise? The factored version of FourierTransform agrees with the explicit integration (if you put FourierParameters -> {1, 1}) while the 2D version is basically the conjugate of the correct solution. Note that if I remove t, both versions agree. Removing just the assumption that t be positive leads to a result that contains $\sqrt{-t^2}$ in the denominators, which then gives the wrong sign when the I is taken out.

  • $\begingroup$ I filed this as a bug report on June 18. $\endgroup$ – Benjamin Desef Jul 5 '18 at 13:39
  • $\begingroup$ According to WRI, this was fixed in Mathematica 12.0. $\endgroup$ – Benjamin Desef Dec 1 '19 at 14:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.