Modèle mathématique

(Cliquez-ici pour accéder à la version originale de cette discussion avec couleurs et images)







Posted by: Non inscrit

Bonsoir,
je recherche un moyen d'obtenir une fonction mathématique approchante,
en fonction de valeurs contenues dans une matrice.

J'ai une partie des données correspondant à un temps de déplacement en fonction de position en 'X' et en 'Y' sous forme matriciel, j'aimerais obtenir une équation, afin d'avoir des valeurs suivant des coordonnées que je rentrerai.



Posted by: Chimerade

Citation:
Posté par Non inscrit
Bonsoir,
je recherche un moyen d'obtenir une fonction mathématique approchante,
en fonction de valeurs contenues dans une matrice.

J'ai une partie des données correspondant à un temps de déplacement en fonction de position en 'X' et en 'Y' sous forme matriciel, j'aimerais obtenir une équation, afin d'avoir des valeurs suivant des coordonnées que je rentrerai.


Je ne vois pas ce que tu veux ! Pose ton problème ! Peut-être que quelqu'un y répondra...Mais tant que tu ne dis pas plus précisément ce que tu cherches, je pense que personne ne pourra t'y aider, en tous cas, moi je ne comprends rien. Désolé !



Posted by: N_comme_Nul

Salut !

Peut-être pour les splines cubiques définies par morceaux.

Si ça t'intéresse, tu peux construire ta courbe "approchante" au fur et à mesure d'ajouter les points en résolvant à chaque étape un petit système.

Bon, il nous faut des points, disons P_1,P_2,\ldots,P_n.
Pour une telle spline, on peut définir paramétriquement les points par (X(t),Y(t)) (en reprenant tes notations) où t est un entier qui se ballade entre 0 et n+1.
Je vais alors poser P_k(x_k,y_k), et appeler B_k(x_k^b,y_k^b) et A_k(x_k^a,y_k^a) mes points de contrôle avant et après mes points P_k. (B comme Before et A comme After, parce qu'en français, ça merdouille un peu : Avant Après ... enfin bref).
Les définitions paramétriques sont :
X(t+k)=(1-t)^3x_k+3t(1-t)^2x_k^a+3t^2(1-t)x_{k+1}^b+t^3x_{k+1}
Y(t+k)=(1-t)^3y_k+3t(1-t)^2y_k^a+3t^2(1-t)y_{k+1}^b+t^3y_{k+1}
pour t\in[0;1].
Avec ce genre de courbe définie par morceaux, tu peux avoir un assez bon contrôle sur les courbures. En particulier, tu peux "régler" les demi-tangentes "avant" et "après" les points de contrôle, genre :
http://www.web-images.org/images/43...mple-spline.JPG
Mais si tu veux avoir une courbe un peu plus "lisse", tu dois faire en sorte que les (demi-)tangentes "précédentes" et "suivantes" aient la même direction, autrement dit que les vecteurs \vec{B_kP_k} et \vec{P_kA_k} aient la même direction. Une méthode consiste à se débrouiller pour avoir le point P_k sur le segment [B_{k-1}A_k].

Tu peux aussi jeter un coup d'oeil sur Wiki : Ici



Posted by: Chimerade

Citation:
Posté par N_comme_Nul
Peut-être pour les splines cubiques définies par morceaux.


Bravo "N_comme_Nul". Tu ne mérites pas un tel pseudo !!! Si tu as tapé dans le mille, alors je te tire mon chapeau : c'est de la voyance extra-lucide !



Posted by: mathador

Je crois que c'est le genre de choses qui a été traité en TIPE ces dernières années ... je sais plus où j'ai vu ça !



Posted by: N_comme_Nul

Salut !

Personnellement, j'avais rencontré ce problème quand j'étais en 1re, lorsque j'ai voulu faire un petit programme dessin (sous TPascal); en Terminale, je l'avais refait en Delphi avec manipulation des points de contrôle et sans aucune condition sur les points de contrôle, ça marchait pas mal et ce qui permet d'avoir des points de rebroussement. Pour avoir du "bien lisse", on peut imposer d'avoir des points de contrôle "symétriques" par rapports aux points ( sauf pour le premier et le dernier).

Et dans le premier post, j'ai bien dit "peut-être". Attendons ce que "Non inscrit" va nous répondre (je suis peut-être complètement HS).



Posted by: Non inscrit

Ouille
Ok pour la leçon.

Mon exposé n’était pas très claire, mais la solution plus simple que je ne pensais.

L’éloignement par rapport au centre de mon repère était en arc de cercle.

10 9 9 8 8 7 7 7 7 7 8 8 9 9 10
9 8 8 7 7 6 6 6 6 6 7 7 8 8 9
9 8 7 6 6 5 5 5 5 5 6 6 7 8 9
8 7 6 6 5 4 4 4 4 4 5 6 6 7 8
8 7 6 5 4 4 3 3 3 4 4 5 6 7 8
7 6 5 4 4 3 3 3 3 3 4 4 5 6 7
7 6 5 4 3 3 3 3 3 3 3 4 5 6 7
7 6 5 4 3 3 3 0 3 3 3 4 5 6 7
7 6 5 4 3 3 3 3 3 3 3 4 5 6 7
7 6 5 4 4 3 3 3 3 3 4 4 5 6 7
8 7 6 5 4 4 3 3 3 4 4 5 6 7 8
8 7 6 6 5 4 4 4 4 4 5 6 6 7 8
9 8 7 6 6 5 5 5 5 5 6 6 7 8 9
9 8 8 7 7 6 6 6 6 6 7 7 8 8 9
10 9 9 8 8 7 7 7 7 7 8 8 9 9 10


Il ne m’a fallu que trouver les valeurs sur un axe et utiliser Pythagore plus une recherche
dans un tableau de solution.

Certes, c’est moins Mathématique mais c’était plus à ma porter que les courbes de Béziers.

Merci à tous pour votre temps passé à me répondre.











-