SymPy – 导数

SymPy – 导数

一个函数的导数是它相对于其中一个变量的瞬时变化率。这相当于找到函数在某一点的切线的斜率。我们可以通过使用SymPy包中的diff()函数找到变量形式的数学表达式的微分。

diff(expr, variable)
>>> from sympy import diff, sin, exp 
>>> from sympy.abc import x,y 
>>> expr=x*sin(x*x)+1 >>> expr

上述代码片断给出的输出等同于以下表达式 −

x\sin(x^2) + 1

>>> diff(expr,x)

上述代码片段给出的输出相当于下面的表达式-

2x^2\cos(x^2) + \sin(x^2)

>>> diff(exp(x**2),x)

上述代码片断给出的输出等同于以下表达式 −

2xe x 2

要进行多次导数,可以按照你希望进行微分的次数传递变量,或者在变量后面传递一个数字。

>>> diff(x**4,x,3)

上述代码片断给出的输出等同于以下表达式 −

24x

>>> for i in range(1,4): print (diff(x**4,x,i))

上述代码片断给出了以下表达式 −

4*x**3

12*x**2

24*** x

也可以调用表达式的diff()方法。它的工作原理与diff()函数类似。

>>> expr=x*sin(x*x)+1 
>>> expr.diff(x)

上述代码片段给出的输出相当于下面的表达式-

2x^2\cos(x^2) + \sin(x^2)

通过使用Derivative类,可以创建一个未评估的导数。它的语法与diff()函数相同。要评估一个未评估的导数,请使用doit方法。

>>> from sympy import Derivative 
>>> d=Derivative(expr) 
>>> d

上述代码片断给出的输出等同于以下表达式 −

\frac{d}{dx}(x\sin(x^2)+1)

>>> d.doit()

上述代码片段给出的输出相当于下面的表达式-

2x^2\cos(x^2) + \sin(x^2)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程