Rotazioni
Basilio Bona
DAUIN-Politecnico di Torino
2008
Introduzione
Il termine rotazione indica due concetti
un’azione fisica che viene applicata ad un oggetto per modificare il suo orientamento nello spazio tridimensionale (interpretazione fisica), la caratterizzazione matematica di questa azione, che permette di studiarne le propriet`a e la rappresentazione attraverso operatori matematici opportuni (interpretazione astratta o matematica).
A sua volta l’interpretazione fisica `e duplice:
1 L’azione viene applicata al corpo per portarlo da un orientamento ad un altro.
2 Due oggetti identici hanno orientamenti diversi e vogliamo studiarne la relazione reciproca.
Corpo rigido
Il legame tra l’interpretazione matematica e l’interpretazione fisica della rotazione, che si concretizza nella definizione del cosiddetto operatore di rotazione, viene considerevolmente semplificata se si fa riferimento acorpi rigidi.
Definizione
Un corpo rigido `e insieme (anche infinito) di punti le cui distanze reciproche non variano nel tempo e nello spazio.
Un corpo rigido `e sempre riconducibile al sistema di riferimento (sdr) ortogonale che lo caratterizza
Sistema di riferimento ortogonale
Definizione
Un sistema di riferimento (sdr) ortogonale nello spazio 3D `e costituito da tre versori mutuamente ortogonali applicati ad un’origine comune.
In inglese si chiama reference frame.
Il sdr si caratterizza con il simbolo R(O, i, j, k), dove O `e l’origine comune, i, j e k sono i tre versori mutuamente ortogonali.
I sdr possono esseredestrorsi o sinistrorsi.
Poich´e per definizione il prodotto vettoriale i × j = k obbedisce alla regola della mano destra, i sdr
sono destrorsi se i × j = k sono sinistrorsi se j × i = k
Sistema di riferimento ortogonale
Corpo rigido ⇔ sdr
Un corpo rigido A `e caratterizzato dal sdr RA ad esso associato.
Ogni generico punto del corpo rigido pi `e univocamente definito nel sdr RA dalle coordinate
pAi =
pAi 1 pAi 2 pAi 3
La distanza tra ogni coppia di punti rimane costante sotto qualsiasi trasformazione o azione esterna sul corpo
pAi − pAj
= dij ≥ 0; ∀ i , j
Pertanto il corpo rigido `e completamente determinato dal suo sdr e quando
Corpo rigido ⇔ sdr
Due corpi rigidi, come quelli in Figura, possono essere interpretati come due oggetti con orientamenti diversi nello stesso istante di tempo, oppure come lo stesso oggetto in due istanti di tempo diversi.
In entrambi i casi ci interessa studiare la relazione tra i due orientamenti.
Figura: Due corpi rigidi tra loro ruotati.
Relazione tra sdr
Dati due sdr RA e RB con origine in comune, ma con orientamento (o assetto) differente, la loro reciproca relazione si pu`o esprimere in due modi
il sdr RB rappresentato in RA il sdr RA rappresentato in RB
Cosa sia meglio dipende dal significato fisico assegnato ai due riferimenti.
Matrici di rotazione
RB rappresentato in RA: rappresentiamo i tre versori iB, jB e kB in RA, ottenendo una matrice 3 × 3
iAB
jAB
kAB
= RAB
RA rappresentato in RB: rappresentiamo i tre versori iA, jA e kA in RB, ottenendo una matrice 3 × 3
iBA
jBA
kBA
= RBA
Le due matrici appartengono alla classe delle matrici di rotazione e la relazione tra esse `e la seguente
RBA = RABT
RAB = RBAT
Esempio.1
Prendiamo due sdr particolari e calcoliamo la matrice RAB
0
0
1
0 0 1
Esempio.1
Ora calcoliamo la matrice RBA
iBA
=
0 0 1
;
jBA
=
0 1 0
;
kBA
=
−1 0 0
; RBA =
0 0 −1
0 1 0
1 0 0
Come si vede, le due matrici RAB e RBA sono l’una la trasposta dell’altra.
Fisicamente possiamo interpretare questa rotazione come
la rotazione di 90◦ intorno al versore jA (asse yA) che porta RA a sovrapporsi a RB
la rotazione di −90◦ intorno al versore jB (asse yB) che porta RB a sovrapporsi a RA
Diciamo anche che ciascuna rotazione `e inversa dell’altra e che l’operatore di inversione `e dato dalla trasposizione della matrice relativa.
Matrici di rotazione: rappresentazione asse-angolo
Il teorema di Eulero stabilisce che ogni composizione di rotazioni pu`o sempre essere ricondotta ad una rotazione di un angolo θ intorno ad un asse (versore)di rotazione u. Matematicamente si ha questa relazione Matrice di rotazione intorno ad un generico asse di rotazione
Rot(u, θ) = R(u, θ) = Ru,θ =
u21(1 − cθ) + cθ u1u2(1 − cθ) − u3sθ u1u3(1 − cθ) + u2sθ
u1u2(1 − cθ) + u3sθ u22(1 − cθ) + cθ u2u3(1 − cθ) − u1sθ u1u3(1 − cθ) − u2sθ u2u3(1 − cθ) + u1sθ u32(1 − cθ) + cθ
(1) dove
cθ≡ cos θ sθ≡ sin θ
Esempio.1
Esempio
Riprendiamo l’Esempio.1
L’asse u coincide con j e l’angolo vale +90◦= π
2, quindi
u =
0 1 0
sθ = 1 cθ = 0 da cui
R =
0 0 1
0 1 0
−1 0 0
Matrici di rotazione elementare
Esiste una specie di “base” di matrici di rotazione, che chiamiamo
elementari perch´e sono rotazioni intorno agli assi principali x , y e z del sdr.
Rotazione elementare di un angolo α intorno all’asse x
Rot(x , α) = Rot(i, α) = R(i, α) = Ri,α=
1 0 0
0 cos α − sin α 0 sin α cos α
=
1 0 0
0 cα −sα 0 sα cα
(2)
Matrici di rotazione elementare
Rotazione elementare di un angolo β intorno all’asse y
Rot(y , β) = Rot(j, β) = R(j, β) = Rj,β =
cos β 0 sin β
0 1 0
− sin β 0 cos β
=
cβ 0 sβ
0 1 0
−sβ 0 cβ
(3)
Matrici di rotazione elementare
Rotazione elementare di un angolo γ intorno all’asse z
Rot(z, γ) = Rot(k, γ) = R(k, γ) = Rk,γ =
cos γ − sin γ 0 sin γ cos γ 0
0 0 1
=
cγ −sγ 0 sγ cγ 0
0 0 1
(4)
Composizione di matrici di rotazione
Ogni altra rotazione (e la corrispondente matrice) pu`o essere ottenuta combinando opportunamente le rotazioni elementari.
Le regole sono semplici: per comporre una rotazione complessa, generata da una serie di rotazioni elementari, occorre
a) scegliere la rotazione elementare, b) definire l’angolo di rotazione
c) stabilire se la rotazione avviene rispetto agli assifissi o agli assimobili d) se la rotazione avviene rispetto al sdr fisso, allora pre-moltiplicare, se
invece avviene rispetto al sdr mobile, allora post-moltiplicare Regola di moltiplicazione delle matrici di rotazione
Pre-fisso Post-mobile
I termini “fisso” e “mobile” indicano rispettivamente il sdr che si assume immobile e il sdr che si ottiene come risultato della rotazione precedente.
Composizione di matrici di rotazione
Esempio.2 (1)
Supponiamo di avere due rotazioni da comporre, definite dalle matrici RA e RB seguenti
RA = Rot(j, π/2) RB = Rot(k, −π/2)
Vogliamo effettuare prima la rotazione RA e successivamente la rotazione RB rispetto agli assi del sdr di partenza (che chiamiamo
convenzionalmente sdr fisso); dobbiamo perci`o applicare la regola pre-fisso, ossia pre-moltiplichiamo RA per RB, ottenendo
RBRA =
0 1 0
−1 0 0
0 0 1
0 0 1
0 1 0
−1 0 0
=
0 1 0
0 0 −1
−1 0 0
Composizione di matrici di rotazione - R
BR
AComposizione di matrici di rotazione
Esempio.2 (2)
Ora invece effettuiamo prima la rotazione RA e successivamente la rotazione RB rispetto agli assi del sdr cos`ı ottenuto (che chiamiamo convenzionalmente sdr mobile); dobbiamo perci`o applicare la regola post-mobile, ossia post-moltiplichiamo RA per RB, ottenendo
RARB =
0 0 1
0 1 0
−1 0 0
0 1 0
−1 0 0
0 0 1
=
0 0 1
−1 0 0
0 −1 0
Composizione di matrici di rotazione - R
AR
BComposizione di matrici di rotazione
Osservando le Figure precedenti possiamo verificare direttamente che entrambi i prodotti RARB, RBRA forniscono la rappresentazione del sdr di sinistra in quello di destra.
Perci`o componendo le matrici in qualsiasi ordine, alla fine si ottiene una matrice prodotto che rappresenta il sdr di “arrivo” rispetto a quello di
“partenza”, ovvero, come si preferisce dire, del sdr mobile nelsdr fisso.
Matrici di rotazione - Trasformazione di vettori
Vediamo ora qual’`e l’effetto della rotazione sui vettori rappresentati in due diversi riferimenti RA e RB, uno ruotato rispetto all’altro.
Prima di tutto ricordiamo che i vettori sono enti matematici che possono rappresentare due classi di entit`a geometriche
1 segmenti orientati −−→
MN, mediante la differenza tra le coordinate dei due estremi
−−→MN = vMN =v1 v2 v3T
= vN − vM =
vN1− vM1 vN2− vM2 vN3− vM3
2 punti geometrici P, mediante le coordinate (di solito cartesiane) della punta
−→OP ≡ P → vP − vO =
vP1 vP2
vP3
−
0 0 0
=
vP1 vP2
vP3
Matrici di rotazione - Trasformazione di vettori
Se i sistemi di riferimento hanno la stessa origine la trasformazione `e identica per i due tipi di vettore, altrimenti deve essere considerata anche la traslazione tra le origini.
Per il momento le traslazioni sono escluse dall’analisi delle trasformazioni.
Matrici di rotazione - Trasformazione di vettori
1. Punti geometrici: consideriamo due riferimenti Ra e Rb con origine in comune e un punto geometrico P qualunque rappresentato dal vettore vP.
La relazione tra le rappresentazioni vettoriali dello stesso punto P nei due sdr `e la seguente
vPa= RabvPb e vPb= RbavPa con Rab= (Rba)T La matrice di rotazione `e un operatore (lineare) che trasforma le coordinate di un punto da un sdr ad un altro.
Matrici di rotazione - Trasformazione di vettori
2. Segmenti orientati: consideria- mo due riferimenti Ra e Rbcon ori- gine in comune e un segmento orien- tato −−→
MN rappresentato dal vettore vMN.
La relazione tra le rappresentazioni vettoriali dello stesso segmento orientato −−→
MN nei due sdr `e la seguente
vMNa= RabvMNb e vMNb= RbavMNa con Rab= (Rba)T
Matrici di rotazione - Cosa rappresentano
Riassumiamo quanto detto sulle matrici di rotazione.
Valgono tutte e tre le interpretazioni seguenti:
R rappresenta la rotazione generica Rot(u, θ) di angolo θ intorno all’asse individuato dal versore u; i valori di θ e u non traspaiono immediatamente dalla matrice, ma si possono ricavare, come vedremo meglio pi`u avanti;
R fornisce la descrizione del sdr “mobile” nel sdr “fisso”;
R definisce l’operatore lineare che trasforma un vettore dal sdr
“mobile” al sdr “fisso”. L’operatore `e lineare in quanto `e
rappresentato da una matrice, che obbedisce alla seguente identit`a R(λ1xa+ λ2xb) = λ1Rxa+ λ2Rxb
Matrici di rotazione - Propriet` a matematiche
Ricordiamo il teorema di Eulero (asse-angolo) Matrice di rotazione Rot(u, θ)
Rot(u, θ) = R(u, θ) = Ru,θ =
u21(1 − cθ) + cθ u1u2(1 − cθ) − u3sθ u1u3(1 − cθ) + u2sθ
u1u2(1 − cθ) + u3sθ u22(1 − cθ) + cθ u2u3(1 − cθ) − u1sθ u1u3(1 − cθ) − u2sθ u2u3(1 − cθ) + u1sθ u32(1 − cθ) + cθ
(5)
R(u, θ) = R(−u, −θ)
R(u, −θ) = R(u, 2π − θ) = R(−u, θ) R(u, θ) = R(u, −θ)T
R(−u, −θ) = R(−u, θ)T
(6)
Matrici di rotazione - Propriet` a matematiche
Le matrici di rotazione sono matrici ortonormali con determinante unitario e positivo.
Una matrice si dice ortonormale quando possiede le seguenti propriet`a L’inversa coincide con la trasposta:
RRT= RTR = I (7)
ovvero
R−1 = RT (8)
Matrici di rotazione - Propriet` a matematiche
Le colonne di R sono tra loro ortogonali e a norma unitaria. Lo stesso vale per le righe. Se
R =
r1
r2
r3
r1× r2= r3 r2× r3 = r1 r3× r1= r2
Il determinante di R ha modulo unitario:
|det(R)| = 1 (9)
La rotazione rigida mantiene invariate le distanze tra ogni coppia di punti e gli angoli tra i segmenti, ossia il prodotto scalare `e invariante alla rotazione:
Matrici di rotazione - Propriet` a matematiche
Non tutte le matrici ortonormali sono di rotazione.
Infatti esistono due tipi di matrici ortonormali quelle a determinante unitario positivo
det R = +1
che sonomatrici di rotazione (dette anche dirotazione propria) quelle a determinante unitario negativo
det R = −1 che sonomatrici di riflessione o roto-riflessione
Matrici di rotazione - Propriet` a matematiche
In uno spazio tridimensionale le rotazioni formano un gruppo non commutativo rispetto al prodotto matriciale.
Questo gruppo `e detto gruppo (speciale) di rotazione (ortonormale) e si indica con
SO(3) = n
R ∈ R3×3| RTR = I, det R = +1 o In inglese, si chiama Special Orthonormal group of dimension 3.
Inoltre esiste un’importante differenza tra le rotazioni e le roto-riflessioni:
le prime formano un gruppo commutativo continuo; intuitivamente questo equivale a dire che esiste una rotazione infinitesima. Le seconde invece non formano un gruppo continuo; le riflessioni non possiedono la “qualit`a”
di poter essere rese infinitesime.
Matrici di rotazione - Propriet` a matematiche
Una matrice di rotazione propria R ammette la seguente decomposizione canonica modale
R = MΛMH=u v v∗
1 0 0
0 ejθ 0 0 0 e−jθ
u v v∗H
(10)
dove j =√
−1 e MH `e la matrice hermitiana (trasposta coniugata) di M, che `e la matrice modale, ossia la matrice degli autovettori.
Il primo autovettore u `e il versore che individua l’asse di rotazione; gli altri due versori v e v∗ definiscono il piano normale a u.
Su questo piano avviene la rotazione rappresentata dall’operatore complesso di rotazione o fasore ejθ.
Matrici di rotazione - Propriet` a matematiche
la matrice R soddisfa le seguenti relazioni:
R(u, θ) = eS(u)θ = I +sin θ
kukS(u) +1 − cos θ
kuk2 S2(u) (11) R(u, θ)T= e−S(u)θ= I − sin θ
kukS(u) + 1 − cos θ kuk2 S2(u) dove
S(u) =
0 −u3 u2
u3 0 −u1
−u2 u1 0
S2(u) =
−u22− u32 u1u2 u1u3 u1u2 −u21− u32 u2u3 u1u3 u2u3 −u12− u22
La matrice S(u) `e antisimmetrica.
Matrici di rotazione - Propriet` a matematiche
Ci chiediamo ora quanti siano i parametri indipendenti che caratterizzano la rotazione.
L’asse di rotazione u `e definito da due parametri: si tratta di una direzione (con segno) nello spazio 3D, quindi un sottospazio di dimensione 1, ma che richiede 2 parametri per rappresentarlo.
L’angolo di rotazione `e definito da 1 parametro.
Quindi una matrice di rotazione `e definita da 3 parametri, che sono contenuti nei 9 elementi che la compongono.
Vedremo pi`u avanti come si passa da R a (u, θ) e viceversa.
Matrici di rotazione - Caratteristiche matematiche
Un’altra caratterizzazione di questi 3 parametri si ha quando ad essi si associano 3 angoli intorno agli assi elementari di rotazione.
Angoli di rotazione
Ogni matrice R pu`o essere associata a tre rotazioni elementari di angoli distinti:
R = Rot(u1, α1)Rot(u2, α2)Rot(u3, α3) dove u1, u2, u3 sono scelti tra i tre assi elementari u1 ∈ {i, j, k}.
Angoli di rotazione
Se due rotazioni contigue sono relative allo stesso asse, si perde un grado di libert`a:
Rot(ui, α1)Rot(ui, α2) = Rot(ui, (α1+ α2)) Occorre quindi escludere questi casi dalle possibili combinazioni di rotazioni elementari.
Infatti, mentre
R = Rot(i, α1)Rot(k, α2)Rot(i, α3)
`
e una scelta ammissibile, il prodotto
R = Rot(i, α1)Rot(k, α2)Rot(k, α3) non `e una scelta ammissibile.
Le possibili combinazioni ammissibili formano i cosiddetti angoli di Cardano.
Angoli di Cardano intorno a tre assi distinti
Vengono riportate le 6 possibili matrici di rotazione, dette di Cardano, ottenibili come prodotto di tre rotazioni elementari distinte intorno a 3 assi distinti; con θ1, θ2 e θ3 sono stati indicati i tre generici angoli di Cardano
R(i, θ1)R(j, θ2)R(k, θ3) angoli di Roll-Pitch-Yaw (versione alternativa) R(i, θ1)R(k, θ3)R(j, θ2)
R(j, θ2)R(i, θ1)R(k, θ3) R(j, θ2)R(k, θ3)R(i, θ1) R(k, θ3)R(i, θ1)R(j, θ2)
R(k, θ3)R(j, θ2)R(i, θ1) angoli di Roll-Pitch-Yaw
Angoli di Cardano intorno a due assi distinti
Sono riportate le 6 possibili rotazioni ottenibili dal prodotto di due rotazioni elementari; in questo caso gli angoli di Cardano sono stati indicati con i simboli α, β e γ:
R(i, α)R(j, β)R(i, γ) R(i, α)R(k, β)R(i, γ) R(j, α)R(i, β)R(j, γ) R(j, α)R(k, β)R(j, γ)
R(k, α)R(i, β)R(k, γ) angoli di Eulero
R(k, α)R(j, β)R(k, γ) angoli di Eulero (versione alternativa)
Angoli di Eulero
Tra gli angoli di Cardano, i pi`u noti sono gli angoli di Eulero, che
descrivono una generica rotazione nello spazio utilizzando tre angoli, detti appunto “di Eulero”, simbolicamente rappresentati da ϕ, θ, ψ, secondo la parametrizzazione seguente:
Rφ,θ,ψ = R (φ, θ, ψ) = Rz,φRx ,θRz,ψ = R(k, φ)R(i, θ)R(k, ψ)
=
cφcψ− sφcθsψ −cφsψ − sφcθcψ sφsθ sφcψ+ cφcθsψ −sφsψ + cφcθcψ −cφsθ
sθsψ sθcψ cθ
Angoli di Eulero
Figura: Gli angoli di Eulero.
Angoli di Eulero
Angoli di Eulero
Per ricavare gli angoli di Eulero da una matrice qualsiasi, purch´e ortogonale e con determinante pari a +1, definita da:
R =
r11 r12 r13
r21 r22 r23
r31 r32 r33
dove i valori rij sono noti, occorre risolvere il seguente sistema di equazioni nonlineari:
r11= cφcψ− sφcθsψ r12= −cφsψ− sφcθcψ
r13= sφsθ
r21= sφcψ+ cφcθsψ r22= −sφsψ+ cφcθcψ
r23= −cφsθ r31= sθsψ r32= sθcψ
r33= cθ
Angoli di Eulero
La soluzione del sistema di equazioni si ottiene come segue:
φ = atan2 (r13, −r23) ± 2kπ
ψ = atan2 (−cφr12− sφr22, cφr11+ sφr21) ± 2kπ θ = atan2 (sφr13− cφr23, r33) ± 2kπ
avendo utilizzato la funzione trigonometrica inversa atan2(y , x ) θ = atan2(y , x ) = tan−1
y x
=
=
0◦ ≤ θ ≤ 90◦ se x ≥ 0; y ≥ 0 90◦ ≤ θ ≤ 180◦ se x ≤ 0; y ≥ 0
−180◦ ≤ θ ≤ −90◦ se x ≤ 0; y ≤ 0
−90◦ ≤ θ ≤ 0◦ se x ≥ 0; y ≤ 0
Angoli di RPY
Un’altra parametrizzazione molto comune `e quella data dagli angoli di Roll, Pitch, Yaw (RPY) (in italiano Rollio, Beccheggio, Imbardata) detti anche angoli di Tait-Bryant, simbolicamente rappresentati da θx, θy, θz e definiti implicitamente come segue
Rθx,θy,θz = R (θx, θy, θz) = Rz,θzRy ,θyRx ,θx = R(k, θz)R(j, θy)R(i, θx)
cθzcθy sθxsθycθz − cθxsθz cθxsθycθz + sθxsθz
cθysθz sθxsθysθz + cθxcθz cθxsθysθz − sθxcθz
−sθy sθxcθy cθxcθy
Angoli di RPY
Figura: Angoli RPY.
Angoli di RPY
Per ricavare gli angoli RPY si applicano ragionamenti analoghi a quelli usati per la soluzione degli angoli di Eulero, ottenendo:
θx = atan2 (r32, r33) ± 2kπ
θz = atan2 (−cθxr12+ sθxr13, cθxr22− sθxr23) ± 2kπ θy = atan2 (−r31, sθxr32+ cθxr33) ± 2kπ
Altre definizioni di angoli RPY sono possibili, e vengono qualche volta usate; ad esempio, alcuni testi definiscono come angoli RPY quelli associati alle tre rotazioni elementari che seguono
Rθz,θy,θx = R (θz, θy, θx) = Rx ,θxRy ,θyRz,θz = R(i, θx)R(j, θy)R(k, θz)
cθycθz −cθysθz sθy sθxsθycθz + cθxsθz −sθxsθysθz + cθxcθz −sθxcθy
−cθxsθycθz + sθxsθz cθxsθysθz + sθxcθz cθxcθy
(12)
Parametri di Eulero
Data la rotazione R (u, θ), di un angolo θ intorno al versore u =u1 u2 u3
T
, si definiscono i quattro parametri di Eulero vi (che non vanno confusi con gli angoli di Eulero), nel modo seguente:
v1= u1sinθ
2, v2 = u2sinθ
2, v3= u3sinθ
2, v4 = cosθ 2
Solo tre di questi parametri sono tra loro indipendenti, in quanto sussiste il vincolo
v u u t
4
X
i =1
vi2 = 1
Parametri di Eulero
Dati u e θ e quindi i parametri di Eulero vi, la rappresentazione della matrice di rotazione R (u, θ) pu`o essere ricavata come segue:
R (u, θ) =
v12− v22− v32+ v42 2 (v1v2− v3v4) 2 (v1v3+ v2v4) 2 (v1v2+ v3v4) −v12+ v22− v32+ v42 2 (v2v3− v1v4) 2 (v1v3− v2v4) 2 (v2v3+ v1v4) −v12− v22+ v32+ v42
Viceversa, data R (u, θ) si ottengono i parametri di Eulero come segue:
v4 = ±1
2p(1 + r11+ r22+ r33) v1 = 1
4v4
(r32− r23) v2 = 1
4v4
(r13− r31) v3 = 1
4v4
(r21− r12)
Parametri di Eulero
L’ambiguit`a di segno presente in v4 si pu`o eliminare assumendo il vincolo:
−π 2 ≤ θ
2 ≤ π 2,
ovvero −π ≤ θ ≤ π; in questo modo il parametro v4 pu`o essere solo positivo.
L’angolo di rotazione si ottiene dalla relazione cos θ = v42− (v12+ v22+ v32) e il versore u come
u = 1
sin(θ/2)
v1
v2 v3
I parametri di Eulero si possono calcolare in funzione degli angoli di Eulero φ, θ, ψ come segue:
v1 = sin
φ−ψ 2
sin θ2
v2= cos
φ−ψ 2
sin θ2
Parametri di Eulero
I parametri di Eulero sono una forma di parametrizzazione molto
conveniente: sono pi`u compatti della matrice R e pi`u efficaci dal punto di vista numerico degli angoli di Eulero, in quanto ricavare R = R (v) non richiede l’uso di formule trigonometriche.
Inoltre, date due rotazioni R (va) e R (vb), si possono direttamente calcolare i parametri di Eulero del prodotto delle rotazioni
R (vc) = R (va) R (vb) mediante il seguente prodotto matriciale:
vc = F (va) vb=
va4 −va3 va2 va1 va3 va4 −va1 va2
−va2 va1 va4 va3
−va1 −va2 −va3 va4
vb
Quaternioni
Per una descrizione dei quaternioni, delle loro propriet`a e dell’uso che se ne fa per rappresentare le rotazioni, si vedano le dispense ad essi dedicate.
Parametri di Cayley-Klein
Un altro modo di rappresentare le rotazioni fu introdotto da Felix Klein (1849-1925).
Iparametri di Cayley-Klein (CK) sono elementi di matrici 2 × 2 Q =α β
γ δ
dove α, β, γ, δ sono variabili complesse. La matrice Q deve essere unitaria, per cui i parametri CK obbediscono alle seguenti condizioni:
α = δ∗ β = −γ∗ e la matrice Q pu`o venire scritta anche come
Q =
α β
−β∗ α∗
con la ulteriore condizione di vincolo
det Q = αα∗+ ββ∗ = 1
Parametri di Cayley-Klein
Nella matrice Q sono presenti 3 parametri liberi che possono venire usati per descrivere le rotazioni; dati i parametri CK, `e possibile ricavare la matrice di rotazione nel modo seguente:
R =
1
2(α2− β2− γ2+ δ2) j
2(−α2− β2+ γ2+ δ2) γδ − αβ j
2(α2− β2+ γ2− δ2) 1
2(α2+ β2+ γ2+ δ2) −j(αβ + γ + δ)
βδ − αγ j(αγ + βδ) αδ + βγ
la matrice R pur contenendo parametri immaginari, risulta reale.
Dati gli angoli di Eulero φ, θ, ψ, i parametri CK si calcolano nel modo seguente:
α = ej(φ+ψ)cos θ2
β = jej(φ−ψ)cos θ2
Parametri di Cayley-Klein
La relazione tra i parametri CK α, β, i parametri di Eulero v1, v2, v3, v4 e gli elementi di un quaternione h0, h1, h2, h3 `e la seguente:
α = h0+ jh3 = v4+ jv3
β = h2+ jh1 = v2+ jv1
La matrice Q si pu`o anche esprimere come:
Q = h01 + j (h1σ1+ h2σ2+ h3σ3)
dove 1 `e la matrice identit`a 2 × 2 e le σi sono le cosiddettematrici di spin di Pauli (Pauli spin matrices)
σ1 =0 1 1 0
σ2=0 −j j 0
σ3 =1 0 0 −1
.
Vettori di rotazione – Vettori di Rodrigues
Un altro modo di rappresentare l’assetto di un corpo rigido consiste nell’utilizzare tre soli parametri, senza ricadere nelle difficolt`a associate, ad esempio, all’uso degli angoli di Eulero o RPY.
Invece di usare la tecnica dei parametri di Eulero o dei quaternioni, che richiede quattro parametri, anche se legati da un’equazione di vincolo sulla norma, si usano i cosiddetti vettori di rotazione r, le cui componenti ri descrivono l’asse di rotazione e la cui norma krk fornisce il valore
dell’angolo di rotazione o di una sua funzione trigonometrica. In generale il vettore di rotazione r `e definito nel modo seguente:
r = γ (θ) u
dove u `e il versore a norma unitaria che individua l’asse di rotazione e krk = γ (θ) `e una funzione dispari.
Vettori di rotazione – Vettori di Rodrigues
La funzione γ (θ) `e scelta di solito tra le quattro seguenti alternative:
a) γ (θ) = θ b) γ (θ) = sin θ c) γ (θ) = sinθ 2 d) γ (θ) = tanθ
2
Si pu`o notare che la sceltac) equivale alla definizione dei quaternioni, essendo le tre componenti di r pari agli ultimi tre elementi di un quaternione, ovvero ai primi tre parametri di Eulero.
In questo caso il vettore r si dice vettore (di rotazione) di Eulero, da non confondersi con i parametri di Eulero o con gli angoli di Eulero.
Vettori di Rodrigues
La scelta d)porta ai cosiddetti vettori (di rotazione) di Rodrigues o di Gibbs, anch’essi molto usati nel campo della cinematica teorica.
La relazione tra i vettori di Rodrigues r e i parametri di Eulero v `e data dalle seguenti espressioni:
r1 = v1 v4
, r2 = v2 v4
, r2= v3 v4
Va sottolineato che i vettori di Rodrigues non sono definiti per angoli θ = (2k ± 1) π.
Dati due vettori di Rodrigues ra e rb, il loro “prodotto”, che indicheremo con il simbolo , si calcola nel modo seguente:
ra rb = ra+ rb− rb× ra 1 − rTrb
Vettori di Rodrigues
Per quanto riguarda l’equivalenza tra matrici di rotazione e vettori di Rodrigues, si possono stabilire le seguenti relazioni:
Il prodotto di due rotazioni RaRb equivale al prodotto ra rb dei corrispondenti vettori di Rodrigues;
Per calcolare R noto r, dopo aver posto v2= r2, v3= r3, v4= 1, si usa la relazione
R (u, θ) =
r12− r22− r32 2 (r1r2− r3) 2 (r1r3+ r2) 2 (r1r2+ r3) −r12+ r22− r32 2 (r2r3− r1) 2 (r1r3− r2) 2 (r2r3+ r1) −r12− r22+ r32
e poi si dividono gli elementi cos`ı trovati per 1 + r12+ r22+ r32;
Per calcolare r nota R si costruisce la matrice antisimmetrica S(r)
S(r) =
0 −r3 r2
r3 0 −r1
−r2 r1 0
= R − RT 1 + tr (R) da cui si possono poi ricavare immediatamente gli elementi ri.