I agree with Leonid, there is no consistent way to define integral
[0,anything) of the delta function. It is a theorem, in fact.

##
Advertising

Aaron, Sympy seniors,
What was the reasoning to define DiracDelta as a function? How difficult
would it be to insert GeneralizedFunction class above the Function class?
On Saturday, February 3, 2018 at 4:53:05 AM UTC+2, Leonid Kovalev wrote:
>
> By definition (e.g.,
> https://en.wikipedia.org/wiki/Dirac_delta_function#As_a_measure),
> DiracDelta would have integral one over any set that contains 0, even
> if that set has only one point.
> So one has to ask, when we integrate over (x, a, b), do we mean closed
> interval [a, b], open (a, b), or half-open [a, b).
>
> With either of two former choices we run into trouble with additivity
> over intervals: the integral of DiracDelta over [-1, 0] plus its
> integral over [0, 1] is 2, while the integral over [-1, 1] is 1.
> Similarly for open.
> (SymPy currently sidesteps this issue by returning answers in terms of
> Heaviside(0) which is left undefined.)
>
> So I think we should treat the intervals of integration as half-open:
> a <= x < b. Then an interval such as (0, 0) is empty set, and the
> integral of anything over an empty set is zero.
>
> I would also say that things like Piecewise with DiracDelta inside are
> not necessarily well-defined. Since DiracDelta is not a function, one
> should not define an integrand as "something when x != 3, and
> DiracDelta when x is 3". By implementing DiracDelta as a function,
> SymPy allows some expressions, like DiracDelta(x)**2, which have no
> mathematical meaning; and then the output is meaningless too.
>
> >>> integrate(DiracDelta(x)**2, (x, -1, 1))
> DiracDelta(0) # garbage in, garbage out
>
--
You received this message because you are subscribed to the Google Groups
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit
https://groups.google.com/d/msgid/sympy/bdf66987-cc66-4b9e-89c6-5ef1a829323b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.