XL 2013 Calculer la dérivée en un point de la courbe

Hugo

XLDnaute Nouveau
Bonjour à tous,

J'ai un tableau de nombres (colonnes X et Y), à partir duquel je trace la courbe (nuage de points avec courbe lissée) Y = f(X). Dans le cas présent (cf. fichier joint), le maximum des Y vaut Ymax = 0,971278, atteint pour X = 1,00445 (cf. cellule jaune)
Mon problème est le suivant : comment savoir si mon Ymax (0,971278) est atteint avant le maximum de ma courbe lissée (on se situe alors sur la portion de courbe croissante) ou après (on se situe alors sur la portion de courbe décroissante) ? Il faudrait, selon moi, calculer la dérivée au point Ymax : si elle est positive, on se situe avant le max de la courbe, si elle est négative, on se situe après. Ou, de manière équivalente, tracer la tangente à la courbe au point Ymax et en déduire, selon le signe de la pente, la position de Ymax par rapport au max de la courbe. Mais en VBA, je ne sais pas du tout comment faire, et je ne sais même pas si c'est possible de faire ça sur Excel.

Par exemple, dans le fichier joint, le Ymax (0,971278), désigné par le cercle rouge, se situe tout juste avant le maximum de la courbe, ce qui se traduirait par une dérivée, ou une pente de tangente, positive au point Ymax.

Max de la série de nombre.PNG

Alors vous allez me dire, pourquoi ne pas tout simplement tracer la courbe Y = f(X) et lire la position du Ymax par rapport au maximum de la courbe ? Parce que, j'ai une montagne de tableau de nombres comme celui en PJ, de valeurs et de taille différentes, et pour lesquels je dois trouver le Ymax ainsi que la position de Ymax par rapport au maximum de la courbe lissée. Donc au lieu de tracer à chaque fois la courbe Y = f(X) et regarder à l'oeil où se trouve le Ymax, je voudrais automatiser tout ça avec du VBA. Mais aucune idée de comment faire...

Voilà, j'espère avoir été compréhensible. Un peu d'aide serait la bienvenue :)
 

Pièces jointes

  • Maximum.xlsx
    17.6 KB · Affichages: 25

Dranreb

XLDnaute Barbatruc
Bonsoir.
Dans Excel les séries sont lissées au moyen de splines cubiques partant du principe que la courbe de lissage en chaque point donné a la même pente que la droite qui joint entre eux les deux points adjacents. La maxi de la courbe de lissage va donc se trouver entre le point donné le plus élevé et le plus élevé de ses deux voisins. Il vous reste à étudier le polynome de degré 3 dont vous connaissez, au deux x isolés, les valeurs y et les dérivées (pente évoquée au début).
 

Hugo

XLDnaute Nouveau
Bonsoir.
Dans Excel les séries sont lissées au moyen de splines cubiques partant du principe que la courbe de lissage en chaque point donné a la même pente que la droite qui joint entre eux les deux points adjacents. La maxi de la courbe de lissage va donc se trouver entre le point donné le plus élevé et le plus élevé de ses deux voisins. Il vous reste à étudier le polynome de degré 3 dont vous connaissez, au deux x isolés, les valeurs y et les dérivées (pente évoquée au début).

Bonjour Dranreb,

Merci pour la petite explication sur les splines cubiques, j'apprends quelque chose !

En fait, ce qui m'intéresse, c'est juste de savoir où se trouve le point donné le plus élevé par rapport au maximum de la courbe lissée. Donc, comme vous dites que le maximum de la courbe lissée se trouve forcément entre le point donné le plus élevé et le plus élevé de ses deux voisins, j'ai juste à comparer la valeur des deux voisins. Ainsi :
- si le voisin le plus élevé est après le point le plus élevé, ce dernier se situe avant le maximum de la courbe lissé ;
- si le voisin le plus élevé est avant le point le plus élevé, ce dernier se situe après le maximum de la courbe lissé.

EDIT : Dranreb, pouvez-vous me confirmer, par acquit de conscience, que ce j'ai avancé pour trouver la position du point le plus élevé par rapport au maximum de la courbe lissée est bien correct ? Merci :)
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Bonjour.
Oui ça me parait tout à fait correct, même si ça ne prouve en rien que le lissage ainsi effectué par Excel soit une bonne représentation du phénomène lissé.
(Désolé de ce retard à vous répondre, dû à ce qu'un Edit n'est pas détecté comme apport à une discussion
d'où l'intérêt de réviser de temps à autres les dernières discussions suivies)
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
314 717
Messages
2 112 169
Membres
111 450
dernier inscrit
nath_omic