Python 辛指数符号的导数

Python 辛指数符号的导数,python,sympy,Python,Sympy,我试图用sympy对时间索引变量进行符号计算(主要是导数)。 使用像下面的r[t]这样的索引符号会产生错误: from sympy import * t = Idx('t',10) r = IndexedBase('r') diff(r[t],r[t]) diff(r,r) ValueError: Can't differentiate wrt the variable: r[t], 1 原因可能是这里出了问题: In [15]: r[t].indices Out[15]: (t,)

我试图用sympy对时间索引变量进行符号计算(主要是导数)。 使用像下面的r[t]这样的索引符号会产生错误:

from sympy import *
t = Idx('t',10)
r = IndexedBase('r')

diff(r[t],r[t])
diff(r,r)

ValueError: 
Can't differentiate wrt the variable: r[t], 1
原因可能是这里出了问题:

In [15]: r[t].indices
Out[15]: (t,)
在我看来,索引t后面的逗号很可疑,但我不知道出了什么问题


有人知道如何在Symphy中实现这一点吗?

您可以区分wrt符号、函数和导数。这是否有效:

>>> t = Idx('t',10)
>>> r=Function('r')
>>> r(t).diff(r(t))
1
>>> var('t')
t
>>> r(t).diff(t)
Derivative(r(t), t)