Implementering av Derivator i Python
I Python kan vi beräkna derivator symboliskt med hjälp av sympy och visualisera dem med matplotlib.
1. Symbolisk beräkning av derivator
# 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)
Förklaring:
- Vi definierar
xsom en symbolisk variabel medsp.symbols('x'); - Funktionen
sp.diff(f, x)beräknar derivatan avfmed avseende påx; - Detta gör det möjligt att manipulera derivator algebraisk i Python.
2. Utvärdering och plottning av funktioner och deras derivator
# 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')
Förklaring:
sp.lambdify(x, f, 'numpy')konverterar en symbolisk funktion till en numerisk funktion som kan utvärderas mednumpy;- Detta krävs eftersom
matplotlibochnumpyarbetar med numeriska arrayer, inte symboliska uttryck.
3. Utskrift av derivatvärden för nyckelpunkter
För att verifiera våra beräkningar skriver vi ut derivatvärden vid 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. Varför använder vi sp.lambdify(x, f, 'numpy') när vi ritar derivator?
2. När man jämför graferna för f(x)=ex och dess derivata, vilket av följande är sant?
Var allt tydligt?
Tack för dina kommentarer!
Avsnitt 3. Kapitel 4
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Awesome!
Completion rate improved to 1.96
Implementering av Derivator i Python
Svep för att visa menyn
I Python kan vi beräkna derivator symboliskt med hjälp av sympy och visualisera dem med matplotlib.
1. Symbolisk beräkning av derivator
# 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)
Förklaring:
- Vi definierar
xsom en symbolisk variabel medsp.symbols('x'); - Funktionen
sp.diff(f, x)beräknar derivatan avfmed avseende påx; - Detta gör det möjligt att manipulera derivator algebraisk i Python.
2. Utvärdering och plottning av funktioner och deras derivator
# 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')
Förklaring:
sp.lambdify(x, f, 'numpy')konverterar en symbolisk funktion till en numerisk funktion som kan utvärderas mednumpy;- Detta krävs eftersom
matplotlibochnumpyarbetar med numeriska arrayer, inte symboliska uttryck.
3. Utskrift av derivatvärden för nyckelpunkter
För att verifiera våra beräkningar skriver vi ut derivatvärden vid 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. Varför använder vi sp.lambdify(x, f, 'numpy') när vi ritar derivator?
2. När man jämför graferna för f(x)=ex och dess derivata, vilket av följande är sant?
Var allt tydligt?
Tack för dina kommentarer!
Avsnitt 3. Kapitel 4