Puisque vous dites que vous avez un tableau de points en deux dimensions, je suppose que vous avez une fonction de deux variables f(x, y)
. Cela signifie que vous n'avez pas de dérivé unique. Au lieu de cela, vous obtenez un ensemble de dérivées partielles.
Vous pouvez approximer les dérivées partielles en utilisant des formules de différences finies. La dérivée partielle par rapport à x
à f(x, y)
serait (f(x+h, y) - f(x-h, y))/2h
.
La dérivée partielle par rapport à y
à f(x, y)
serait (f(x, y+h) - f(x, y-h))/2h
.
Dans ces formules, h
est l'espace entre les nœuds de votre grille, en supposant que vous avez une grille régulièrement espacée. Si les espacements horizontaux et verticaux sont différents, utilisez l'espacement horizontal pour le partiel par rapport à x
et l'espacement vertical pour le partiel par rapport à y
.
Mise à jour: J'ai mal compris votre question. Je pensais que le tableau 2-D était un tableau de valeurs de domaine. Si vous avez une liste des valeurs x
et f(x)
, vous pouvez approximer f'(x)
comme (f(x+h) - f(x-h))/2h
. Cela fonctionnera partout sauf aux premier et dernier points où l'un des termes sera hors limites. Vous pouvez utiliser (f(x + h) - f(x))/h
à l'extrémité gauche et (f(x) - f(x-h))/h
à l'extrémité droite. L'approximation sera moins précise aux points finaux mais cela ne peut pas être évité.
Un point n'a pas de dérivée. Votre bibliothèque idéale essaierait-elle d'adapter une courbe aux données et de calculer la dérivée de celle-ci? –
Oui! Ma bibliothèque idéale ferait exactement cela. –
C'est une idée fascinante et/ou géniale! :) Je suis un calcul total n00b, alors s'il vous plaît pardonnez mon ignorance, mais: comment iriez-vous trouver une courbe pour s'adapter aux données (par programmation)? – tommytwoeyes