Derivaattojen Toteuttaminen Pythonilla
Pyyhkäise näyttääksesi valikon
Pythonissa voimme laskea derivaattoja symbolisesti käyttämällä sympy-kirjastoa ja visualisoida niitä matplotlib-kirjastolla.
1. Derivaattojen laskeminen symbolisesti
# 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)
Selitys:
- Määritellään
xsymboliseksi muuttujaksi käyttämälläsp.symbols('x'); - Funktio
sp.diff(f, x)laskee funktionfderivaatan muuttujanxsuhteen; - Tämä mahdollistaa derivaattojen algebrallisen käsittelyn Pythonissa.
2. Funktioiden ja niiden derivaattojen arviointi ja piirtäminen
# 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')
Selitys:
sp.lambdify(x, f, 'numpy')muuntaa symbolisen funktion numeeriseksi funktioksi, jota voidaan arvioidanumpy-kirjastolla;- Tämä on tarpeen, koska
matplotlibjanumpytoimivat numeerisilla taulukoilla, eivät symbolisilla lausekkeilla.
3. Derivaattojen arvioiden tulostaminen avainpisteissä
Laskujen tarkistamiseksi tulostetaan derivaattojen arvot kohdissa 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. Miksi käytämme sp.lambdify(x, f, 'numpy') derivaattojen piirtämisessä?
2. Kun vertaillaan funktioiden f(x)=ex ja sen derivaatan kuvaajia, mikä seuraavista pitää paikkansa?
Oliko kaikki selvää?
Kiitos palautteestasi!
Osio 3. Luku 4
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Mahtavaa!
Completion arvosana parantunut arvoon 1.96Osio 3. Luku 4