有办法“简化”一个sympy.KroneckerDelta吗?例如,
i, j = sympy.symbols('i j')
sympy.KroneckerDelta((i+1)/2, (j+1)/2)也可以更简单地表示为
sympy.KroneckerDelta(i, j)发布于 2018-09-10 02:10:59
有一个内部函数_simplify_delta可以做到这一点。
import sympy
from sympy.concrete.delta import _simplify_delta
i, j = sympy.symbols('i j')
expr = sympy.KroneckerDelta((i+1)/2, (j+1)/2)
print(_simplify_delta(expr))打印KroneckerDelta(i, j)。备注:
_simplify_delta只适用于KroneckerDelta的单个实例,而不适用于涉及增量的表达式。simplify没有使用它:泛型simplify对Kronecker的特殊属性知之甚少。https://stackoverflow.com/questions/52249599
复制相似问题