Je veux trouver la dérivée d'une fonction (x) (x - 1) en utilisant la définition d'une dérivée. Je veux que mes incréments soient 1e-2
. Alors qu'il simule la limite allant à zéro. J'ai vu sur Range for Floats que je pourrais utiliser des fonctions définies par l'utilisateur pour créer des fonctions de plage qui prennent des variables flottantes.Fonction de plage pour les flottants dans les petits intervalles
def frange(x, y, jump):
while x < y:
yield x
x += jump
def drange(start, stop, step):
r = start
while r < stop:
yield r
r += step
i = frange(1e-14,1e-2,2)
for k in i:
set = []
x = 1
dvt = ((x + k) * (x + k - 1) - x*(x - 1))/k
set.append(dvt)
print(set)
Quand je lance le programme que je ne reçois que
[0.9992007221626509]
ce qui se passe que je ne reçois pas plus d'un dérivé ajouté à la liste?
'jump' est' 2' vous allez donc de '1E-14' à' 1E-2' immédiatement . –
Vous pouvez également différencier symboliquement en utilisant [sympy] (http://docs.sympy.org/latest/tutorial/calculus.html#derivatives) '(x * (x-1)) .diff (x)' -> ' 2 * x - 1' -> '.subs ({x: 1})' -> '1', et en utilisant quelques [autres méthodes] (http://stackoverflow.com/questions/9876290/how-do- i-compute-derived-using-numpy) – SiggyF