I was looking to numerically compute the Fourier transform of a function which can formally be represented as the infinite-order polynomial $$\varphi \, (\zeta ) = \sum_{t=0,2,4,\ldots}^\infty (-1)^t\, c_t\, \zeta^t \mbox{ and } c_t>0\, \forall \, t.$$ The coefficients are known to be such that the function $\varphi \, (\xi )$ is oscillatory. As an example, consider the Bessel function, which has the power-series representation: $$ J_0 (\zeta) = \sum_{t=0,2,4,\ldots} (-1)^{t/2} \frac{1}{(t/2)!\,\Gamma((t/2)+1)} (\zeta/2)^{t}.$$ In this case, the series can be analytically summed and its Fourier transform $$ f (\eta) = \int_{-\infty}^{\infty} \varphi \, (\zeta ) \exp\,(-\mathrm{i}\,\eta\,\zeta)\, \frac{\mathrm{d}\,\zeta}{2\pi}$$ can be calculated exactly. However, in principle, this need not be the case. Hence, I was wondering if there is a way to numerically find the Fourier transform, given a finite number of terms of such a series, without running into the delta function or its derivatives.

For concreteness' sake, returning to the example of the Bessel function, if I knew the coefficients $c_t$ up to, say, $t_{\max}$, could I somehow calculate a function that approximates $1/(\pi\, \sqrt{1-\eta^2}) $ (the exact Fourier transform).

  • $\begingroup$ Can you compute a representation of your function in a basis that doesn't blow up at Infinity? For example, could you compute the asymptotic expansion as $ζ \to \infty$? $\endgroup$
    – Carl Woll
    Commented Jun 9, 2017 at 0:17

1 Answer 1


I don't see how to do much with a regular power series. If you can instead generate an asymptotic series, then I think you might be able to do something. For instance, if we use your BesselJ function example:

series[n_] := Series[BesselJ[0,x], {x, Infinity, n}];
approx[n_] := FourierTransform[#, x, t]& /@ Expand @ Normal @ series[n]

It's pretty slow, but here is an approximate FT to asymptotic order 12:

a12 = approx[12]; //Timing

{168.169, Null}

Here is the exact FT:

exact = FourierTransform[BesselJ[0, x], x, t];

Finally, here are plots comparing them:

Plot[{a12, exact}, {t, -5, 5}, PlotLegends->"Expressions"]

enter image description here

Plot[a12, {t, -5, 5}]

enter image description here


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.