Message Boards Message Boards


How does Wolfram Language deal with DiracDelta[0] in Integrate command?

Posted 1 year ago
3 Replies
3 Total Likes


I'm trying to compute the following integral involving derivatives of Heaviside step function, which on integration by parts gives DiracDelta[0] which is undefined or infinite.


But Mathematica seems to be making the term containing DiracDelta[0] as zero. I have attached the Mathematica file for a clear understanding of my query. Any help is much appreciated.

3 Replies

Integrate across the origin e.g. from -2 to 2.

Integrate[f[x] D[D[HeavisideTheta[x], x], x], {x, -2, 2}]

(* Out[5]= -Derivative[1][f][0] *)

Integrating that particular expression with 0 as an endpoint of the integration interval is in effect GIGO ("garbage in, garbage out").

Appreciate your reply! But what if my domain is only [0,2], and I'm looking for the behavior of a system which is forcing me to use Heaviside theta function? In other words, I can use integration from [-2, 2] because it will change the physical meaning of my current objective.

Also, I'm curious why you refer 0 as Garbage in, Is it because DiracDelta[x-x0] is undefined at x0 and any integral involving DiracDelta[x-x0] shouldn't have x0 as end points?

Awaiting for your reply!

If your domain is [0,2] then it is not appropriate to integrate over a delta function with payload at 0. More generally, as you state, an integral containing DiracDelta[x-x0] should not have x0 as an endpoint of the integration range.

A way to perhaps understand this is as follows. There are many ways to approximate a delta "function". In order for your integral to make sense, these all have to give consistent results as you let them approach delta(x). But if you try to integrate e.g. f(x)*delta(x) from 0 to 2, different valid sequences of approximations to delta(x) will give results that differ as you let them approach delta(x). So 0 cannot be used as an endpoint of the integration range.

Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
or Discard

Group Abstract Group Abstract