Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Afgeleiden Implementeren in Python | Wiskundige Analyse
Wiskunde voor Data Science

Afgeleiden Implementeren in Python

Veeg om het menu te tonen

In Python kunnen we afgeleiden symbolisch berekenen met behulp van sympy en deze visualiseren met matplotlib.

1. Symbolisch afgeleiden berekenen

# 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)

Uitleg:

  • We definiëren x als een symbolische variabele met sp.symbols('x');
  • De functie sp.diff(f, x) berekent de afgeleide van f naar x;
  • Hiermee kunnen we afgeleiden algebraïsch manipuleren in Python.

2. Evalueren en plotten van functies en hun afgeleiden

# 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')

Uitleg:

  • sp.lambdify(x, f, 'numpy') zet een symbolische functie om in een numerieke functie die geëvalueerd kan worden met numpy;
  • Dit is nodig omdat matplotlib en numpy werken met numerieke arrays en niet met symbolische expressies.

3. Afdrukken van afgeleide-evaluaties voor belangrijke punten

Ter controle van onze berekeningen printen we de waarden van de afgeleiden bij 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. Waarom gebruiken we sp.lambdify(x, f, 'numpy') bij het plotten van afgeleiden?

2. Wanneer je de grafieken van f(x)=exf(x) = e^x en zijn afgeleide vergelijkt, welke van de volgende stellingen is waar?

question mark

Waarom gebruiken we sp.lambdify(x, f, 'numpy') bij het plotten van afgeleiden?

Selecteer het correcte antwoord

question mark

Wanneer je de grafieken van f(x)=exf(x) = e^x en zijn afgeleide vergelijkt, welke van de volgende stellingen is waar?

Selecteer het correcte antwoord

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 4

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Afgeleiden Implementeren in Python

In Python kunnen we afgeleiden symbolisch berekenen met behulp van sympy en deze visualiseren met matplotlib.

1. Symbolisch afgeleiden berekenen

# 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)

Uitleg:

  • We definiëren x als een symbolische variabele met sp.symbols('x');
  • De functie sp.diff(f, x) berekent de afgeleide van f naar x;
  • Hiermee kunnen we afgeleiden algebraïsch manipuleren in Python.

2. Evalueren en plotten van functies en hun afgeleiden

# 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')

Uitleg:

  • sp.lambdify(x, f, 'numpy') zet een symbolische functie om in een numerieke functie die geëvalueerd kan worden met numpy;
  • Dit is nodig omdat matplotlib en numpy werken met numerieke arrays en niet met symbolische expressies.

3. Afdrukken van afgeleide-evaluaties voor belangrijke punten

Ter controle van onze berekeningen printen we de waarden van de afgeleiden bij 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)
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 4
some-alt