[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,
    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. Modérateur
        Désolé, je ne vois pas.

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