Rotation matricielle vers rotation vectorielle

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
lolo_bobo
Messages: 7
Enregistré le: 23 Déc 2008, 13:24

rotation matricielle vers rotation vectorielle

par lolo_bobo » 23 Déc 2008, 14:42

Bonjour et joyeux noël...

Je programme une petite classe de matrice de rotation dans R3 (matrice orthogonale directe). Une méthode doit retourner l'axe et l'angle de rotation à partir d'un matrice de rotation.
J'utilise la formule d'Olingue Rodrigues telle que présentée ici:http://fr.wikipedia.org/wiki/Rotation_vectorielle

Tout va bien, sauf lorsque phi=PI.

La matrice (Ai,j) ressemble alors à cela:
2.x.x-1 __ 2.x.y_____2.x.z
2.x.y____ 2.y.y-1 ___2.y.z
2.x.z____ 2.y.z____2.z.z-1

Où N(x,y,z) est le vecteur directeur unitaire de l'axe de rotation : les coordonnées que l'on recherche

J'ai essayé plein de choses qui ne marchent pas ou sont lourdes:
1- Les diagonales contiennent des carrés. Donc on ne trouve les x,y,z qu'au signe prêt.

2- Je n'arrive pas à résoudre le système d'équation:
2.x.y=a12
2.x.z=a13
2.y.z=a23
(je tourne en rond)

3- En posant A.N=N, je démontre brillamment que 1=1 (ou 0=0)

4- J'ai une solution mais qui me paraît très lourde:
je prend deux vecteurs u1,v1 quelconques de l'espace.
u2=A.u1 (u2 est l'image de u1, tourné de PI)
alors U=u1^u2 appartient au plan normal à l'axe de rotation

de même
v2=A.v1, et V=v1^v2
et finalement U^V=N (le produit vectoriel de deux vecteurs distincts appartenant au plan normal à l'axe de rotation donne un vecteur directeur de l'axe de rotation)

Je suis sûr qu'il y a plus élégant

5- J'ai une solution purement informatique:
faite d'une combinatoire de if then else sur les signes de x,y,z

Ma question:
Existe une belle solution mathématique qui en une demi-formule donne le vecteur de rotation... ??

Merci d'avance
Laurent



Doraki
Habitué(e)
Messages: 5021
Enregistré le: 20 Aoû 2008, 12:07

par Doraki » 23 Déc 2008, 15:39

Si je comprends bien tu veux retrouver (x,y,z) en connaissant la matrice
(x² xy xz)
(xy y² yz)
(xz yz z²) ?

Ben il suffit de prendre un vecteur/une ligne non nulle de cette matrice, et de normaliser le vecteur obtenu.

Antho07
Membre Rationnel
Messages: 741
Enregistré le: 26 Oct 2007, 20:12

par Antho07 » 23 Déc 2008, 15:40

Un vecteur directeur de l axe de rotation est un vecteur propres associé à la valeur propre 1, si cela que tu cherches je ne connais pas la méthode que tu veux utiliser et j'ai pas tout compris donc je pourrait pas t'aider

lolo_bobo
Messages: 7
Enregistré le: 23 Déc 2008, 13:24

par lolo_bobo » 23 Déc 2008, 18:34

Merci Doraki!

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 18 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite