121 votes

Comment calculer la dérivée en utilisant Numpy ?

Comment calculer la dérivée d'une fonction, par exemple

y = x2+1

en utilisant numpy ?

Disons, je veux la valeur de la dérivée à x = 5...

6 votes

Vous devez utiliser Sympy : sympy.org/fr/index.html. Numpy est une bibliothèque de calcul numérique pour Python.

0 votes

Alternatively, voulez-vous une méthode pour estimer la valeur numérique de la dérivée? Pour cela, vous pouvez utiliser une méthode de différences finies, mais gardez à l'esprit qu'elles ont tendance à être horriblement bruyantes.

1voto

duffymo Points 188155

SymPy peut supposément faire des mathématiques symboliques :

http://code.google.com/p/sympy/

Peut-être avez-vous juste besoin d'ajouter une autre bibliothèque en plus de NumPy.

1voto

mclzc Points 111

Pour calculer la dérivée d'une fonction numérique, utilisez ce schéma de différences finies d'ordre deux comme vu dans : https://youtu.be/5QnToSn_oxk?t=1804

dx = 0.01
x = np.arange(-4, 4+dx, dx)
y = np.sin(x)
n = np.size(x)

yp = np.zeros(n)
yp[0] = (-3*y[0] + 4*y[1] - y[2]) / (2*dx)
yp[n-1] = (3 * y[n-1] - 4*y[n-2] + y[n-3]) / (2*dx)
for j in range(1,n-1):
    yp[j] = (y[j+1] - y[j-1]) / (2*dx)

Ou si vous voulez utiliser un ordre supérieur, utilisez : https://youtu.be/5QnToSn_oxk?t=1374

Tout cela provient des lectures de Nathan Kutz du cours "Beginning Scientific Computing".

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X