xδ(x) 中 Dirac delta 的简化

Simplification of Dirac delta in xδ(x)

我无法通过 sympyxδ(x) 简化为 0,其中 δ 是 DiracDelta。

In : simplify(x*DiracDelta(x))
Out: x⋅δ(x)

是否有另一个简化例程可以评估 Dirac 函数在参数零点处的因子项并检查它们是否消失?

这在构造分段函数时很有用,例如f(x)= x H(x)(其中H是Heaviside函数),其导数应为H(x),但在[=11中为x⋅δ(x) + Heaviside(x) =]. Mathematica 确实将 xδ(x) 简化为 0.

您可以通过积分然后微分将 x*DiracDelta(x) 按摩到 0,因为 integrate 了解正在发生的事情并且 returns 0.

>>> (x*DiracDelta(x)).integrate(x).diff(x)
0

然而,这并没有解决最初的问题,而且无论如何这都不是它应该的工作方式。 I raised an issue