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,)
索引t后面的逗号对我来说可疑,但我不知道出了什么问题.
有人知道如何在sympy中做到这一点吗?
解决方法:
您可以区分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)
标签:sympy,python 来源: https://codeday.me/bug/20191121/2049481.html