我不能同意将xδ(x)简化为0,其中δ是DiracDelta.
In : simplify(x*DiracDelta(x))
Out: x⋅δ(x)
是否有另一个简化程序可以在其参数的零点处评估狄拉克函数因子中的项,并检查它们是否消失?
这在构造分段函数时很有用,例如f(x)= x H(x)(其中H是Heaviside函数),其导数应为H(x),但是x⋅δ(x)Heaviside(x)同情Mathematica确实将xδ(x)简化为0.
解决方法:
您可以通过积分然后区分来将x * DiracDelta(x)按到0,因为整合了解正在发生的事情并返回0.
>>> (x*DiracDelta(x)).integrate(x).diff(x)
0
然而,这并没有解决原始问题,并且无论如何这不是它应该如何工作. I raised an issue.