Re: Integrating DircaDelta[x]
- To: mathgroup at smc.vnet.net
- Subject: [mg78528] Re: Integrating DircaDelta[x]
- From: dimitris <dimmechan at yahoo.com>
- Date: Tue, 3 Jul 2007 05:43:12 -0400 (EDT)
- References: <f6al5g$hgd$1@smc.vnet.net>
Pillsy : > In Mathematica 6, integrating the DiracDelta function with specified > limits gives the expected result: > > In[1]:= Integrate[DiracDelta[x], {x, -Infinity, -1}] > > Out[1]:= 0 > > In[2]:= Integrate[DiracDelta[x], {x, -Infinity, 1}] > > Out[2]:= 1 > > In[3]:= Integrate[DiracDelta[x], {x, -Infinity, 0}] > > Out[3]:= 1/2 > > But when you replace the limit with a variable, it returns something > quite different: > > In[4]:= Integrate[DiracDelta[x], {x, -Infinity, a}] > > Out[4]:= If[a \[Element] Reals, 1, > Integrate[DiracDelta[x], {x, -\[Infinity], a}, > Assumptions -> Im[a] < 0 || Im[a] > 0]] > > In[5]:= Map[% /. a -> # &, {-1, 0, 1}] > > Out[5]:= {1, 1, 1} > > Any idea what's going on? I'm using the 32-bit x86 Mac version on OS X > 10.4.10, if it matters. > > TIA, > Pillsy Hi. $VersionNumber->5.2 In[44]:= Integrate[DiracDelta[x], {x, -Infinity, -1}] Out[44]= 0 In[45]:= Integrate[DiracDelta[x], {x, -Infinity, 1}] Out[45]= 1 In[46]:= Integrate[DiracDelta[x], {x, -Infinity, 0}] Out[46]= 1/2 In[47]:= Integrate[DiracDelta[x], {x, -Infinity, a}] Out[47]= UnitStep[a] In[48]:= PiecewiseExpand[%] Out[48]= Piecewise[{{1, a >= 0}}] However, e g In[54]:= Integrate[DiracDelta[x], {x, -Infinity, 2*I}] Out[54]= Integrate[DiracDelta[x], {x, -Infinity, 2*I}] So Mathematica 6 does a better job since it returns an If structure. Nevertheless, as you point out neither 6 is perfect. Using the function PiecewiseIntegrate of Maxim Rytin available from here (http://library.wolfram.com/infocenter/MathSource/ 5117/) we get In[116]:= PiecewiseIntegrate[DiracDelta[x], {x, -Infinity, a}] Out[116]= If[0 <= a, 1, 0] Best Regards Dimitris