如何获取函数的导数,然后使用实数进行评估?

时间:2016-01-14 23:00:27

标签: python sympy calculus

我有一个庞大而丑陋的表情。我需要采用它的衍生物,然后插入一些数字并进行评估。

这是计算电路输出中的总误差。

实际公式如下:

Ugly Formula

右边几乎所有这些变量都与温度有关,我关心的是整体温度敏感度dReff / dT。

但为了解释,让我们简化一些事情。假设我有一个更简单的公式:

R(T)= 2 * R_0(T)

我想从变量方面得到衍生物:

dR / dT = 2 * dR_0 / dT

然后,从数据表中了解dR_0 / dT,我希望能够将其插入:

dR_0 / dT = 2ohms /°C

dR / dT = 2 * 2ohms /°C = 4ohms /°C

现在,我用python和sympy让我走得很远,但现在我被卡住了。它看起来像这样:

from sympy import *

T = Symbol('T')
R_0 = Function('R_0')(T)
R = 2*R_0

diffR = Symbol('diffR')
diffR = R.diff(T)

此时如果你打印diffR,你会得到以下

2*Derivative(R_0(T),T)

如何完成其​​余的工作?有没有办法插入衍生术语的值?

1 个答案:

答案 0 :(得分:3)

一种解决方案是为衍生物制作另一个符号:

dR0 = Function('R_0')(T).diff(T)

然后,您可以在更大的衍生表达式中替换它。

expr.subs(dR0, value)

这适用于我尝试过的几个例子。他们可能更容易做到这一点,但我只在严格需要时处理sympy