MathGroup Archive 2009

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

Search the Archive

Re: Hilbert transform bug in 7.0.3?

  • To: mathgroup at
  • Subject: [mg100878] Re: Hilbert transform bug in 7.0.3?
  • From: dh <dh at>
  • Date: Wed, 17 Jun 2009 04:36:26 -0400 (EDT)
  • References: <h19i5r$p4g$>

Hi Nacho,

your problem comes from the fact that you are using PrincipalValue -> 

True together with DiracDelta. Consider the simplest case:

Integrate[DiracDelta[x], {x, -Infinity, Infinity}]

Integrate[DiracDelta[x], {x, -Infinity, Infinity},PrincipalValue -> True]

The first integral gives 1 in agreement with the definition of 

DiracDelta. The second integral is actually a limit of two integrals. 

One from -Infinity to epsilon. The second from epsilon to Infinity. For 

epsilon > 0 both integrals are zero. Therefore, the limit is also zero.


Nacho wrote:

> Hello.


> I've trying the Hilbert Transform defined in Mathworld as:


> HilbertTransform[f_, x_, y_, assum___?OptionQ] :=

>  Integrate[f/(x - y), {x, -Infinity, Infinity},

>    PrincipalValue -> True, assum]/Pi



> I've trying to transform some functions but DiracDelta[x] seems to

> fail:


> In[5]:= HilbertTransform[DiracDelta[x],x,y]

> Out[5]= 0


> But it should be -1/(Pi y) according with Mathworld or 1/(Pi y)

> according with Wikipedia, but not just 0. Older versions seems to

> work, as you can see in Mathworld's notebook.


> Is this a bug? Any other way to calculate Hilbert Transforms in

> 7.0.3?


> Thanks.



  • Prev by Date: Re: Re: Re: Combined Set, SetDelayed
  • Next by Date: Re: Continuous updating in Manipulate
  • Previous by thread: Hilbert transform bug in 7.0.3?
  • Next by thread: Re: Hilbert transform bug in 7.0.3?