Services & Resources / Wolfram Forums
MathGroup Archive
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Fourier Transforms

  • To: mathgroup at
  • Subject: [mg64805] Re: Fourier Transforms
  • From: Paul Abbott <paul at>
  • Date: Sat, 4 Mar 2006 02:35:16 -0500 (EST)
  • Organization: The University of Western Australia
  • References: <du6nkt$5mv$>
  • Sender: owner-wri-mathgroup at

In article <du6nkt$5mv$1 at>,
 "Ben C" <benjamin.chamberlain at> wrote:

> On the first of March I posted an appeal for help with some Fourier
> transforms. Since then a couple of people have suggested I post the
> actual transforms. I am trying to inverse Fourier transform the
> functions
> p / (sqrt(1+p^2 + sqrt(1+p^2 ))   and   1/(sqrt(1+p^2 - sqrt(1+p^2 ))
> from p to x space.
> Any advice would again be extremely gratefully received,

Your expressions do not make sense (unmatched parens). As Sseziwa Mukasa 
suggested, I assume that you are trying to compute the inverse Fourier 
transform of




I would be interested to know how these functions arose in the first 
place -- and I would be surprised if either had a closed-form solution.

Nevertheless, we can compute a series expansion solution.

First, note that powers of p can be generated by differentiation with 
respect to x.

  D[InverseFourierTransform[f[p], p, x], x] ==

  -I InverseFourierTransform[p f[p], p, x]

Next, note that 

  InverseFourierTransform[1/Sqrt[p^2 + 1], p, x]

  Sqrt[2/Pi] BesselK[0, x Sign[x]]

and that 1/Sqrt[p^2 + 1] is quite a good approximation to 
1/Sqrt[1+p^2+Sqrt[1+p^2]]. One can use (asymptotic) series expansion to 
improve the approximation:

  ser[n_][p_] := Normal[Series[1/Sqrt[1+p^2+Sqrt[1+p^2]] /. 
   p -> Sqrt[x^2 - 1], {x, Infinity, n}]] /. x -> Sqrt[p^2 + 1]

Here are the first 3 terms of this series: 


  1/Sqrt[p^2 + 1] - 1/(2 (p^2 + 1)) + 3/(8 (p^2 + 1)^(3/2))

Importantly, the inverse Fourier transform of each term in this series 
is straightforward:

  inv[a_][x_] = InverseFourierTransform[(p^2 + 1)^a, p, x]

  (2^(a + 1) Abs[x]^(-a - 1/2) BesselK[a + 1/2, x Sign[x]])/Gamma[-a]

It is instructive to compare plots of ser[n][p] to that of 


   Plot[Evaluate[Table[ser[n][p], {n, 3, 8}]], 
    {p, -10, 10}, PlotStyle -> Table[Hue[i], {i, 0, 1, 1/6}]],
   Plot[1/Sqrt[1 + p^2 + Sqrt[1 + p^2]], {p, -10, 10}]]

The convergence is good except for -2 < p < p. Empirically, the 
approximation is greatly improved if the coefficient of the 
highest-order term (the first term in this case) is reduced by 1/2.

   Plot[Evaluate[Table[ser[n][p]-First[ser[n][p]]/2, {n, 3, 8}]], 
    {p, -10, 10}, PlotStyle -> Table[Hue[i], {i, 0, 1, 1/6}]],
   Plot[1/Sqrt[1 + p^2 + Sqrt[1 + p^2]], {p, -10, 10}]]

Hence, an accurate series approximation to the inverse Fourier transform 
of 1/Sqrt[1+p^2+Sqrt[1+p^2]] is given by

  (ser[10][p]-First[ser[10][p]]/2)/. (p^2 + 1)^(a_) :> inv[a][x]

This expansion simplifies for x > 0 or x < 0. For example, collecting 
terms for x > 0, one obtains,

  Collect[Simplify[%, x > 0], {BesselK[_, _], Exp[_]}, Simplify]

Finally, the inverse Fourier transform of p/Sqrt[1+p^2+Sqrt[1+p^2]] is 
obtained by differentiation with respect to x. (It is easiest to work 
with the  x > 0 and x < 0 cases separately.)

To compute the inverse Fourier transform of 1/Sqrt[1+p^2-Sqrt[1+p^2]] 
there is an extra complexity (which makes me wonder if your original 
expression is correct. Is p missing from the numerator?); it is singular 
at p = 0. The singularity there is

  Normal[Series[1/Sqrt[1 + p^2 - Sqrt[1 + p^2]], {p, 0, 0}]]


Now, since

  InverseFourierTransform[1/p, p, x]

  -I Sqrt[Pi/2] Sign[x]

we can handle this problem by computing the series expansion of 

  1/Sqrt[1+p^2-Sqrt[1+p^2]] - Sqrt[2/p^2]

exactly as we did above, but now the convergence is not as nice.


Paul Abbott                                      Phone:  61 8 6488 2734
School of Physics, M013                            Fax: +61 8 6488 1014
The University of Western Australia         (CRICOS Provider No 00126G)    

  • Prev by Date: Re: Re: Possible Bug in ArcTan ?
  • Next by Date: FindInstance for sudoku
  • Previous by thread: Re: Re: Fourier Transforms
  • Next by thread: NSolve and array