sympy 中导数的导数

问题描述 投票:0回答:1

我正在尝试在 python 中进行一些计算,现在需要找到 a 函数的导数,我之前已经导出了它,现在称为导数(x(t),t):

t = sp.symbols('t')
x = sp.symbols('x')
B = sp.symbols('B')
C = sp.symbols('C')
x = sp.Function('x')(t)

Lx = B * sp.diff(x,t) * C

因为 x 的导数被 SymPy 称为

Derivative(x(t),t)
,所以函数 Lx 等于
B*Derivative(x(t),t)*C
,并且我们函数的导数必须如下调用:

ELx = sp.diff(Lx,Derivative(x(t),t))

但我总是收到错误消息:

NameError: name 'Derivative' is not defined
我该怎么办。

我的意思是我可以使用 antoher varibale 定义 Derived 函数,但逻辑和更清晰的方式如下所示。

python sympy derivative
1个回答
0
投票

您在没有定义的情况下调用 Derivative() 。根据 sympy 的文档,计算导数的正确方法是

sp.diff()

以下代码应该可以实现您想要实现的目标:

import sympy as sp

t = sp.symbols('t')
x = sp.Function('x')(t)
B = sp.symbols('B')
C = sp.symbols('C')

Lx = B * sp.diff(x,t) * C

# Take the derivative of Lx with respect to x(t)
ELx = sp.diff(Lx, x)

参考资料: https://docs.sympy.org/latest/tutorials/intro-tutorial/calculus.html

© www.soinside.com 2019 - 2024. All rights reserved.