[Meccanica applicata] Matrici di rotazione
Buongiorno ragazzi, mi servirebbe una mano per svolgere questo esercizio. Potete aiutarmi? Grazie!
Scrivere la matrice di rotazione per ruotare di 60° un punto P=(2,1,-1) attorno ad un asse parallelo al
vettore v=(1,-2,2) in terna fissa G. Si indichi quindi l’espressione delle nuove coordinate di P anche per il caso di asse non passante per l’origine ma per il punto A=(4,-2,1)
Scrivere la matrice di rotazione per ruotare di 60° un punto P=(2,1,-1) attorno ad un asse parallelo al
vettore v=(1,-2,2) in terna fissa G. Si indichi quindi l’espressione delle nuove coordinate di P anche per il caso di asse non passante per l’origine ma per il punto A=(4,-2,1)
Risposte
Prendi una matrice ortonormale che porti l'asse $z$ a coincidere con l'asse di rotazione.
Ad es:
$\bb M = ( ( 4/(3\sqrt2) , 0 , 1/3 ),( 1/(3\sqrt2) , 1/\sqrt2 , -2/3 ),( -1/(3\sqrt2) , 1/\sqrt2 , 2/3 ) ) $
Nota che nella terza colonna c'e' l'asse di rotazione (normalizzato).
Quindi la matrice di rotazione diventa
$\bb M \bb{R^{\prime}} \bb M^(-1)$
dove la matrice $\bb {R^{\prime}}$ e' la rotazione attorno all'asse $z$, ovvero
$\bb {R^{\prime}} = ( ( cos 60 , -sin 60 , 0 ),( sin 60 , cos 60 , 0),( 0 , 0 , 1 ) ) $.
Quindi la soluzione del problema e'
$P_(60^\circ) = \bb M \bb{R^{\prime}} \bb M^(-1) P$
dove $P$ e' un vettore colonna.
Se l'asse di rotazione non passa dall'origine ma dal punto $A$, non c'e' problema, e' sufficiente prima fare una traslazione degli assi cartesiani in modo da riportare l'asse di rotazione nell'origine, e poi fare la traslazione opposta.
$P_(60^\circ, A) = \bb M \bb{R^{\prime}} \bb M^(-1) (P-A) + A$
Ad es:
$\bb M = ( ( 4/(3\sqrt2) , 0 , 1/3 ),( 1/(3\sqrt2) , 1/\sqrt2 , -2/3 ),( -1/(3\sqrt2) , 1/\sqrt2 , 2/3 ) ) $
Nota che nella terza colonna c'e' l'asse di rotazione (normalizzato).
Quindi la matrice di rotazione diventa
$\bb M \bb{R^{\prime}} \bb M^(-1)$
dove la matrice $\bb {R^{\prime}}$ e' la rotazione attorno all'asse $z$, ovvero
$\bb {R^{\prime}} = ( ( cos 60 , -sin 60 , 0 ),( sin 60 , cos 60 , 0),( 0 , 0 , 1 ) ) $.
Quindi la soluzione del problema e'
$P_(60^\circ) = \bb M \bb{R^{\prime}} \bb M^(-1) P$
dove $P$ e' un vettore colonna.
Se l'asse di rotazione non passa dall'origine ma dal punto $A$, non c'e' problema, e' sufficiente prima fare una traslazione degli assi cartesiani in modo da riportare l'asse di rotazione nell'origine, e poi fare la traslazione opposta.
$P_(60^\circ, A) = \bb M \bb{R^{\prime}} \bb M^(-1) (P-A) + A$
Grazie Quinzio per l'aiuto. Posso chiederti come hai scelto la matrice M?
Certo.
Una matrice ortonormale e' una matrice dove tutte le colonne (in questo caso) hanno norma 1 e sono ortogonali tra di loro a due a due.
Si prende l'asse di rotazione $z=(1,-2,2)$ e lo si normalizza, ovvero si scrive $z/||z||$ e lo si mette nella terza colonna.
Poi per l'asse $y$ si prende un qualunque vettore che abbia prodotto scalare nullo con $z$.
Non e' difficile individuare $y = (0,1,1)$ e lo si normalizza per scriverlo nella seconda colonna, $y/||y||$.
Per $x$ si fa il prodotto vettoriale $x = y \times z$. Viene automaticamente un vettore di norma 1 e ortogonale agli altri due.
Ecco qua.
Una matrice ortonormale e' una matrice dove tutte le colonne (in questo caso) hanno norma 1 e sono ortogonali tra di loro a due a due.
Si prende l'asse di rotazione $z=(1,-2,2)$ e lo si normalizza, ovvero si scrive $z/||z||$ e lo si mette nella terza colonna.
Poi per l'asse $y$ si prende un qualunque vettore che abbia prodotto scalare nullo con $z$.
Non e' difficile individuare $y = (0,1,1)$ e lo si normalizza per scriverlo nella seconda colonna, $y/||y||$.
Per $x$ si fa il prodotto vettoriale $x = y \times z$. Viene automaticamente un vettore di norma 1 e ortogonale agli altri due.
Ecco qua.
Grazie mille, tutto chiaro!