我正在Jupyter笔记本中运行以下内容。
from sympy import *
B = IndexedBase('B')
x, L = symbols('x L', real=True)
n = Symbol('n', integer=True)
n = Idx(n, (0, oo))
Bn = Indexed('B', n)
m = Symbol('m', integer=True)
Sum(Piecewise((0, Ne(m, n)), (L, True))*B[n], (n, 0, oo)).doit()
最后一个表达式的值应为$ L B_n $。我尝试对它使用simplify
,doit
,limit
和evalf
方法,但均未成功。我还在github中发现了更多类似的问题,但无法解决我的具体问题。
我还尝试摆弄整数m
的基本假设,但找不到合适的东西。
是否有任何直接或间接的方法来获取sympy
来简化包含分段函数的无穷和?
顺便说一句,下面的代码可以工作:
p = Piecewise((1, n<5), (0, True))
Sum(p, (n, 1, oo)).evalf()