Rotation dans l'espace — Les-mathematiques.net The most powerful custom community solution in the world

Rotation dans l'espace

Bonsoir,

Je souhaite écrire la matrice d'une rotation (dans l'espace) dont je connais l'axe et l'angle, je souhaite savoir s'il existe une formule toute faite pour ça.
Par exemple si mon axe est le vecteur k de la base canonique et l'angle pi/2. 
Je sais le faire dans un sens ou on calcul la trace qui donne 1+2cos(têta) et en calculant le point fixe on obtient l'axe de rotation mais je ne sais pas le faire dans l'autre sens.

Cordialement, Lorentz.

Réponses

  • Si $(u, v)$ est une base orthonormée du plan orthogonal à $k$, tu formes la matrice $P$ dont la première colonne correspond aux coordonnées de $k$ dans la base canonique, la seconde celles de $u$ et la troisième celles de $v$. Alors la matrice de ta rotation dans la base canonique est $P \begin{pmatrix} 1 & 0 & 0\\ 0 & \cos \theta & - \sin \theta\\ 0 & \sin \theta & \cos \theta \end{pmatrix} P^{-1}$.
  • Bonjour,
    Comme l'a indiqué Poirot, c'est un simple changement de bases.
    Comment s'écrit la matrice d'une rotation dans une bonne Base Orthonormée Directe ?
    Il reste alors à déterminer cette matrice de passage de la base canonique à cette nouvelle bonne Base Orthonormée, qui plus est, cette matrice P est comment ? donc que vaut son inverse ?
  • Modifié (5 May)
    Ce qui suit évite le calcul de plusieurs matrices, dont une inverse (même si elle s'obtient sans calculs) et leur produit!
    $\beta$ est une base orthonormée d'un espace euclidien de dimension 3,
     $\vec{u}$ un vecteur normé de composantes $(a,b,c)$ dans la base $\beta$.
    On demande la matrice dans cette même base de la rotation d'axe $\vec{u}$ d'angle donné $\theta$.

    Soit $p$ (resp $q$) le projecteur orthogonal d'image (resp noyau) $\R\vec u$, $s : \vec x\mapsto \vec u{\wedge}\vec x$ et $r=p+\cos(\theta)q+\sin(\theta)s$
    Alors $r$ est la rotation cherchée. On peut le voir
           tout bêtement en prenant une base orthonormée $(\vec u,\,\vec v,\,\vec u_{\wedge}\vec v)$
          plus sophistiqué (mais exercice instructif) en cherchant l'adjoint de $r$ ainsi que sa trace.

    Pour $\vec x$ normé on a  $p(\vec x)=\langle \vec u,\vec x\rangle \vec u,\;q(\vec x)=\vec x-p(\vec x)$ de sorte que les matrices de $p,q,s$
    sont d'écriture immédiate ce qui permet d'obtenir, sans calculs (juste un peu de concentration) la matrice demandée
    $$R=\begin{pmatrix}
     a^2+(1-a^2)\cos(\theta) &ba-ba\cos(\theta)-c\sin(\theta) &ca-ca\cos(\theta)+b\sin(\theta) \\
     ab-ab\cos(\theta)+c\sin(\theta) &b^2+(1-b^2)\cos(\theta) &cb -cb\cos(\theta)-a\sin(\theta) \\
     ac-ac\cos(\theta)-b\sin(\theta) & bc-bc\cos(\theta)+a\sin(\theta) &c^2+(1-c^2)\cos(\theta)
    \end{pmatrix}$$

  • Modifié (5 May)
    Mais si (u,v) est une base orthonormée du plan alors les vecteurs u et v sont des vecteurs du plan. Mais alors comment k qui est un vecteur de l'espace peut être orthogonal à cette base ? Ensuite tu parles de former les coordonnées de k dans la base canonique, mais laquelle ? Celle du plan ou de l'espace ?
    [Inutile de recopier un message présent sur le forum. Un lien suffit. AD]
  • Si $(u,v)$ forment une base du plan orthogonal au vecteur $k\neq 0 $  alors le vecteur $k$  est orthogonal aux vecteurs $u$ et $v$. Comment fait-il ? C'est très simple: il n'a pas le choix.
  • Modifié (5 May)
    @lorentz : Tu as mal compris la phrase écrite par @Poirot.
    $(u,v)$ est une famille formée de deux vecteurs de l'espace $\R^3$, mais ce deux vecteurs forment une base orthonormée d'un certain plan $P$, orthogonal à un certain vecteur $k$ non nul lui-même vecteur de l'espace $\R^3$.
    Puisque on parle de l'espace, il n'y a pas lieu de considérer des vecteurs "du" plan $\R^2$.
  • Modifié (5 May)
    Ou dit plus simplement :
    • Tu as ton vecteur k qui dirige ton axe de rotation, dont tu connais les coordonnées dans la base canonique de $R^3$
    • Tu choisis, et tu as l'embarras du choix, un vecteur u orthogonal à ce vecteur : opération adaptée : produit scalaire, et tu n'oublies pas de le normer ce vecteur u
    • Pour ton dernier vecteur, le produit vectoriel $v=k \wedge u$ conviendra automatiquement, de part la définition du produit vectoriel.
    De là, tu vas obtenir ta jolie matrice de passage, en supposant que tu sais l'écrire correctement.
    PS : serait-il possible de préciser ton niveau stp ?
  • Modifié (6 May)
    JavierT
    Alors voilà ce que j'ai fait j'espère que c'est juste. 
    Dans mon cas j'ai obtenu une licence de math et je prépare actuellement un master pour devenir prof dans le secondaire.
  • Bonjour,
    Il n'y avait pas besoin de calculs ! $(\vec k, \vec i, \vec j)$ est une base orthonormée directe, la rotation d'axe dirigé et orienté par $\vec k$ et d'angle $\pi/2$ envoie $\vec k$ sur $\vec k$, $\vec i$ sur $\vec j$ et $\vec j$ sur $-\vec i$.
  • Modifié (6 May)
    Bonjour
    @lorentz : oui tout est correct. Merci pour les précisions sur ton parcours.
    @GaBuZoMeu : tout à fait d'accord avec toi : cela permet de vérifier que son résultat final est correct :)
    L'avantage, c'est que la méthode que j'ai proposée fonctionne quels que soient l'axe et l'angle  de rotation ;)
  • Modifié (6 May)
    Celle qu'a indiquée rakam me semble beaucoup plus efficace. Elle utilise simplement le fait que la rotation d'axe dirigé et orienté par le vecteur unitaire $\vec u$ et d'angle $\theta$ est
    $$\vec x \longmapsto  (1-\cos\theta)(\vec u\cdot\vec x) \,\vec u + \cos\theta\, \vec x +\sin\theta \,\vec u\wedge \vec x\;,$$
    et donc si $\vec u=\begin{pmatrix}a\\b\\c\end{pmatrix}$, la matrice de la rotation est
    $$(1-\cos\theta)\,\begin{pmatrix} a^2&ab&ac\\ba&b^2&bc\\ca&cb&c^2\end{pmatrix}+\cos\theta\,I_3+\sin\theta\,\begin{pmatrix}0&-c&b\\c&0&-a\\-b&a&0\end{pmatrix}\;.$$
Connectez-vous ou Inscrivez-vous pour répondre.
Success message!