[Python] Fonction de dérivation

Bonjour

Quelqu'un saurait-il si la fonction de dérivation est implémentée sous Python ou dans une des librairies disponibles?

J'aurais besoin de calculer le gradient d'une fonction, donc ça m'aiderait assez....
Merci

4 réponses

  1. Contributeur
    Oops, la fonction c'est plutot:
    def deriv(func, x, dx):
    	return(func(x+dx)-func(x))/dx
    

    Faut que les arguments correspondent ;)

    Mir,
    4
    1. Modérateur
      Désolé, je ne vois pas.

      Peut-être du côté de packages spécialisés ?
      (Numeric, etc.)
      0
      1. Ben je cherche, je cherche mais pour l'instant je ne trouve pas....
        Merci quand même
        0
        1. Contributeur
          Coucou,

          Depuis le temps tu as sans doute trouvé mais bon je suis tombé sur le post..

          Selon le manuel d'OCaml (langage fonctionel: les dérivées ils connaissent):
          Caml is a functional language: functions in the full mathematical sense are supported and can be passed around freely just as any other piece of data. For instance, here is a deriv function that takes any float function as argument and returns an approximation of its derivative function:
          
          #let deriv f dx = function x -> (f(x +. dx) -. f(x)) /. dx;;
          val deriv : (float -> float) -> float -> float -> float = <fun>
           
          #let sin' = deriv sin 1e-6;;
          val sin' : float -> float = <fun>
           
          #sin' pi;;
          - : float = -1.00000000013961143
          


          Bon en Python ca donne, euh:
          def deriv(func, x, dx):
              return (f(x+dx)-f(x))/dx
          
          def cube(x):
              return x**3
          
          >>> deriv(cube, 3, 0.00001)
          27.0009 (...)
          

          Par exemple.. Bon je sais pas si tu peux appliquer ca au gradient, mais pour les dérivées partielles en un point ca peut aider..

          Mir,
          1