Link Search Menu Expand Document (external link)

How to compute the derivative of a function (in Python, using SymPy)

See all solutions.

Task

Given a mathematical function f(x), we write f(x) or ddxf(x) to represent its derivative, or the rate of change of f with respect to x. How can we compute f(x) using mathematical software?

Solution

This answer assumes you have imported SymPy as follows.

1
2
from sympy import *                   # load all math functions
init_printing( use_latex='mathjax' )  # use pretty math output

In SymPy, we tend to work with formulas (that is, mathematical expressions) rather than functions (like f(x)). So if we wish to compute the derivative of f(x)=10x216x+1, we will focus on just the 10x216x+1 portion.

1
2
3
var( 'x' )
formula = 10*x**2 - 16*x + 1
formula

10x216x+1

We can compute its derivative by using the diff function.

1
diff( formula )

20x16

If it had been a multi-variable function, we would need to specify the variable with respect to which we wanted to compute a derivative.

1
2
3
var( 'y' )               # introduce a new variable
formula2 = x**2 - y**2   # consider the formula x^2 + y^2
diff( formula2, y )      # differentiate with respect to y

2y

We can compute second or third derivatives by repeating the variable with respect to which we’re differentiating. To do partial derivatives, use multiple variables.

1
diff( formula, x, x )    # second derivative with respect to x

20

1
diff( formula2, x, y )   # mixed partial derivative

0

Content last modified on 24 July 2023.

See a problem? Tell us or edit the source.

Contributed by Nathan Carter (ncarter@bentley.edu)