jeanjeandada
Messages postés152Date d'inscriptionlundi 21 avril 2008StatutMembreDernière intervention20 novembre 2011 29 juil. 2008 à 12:55
Slt Kevin.Ory,
Na ma courbe n'a pas d'équation. Je n'ai que les points. est-il possible sous VB de faire une courbe avec des points que l'on connaît et de s'y référer par la suite ??
RomainDotNet
Messages postés14Date d'inscriptionmardi 3 juin 2008StatutMembreDernière intervention25 août 2008 29 juil. 2008 à 14:19
Salut,
eh bien tu peux te lancer dans une classe qui dessinnera tes courbes selon les points que tu as,
Le bufferedGraphics a une méthode drawcurves,
sinon, qu'appelles-tu "s'y référer?
Bonne chance,
Salut!
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 29 juil. 2008 à 16:58
Bonjour,
Est-ce une courbe régulière ?
Si oui, essayes de trouver une équation approchée (même par morceau), ainsi tu trouveras une grande facilité d'utilisation dans la programmation, comme évoqué plus haut par Kevin.Ory. Tout dépend de l'objectif rcherché donc...
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 29 juil. 2008 à 18:11
A voir Module de classe... mais je ne vois pas l'intérêt ici... Tu seras obligé de passer par un tableau dans ton cas...
Par curiosité, c'est quoi ces points ? ... J'aimerais y réfléchir dessus, si cela est possible... As-tu un site où je pourrais voir ce que tu traites... ? Est-ce des données météo, boursières ?... Dans ce cas, il faut plutôt s'orienter vers une Bas de Données...
Kevin.Ory
Messages postés840Date d'inscriptionmercredi 22 octobre 2003StatutMembreDernière intervention 7 janvier 200911 29 juil. 2008 à 18:22
Je ne vois pas d'autre solution que le tableau. Suffit de faire un petit algo pour faire une moyenne entre 2 points lorsque tu as des valeurs intermédiaire. Clair que ça sera moins rapide que l'utilisation d'une équation (justement), mais pas le choix.
X : Y
1 : 10
2 : 12
3 : 18
4 : 15
5 : 9
6 : 5
Par ex si X 4.3, alors Y 15 - 0.3*6 = 13.2
jeanjeandada
Messages postés152Date d'inscriptionlundi 21 avril 2008StatutMembreDernière intervention20 novembre 2011 29 juil. 2008 à 18:28
ReSalut,
En faite il s'agit d'une courbe de puissance pour éolienne.
Au début j'ai créé un tableau à 2 dimensions (pour l'abscisse et l'ordonnées). J'ai pensé à passer par une courbe pour rendre les relevés plus précis.
Il n'y a pas de site pour visualiser.
Si tu veux je peux t'envoyer ce que j'ai déjà fait en MP.
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 29 juil. 2008 à 18:43
Non. Une droite entre chaque point, ne fait pas un gain de place.
La courbe de puissance d'une éolienne... hum... Ce n'est que des points sans relations ?... est-ce en temps réel, dépendant du vent ?... ou un truc du genre... quelle analyse comptes-tu faire dessus ?
Kevin.Ory
Messages postés840Date d'inscriptionmercredi 22 octobre 2003StatutMembreDernière intervention 7 janvier 200911 29 juil. 2008 à 19:01
"Bon, en faite il faudrai que je fasse entre chaque points une équation de droite ?"
C'est ce que j'ai fais dans mon exemple. Ce n'est pas parfait, mais on s'approche dejà bien de la valeur réelle (au lieu d'une droite, il faudrait une courbe qui suit les points)
"Non. Une droite entre chaque point, ne fait pas un gain de place." Un gain de place?
Il est effectivement très probable de pourvoir trouver une équation pour représenter la courbe de puissance en fonction de la vitesse de rotation, mais là c'est un problème de math et non de programmation.
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 29 juil. 2008 à 19:16
Kenvin, nous sommes d'accord. Si les points sont susceptibles d'être interpolés, y'a pas photo, faudrait en trouver une équation... Surtout la précision nécessaire n'est pas trop exigeante... En réalité, il faudrait savoir à quoi tout cela est destiné... Peut-être même qu'une courbe de fréquence serait suffisante... Tout dépend du but cherché.
Ensuite, faire des équations de droite à stocker n'apporte rien. Autant faire les interpolation à partir des points. C'est le sens de ma remarque.
Kevin.Ory
Messages postés840Date d'inscriptionmercredi 22 octobre 2003StatutMembreDernière intervention 7 janvier 200911 29 juil. 2008 à 19:30
"Ensuite, faire des équations de droite à stocker n'apporte rien. Autant
faire les interpolation à partir des points. C'est le sens de ma
remarque."
Absolument. Mais il est inutile de stoquer les équations des droites, un simple calcul permet de la calculer très rapidement, comme je l'ai fais dans mon exemple:
X : Y
1 : 10
2 : 12
3 : 18
4 : 15
5 : 9
6 : 5Par ex si X 4.3, alors Y 15 - 0.3*6 = 13.2
Inutile donc de stoquer une équation de droite entre 4 et 5 pour trouver la valeur au point 4.3, le simple calcul Y 15 - 0.3*6 13.2 permet d'obtenir la bonne valeur
Mais si on trouve la fonction par interpolation, comme tu le dis, y'a pas photo, c'est mieux
Kevin.Ory
Messages postés840Date d'inscriptionmercredi 22 octobre 2003StatutMembreDernière intervention 7 janvier 200911 29 juil. 2008 à 19:51
Oui, je propose une interpolation linéaire entre chaque point pour
trouver les valeurs intermédiaires (je ne suis pas sûr du terme
interpolation, mais si tu le dis ).
... Mais en même temps, si on peut trouver la fonction de la courbe complète, même plus besoins de stoquer les points X-Y et on aura une valeur "parfaite" pour tous les points
Mais c'est vrai, laissons donc Jeanjeandada répondre
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 29 juil. 2008 à 19:58
" je ne suis pas sûr du terme interpolation, mais si tu le dis "
interpolation : c'est un terme vague dans l'absolu... il n'existe pas une seule interpolation possible... tout dépend de ce qu'on se fixe comme dispersion... donc tu aurais pu même dire Y = -10 ... ...
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 29 juil. 2008 à 22:23
Bonjour,
S'agissant d'éoliennes et donc de vent (dont la vitesse est non seulement un facteur, mùais également un facteur de type "inconstant"), l'interpolation n'est pas suffisante... et une telle courbe ne sera significative que pour un vent à vitesse constante entre deux mesures (ce qui sera très rarement le cas, en raison des turbulences spécifiques aux vents)
Un conseil de lecture (lire attentivemùent et lentement) :
http://www.windpower.org/fr/tour/wres/pwr.htm
Kevin.Ory
Messages postés840Date d'inscriptionmercredi 22 octobre 2003StatutMembreDernière intervention 7 janvier 200911 29 juil. 2008 à 23:36
Effectivement, la courbe est assez complexe, mais il ne faut pas sous-estimer les math
Me suis amusé à représenter la courbe qu'on peut voir sur ton lien (jmfmarques) dans Excel, puis j'ai ajouté une courbe de tendance plynomiale (d'ordre 6), ca donne un résultat concluant je trouve :
Il y a de forte erreur entre 0 et 4, logique puisque Y est constante à 0, une plynomiale ne sait pas faire ça. Mais après 4, ça donne pas mal du tout...
Mais au niveau vitesse de calcul, je me demande si ma 1ère technique (interpolation linéaire entre chaque point du tableau X-Y) n'est pas plus rapide...