Implementing Derivatives to Python
Swipe to show menu
In Python, we can compute derivatives symbolically using sympy and visualize them using matplotlib.
1. Computing Derivatives Symbolically
# Define symbolic variable x
x = sp.symbols('x')
# Define the functions
f1 = sp.exp(x)
f2 = 1 / (1 + sp.exp(-x))
# Compute derivatives symbolically
df1 = sp.diff(f1, x)
df2 = sp.diff(f2, x)
Explanation:
- We define
xas a symbolic variable usingsp.symbols('x'); - The function
sp.diff(f, x)computes the derivative offwith respect tox; - This allows us to manipulate derivatives algebraically in Python.
2. Evaluating and Plotting Functions and Their Derivatives
# Convert symbolic functions to numerical functions for plotting
f1_lambda = sp.lambdify(x, f1, 'numpy')
df1_lambda = sp.lambdify(x, df1, 'numpy')
f2_lambda = sp.lambdify(x, f2, 'numpy')
df2_lambda = sp.lambdify(x, df2, 'numpy')
Explanation:
sp.lambdify(x, f, 'numpy')converts a symbolic function into a numerical function that can be evaluated usingnumpy;- This is required because
matplotlibandnumpyoperate on numerical arrays, not symbolic expressions.
3. Printing Derivative Evaluations for Key Points
To verify our calculations, we print derivative values at x = [-5, 0, 5].
# Evaluate derivatives at key points
test_points = [-5, 0, 5]
for x_val in test_points:
print(f"x = {x_val}: e^x = {f2_lambda(x_val):.4f}, e^x' = {df2_lambda(x_val):.4f}")
print(f"x = {x_val}: sigmoid(x) = {f4_lambda(x_val):.4f}, sigmoid'(x) = {df4_lambda(x_val):.4f}")
print("-" * 50)
1. Why do we use sp.lambdify(x, f, 'numpy') when plotting derivatives?
2. When comparing the graphs of f(x)=ex and its derivative, which of the following is true?
Everything was clear?
Thanks for your feedback!
SectionΒ 3. ChapterΒ 4
Ask AI
Ask AI
Ask anything or try one of the suggested questions to begin our chat
Awesome!
Completion rate improved to 1.96SectionΒ 3. ChapterΒ 4