Come calcolare la derivata prima, seconda o terza in Python

Nel linguaggio python posso effettuare operazioni di derivazione di una funzione con l'istruzione diff() del modulo sympy.

diff(y,x)

Dove y è la funzione da derivare e x è la variabile di derivazione.

In alternativa, posso ottenere lo stesso risultato anche indicando diff come metodo della variabile

y.diff(x)

In questo caso la variabile di derivazione è l'unico argomento.

Un esempio pratico

Per calcolare la derivata della funzione x3+5 scrivo

import sympy as sp
x = sp.Symbol('x')
y = x**3 + 5
yd = sp.diff(y,x)

Nella prima riga importo il modulo sympy in python.

Nota. Il modulo sympy è una libreria esterna e deve essere già stata installata sull'interprete python tramite il comando PIP. In caso contrario, l'importazione va in errore.

Nella seconda riga definisco la x come un simbolo. E' un'operazione necessaria altrimenti non posso usarla come variabile di derivazione.

Nella terza riga immetto la funzione da derivare ossia x**3+5.

Nota. Il simbolo dell'elevazione a potenza in Python è il doppio asterisco **. Non va confuso con ^. Per ulteriori informazioni sulle operazioni matematiche in python.

Nella quarta riga calcolo la derivata prima della funzione con la funzione diff(y,x)

Nella variabile yd è registrata la derivata prima ossia 3x2

3*x**2

La derivata prima viene salvata sempre in forma simbolica.

Il simbolo * è la moltiplicazione e il simbolo ** l'elevazione a potenza.

Questo mi permette di usare la variabile yd come input della funzione diff() per calcolare la derivata seconda.

E così via.

Come calcolare la derivata seconda e terza

Aggiungendo un'ulteriore variabile di derivazione nella funzione diff posso anche calcolare la derivata seconda della funzione.

yd = sp.diff(y,x,x)

o in alternativa indicando il numero 2 come terzo parametro

yd = sp.diff(y,x,2)

In entrambi i casi il risultato in output è

6*x

Per calcolare la derivata terza

yd = sp.diff(y,x,x,x)

In alternativa, posso anche indicare soltanto il numero 3 come terzo parametro

yd = sp.diff(y,x,3)

In entrambi i casi il risultato in output è

6

E così via.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Analisi matematica con Python