Re: Integrating DiracDelta to get UnitStep
- To: mathgroup at smc.vnet.net
- Subject: [mg91260] Re: Integrating DiracDelta to get UnitStep
- From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
- Date: Tue, 12 Aug 2008 04:46:14 -0400 (EDT)
- Organization: The Open University, Milton Keynes, UK
- References: <g7p2tm$arr$1@smc.vnet.net>
CRC wrote:
> I am a bit confused by Mathematica 6.0.3 behavior. I expect that:
>
> In[n]:= Integrate[DiracDelta[x], {x, -\[Infinity], t},
> Assumptions -> Im[t] == 0]
>
> Will produce:
>
> Out[n]= UnitStep[t]
>
> But instead it produces:
>
> Out[n]= 1
>
> However,
>
> In[n+1]:= Plot[ Integrate[DiracDelta[x], {x, -\[Infinity], t},
> Assumptions -> Im[t] == 0], {t, -2, 2} ]
>
> produces the expected plot of UnitStep[t].
What you get, indeed, is the plot of HeavisideTheta[t]:
Plot[Integrate[DiracDelta[x], {x, -\[Infinity], t},
Assumptions -> Im[t] == 0], {t, -2, 2}, PlotStyle -> Thick]
Plot[HeavisideTheta[t], {t, -2, 2}, PlotStyle -> Thick]
Plot[UnitStep[t], {t, -2, 2}, PlotStyle -> Thick]
> Why doesn't the integration output the UnitStep function?
Mathematica does not define UnitStep as a primitive of DirectDelta. It
defines DiractDelta as the first derivaitve of HeavisideTheta.
D[HeavisideTheta[t], t] (* === DiracDelta[t] *)
From the online help:
UnitStep[x] represents the unit step function,
equal to 0 for x < 0 and 1 for x >= 0.
HeavisideTheta[x] represents the Heaviside theta function
\[Theta](x), equal to 0 for x < 0 and 1 for x > 0.
Note that HeavisideTheta[x] is not defined for x == 0 and that the value
of the integral is 1/2 for x form -inf to zero. This might explained why
Mathematica does not returned HeavisideTheta[t].
In[2]:= Integrate[DiracDelta[x], {x, -\[Infinity], t},
Assumptions -> Im[t] == 0 && Re[t] < 0]
Out[2]= 0
In[3]:= Integrate[DiracDelta[x], {x, -\[Infinity], t},
Assumptions -> Im[t] == 0 && Re[t] == 0]
Out[3]= 1/2
In[4]:= Integrate[DiracDelta[x], {x, -\[Infinity], t},
Assumptions -> Im[t] == 0 && Re[t] > 0]
Out[4]= 1
In[5]:= UnitStep[{-1, 0, 1}]
Out[5]= {0, 1, 1}
In[6]:= HeavisideTheta[{-1, 0, 1}]
Out[6]= {0, HeavisideTheta[0], 1}
HTH,
-- Jean-Marc
- Follow-Ups:
- Re: Re: Integrating DiracDelta to get UnitStep
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: Re: Integrating DiracDelta to get UnitStep