我无法将sympy
简化为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)
为sympy
。 Mathematica确实将xδ(x)
简化为0。
答案 0 :(得分:1)
您可以通过积分然后区分来按x*DiracDelta(x)
为0,因为integrate
了解正在发生的事情并返回0。
>>> (x*DiracDelta(x)).integrate(x).diff(x)
0
然而,这并没有解决原始问题,并且无论如何这不是它应该如何工作。 I raised an issue。