Re: Fourier Trasform of a Bessel Function
- To: mathgroup at smc.vnet.net
 - Subject: [mg87814] Re: Fourier Trasform of a Bessel Function
 - From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
 - Date: Fri, 18 Apr 2008 02:36:53 -0400 (EDT)
 - Organization: The Open University, Milton Keynes, UK
 - References: <fu6mij$nno$1@smc.vnet.net>
 
Vladislav wrote:
> I try to make the following
> 
>> FourierTransform[BesselJ[n, x], x, w];
>> % /. n -> 0
> 
> I try
>> FourierTransform[BesselJ[0, x], x, w]
> I obtain another result. Why?
Vladislav,
The issue is that, by default, FourierTransform[] does not 
generate/check any conditions on the parameters and thus returns the 
most general case.
So, your first expression returns zero for n == 0, which is true for any 
w > 1 or w < -1. However, for -1 < w < 1 the true value is not zero (see 
below). And of course the expression is not defined for w == 1 or w == -1.
You can force FourierTransform[] to generate conditions and also put 
some constraints on the parameters thanks to the options 
GenerateConditions -> True and Assumptions, perspectively.
In[1]:= expr = FourierTransform[BesselJ[0, x], x, w]
Out[1]= (Sqrt[2/\[Pi]] (-HeavisideTheta[-1 + w] +
    HeavisideTheta[1 + w]))/Sqrt[1 - w^2]
In[2]:= FullSimplify[expr, Assumptions -> w > 1]
Out[2]= 0
In[3]:= FullSimplify[expr, Assumptions -> w < -1]
Out[3]= 0
In[4]:= FullSimplify[expr, Assumptions -> -1 < w < 1]
Out[4]= Sqrt[2]/Sqrt[\[Pi] - \[Pi] w^2]
In[5]:= Plot[(-HeavisideTheta[-1 + w] +
    HeavisideTheta[1 + w]), {w, -5, 5}]
Plot[expr, {w, -5, 5}]
In[7]:= FourierTransform[BesselJ[n, x], x, w,
  GenerateConditions -> True]
Out[7]= If[w^2 > 1 && Re[n] > -1, (
  E^((I n \[Pi])/
   2) (-w + Abs[w]) (Sqrt[-1 + w^2] + Abs[w])^-n Sin[n \[Pi]])/(
  Sqrt[2 \[Pi]] w Sqrt[-1 + w^2]),
  FourierTransform[BesselJ[n, x], x, w, GenerateConditions -> True]]
In[8]:= % /. n -> 0
Out[8]= If[w^2 > 1, (
  E^((I 0 \[Pi])/
   2) (-w + Abs[w]) (Sqrt[-1 + w^2] + Abs[w])^-0 Sin[0 \[Pi]])/(
  Sqrt[2 \[Pi]] w Sqrt[-1 + w^2]),
  FourierTransform[BesselJ[0, x], x, w, GenerateConditions -> True]]
In[9]:= % // Simplify
Out[9]= \[Piecewise] {
   {((Sqrt[2/\[Pi]] (-HeavisideTheta[-1 + w] + HeavisideTheta[1 + w]))/
    Sqrt[1 - w^2]), -1 <= w <= 1}
  }
Regards,
-- Jean-Marc