Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2009

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

Search the Archive

Re: Different results with FourierTransform[]

  • To: mathgroup at smc.vnet.net
  • Subject: [mg97882] Re: Different results with FourierTransform[]
  • From: schochet123 at gmail.com
  • Date: Tue, 24 Mar 2009 05:34:14 -0500 (EST)
  • References: <gpl5sh$ou6$1@smc.vnet.net> <gpnscg$go5$1@smc.vnet.net>

In accordance with the theory of distributions, FourierTransform and
InverseFourierTransform are defined on a wider class of objects than
those for
which their direct definition in terms of Integrate converges.

For example,

In[1]:= FourierTransform[1, x, k, FourierParameters -> {1, -1}]
Out[1]= 2 Pi DiracDelta[k]

More relevant here is the example

In[2]:= FourierTransform[Sign[x], x, k, FourierParameters -> {1, -1}]
Out[2]= -2 I/k

Since Tanh[x] differs from Sign[x] by an integrable function, its
FourierTransform differs from that of Sign[x] by a bounded function.
(When the distributions given by the FourierTransform of Sign[x] and
of Tanh[x] are used in integrals those integrals must be understood
using principal values.)

Mathematica calculates the FourierTransform correctly:

In[3]:= FourierTransform[Tanh[x], x, k, FourierParameters -> {1, -1}]
Out[3]= -I Pi Csch[k Pi/2]

To verify that this is correct we can use the identity FourierTransform
[u'[x],x,k]==I k
FourierTransform[u[x],x,k], which is valid for distributions as well
as functions. Taking into account that the solution of the equation k d
[k]==0 for distributions d[k] is d[k]->C DiracDelta[k], we can rewrite
the above identity as FourierTransform[u[x],x,k] == FourierTransform
[u'[x],x,k]/(I k) + C DiracDelta[k]
When, as here, u is odd then C must vanish, which yields
FourierTransform[u[x],x,k] == FourierTransform[u'[x],x,k]/(I k)   (*
for odd u *)

The derivative of Tanh[x] is Sech[x]2, which is integrable and so has
a FourierTransform in the ordinary sense. And the FourierTransform of
Tanh[x] and of Tanh'[x] indeed satisfy the above identity:

In[4]:= FourierTransform[Tanh'[x], x, k, FourierParameters -> {1, -1}]
Out[4]=k Pi Csch[k Pi/2]

Unfortunately, there appears to be a bug in Mathematica's calculation
of
InverseFourierTransform of Tanh[x], as the original poster pointed
out. The fact that the answer obtained is wrong can be seen from the
fact that the answer is not odd, which contradicts the fact that the
FourierTransform and InverseFourierTransform of odd functions are odd.


Sorry if some people see this message twice; when I originally posted
it via thunderbird my message showed up in thunderbird on my local
site but not in google groups.

Steve


On Mar 17, 12:00 pm, Jens-Peer Kuska <ku... at informatik.uni-leipzig.de>
wrote:
> Hi,
>
> and more surprising I have a third one, and this is the
> correct one
>
> Integrate[Tanh[x]*Exp[I*x*p], {x, -Infinity, Infinity}]
>
> gives
>
> Integrate::idiv:Integral of E^(I*p*x) Tanh[x] does not converge on
> {-Infinity,Infinity}
>
> Regards
>    Jens
>
> Wieland Brendel wrote:
> > Dear reader,
> > I somewhat stumbled over the following behaviour of mathematica: I trie=
d
> > to calculate thefouriertransformof Tanh[x]. I did this in two ways:
>
> > 1. Directly:
> > InverseFourierTransform[Tanh[x], x, p]
>
> > 2. Indirectly:
> > InverseFourierTransform[Tanh[B x], x, p]
>
> > where I set B -> 1 in the end.
>
> > However, the result between the two approaches differs: Whereas in the
> > first approach I get a complex number (with both real and imaginary par=
t
> > being non-zero for almost all values of p), the result in the second
> > approach yields NO real part; the imaginary part however is the same as
> > in the first approach. Is there any explanation for this behaviour?
>
> > Thanks a lot in advance! I am really stuck with that...
> > Wieland



  • Prev by Date: Re: utterly confused by Lightweight Grid
  • Next by Date: Re: Re: Orthogonazlie with Method->"Householder"
  • Previous by thread: Re: Different results with FourierTransform[]
  • Next by thread: Re: Re: Different results with FourierTransform[]