1. Introduzione

2. Le funzioni vettoriali

2.1. Definizione ricorsiva delle funzioni

2.2. Suriettività

2.3. Il caso bidimensionale

2.4. Definizione della base ortonormale

2.5. Osservazione importante

3. La funzione matriciale

3.1. Definizione

3.2. La funzione matriciale è a determinante positivo

4. La parametrizzazione

4.1. Definizione della parametrizzazione

4.2. Suriettività della parametrizzazione

5. Decomposizione in rotazioni piane

5.1. Matrici a blocchi

5.2. La formula finale

6. Un algoritmo per le matrici ortogonali

7. Considerazioni finali

Parametrizzazione del Gruppo Ortogonale Speciale

Di Anselmo Canfora

1. Introduzione

Scopo di questa breve trattazione è dare una descrizione esaustiva della struttura delle rotazioni in Rn mediante una particolare parametrizzazione di SOn(R) definita ricorsivamente.

Tale lavoro permetterà di dimostrare che SOn(R) è fibrato in sfere, dando contemporaneamente una sua decomposizione in rotazioni piane che generalizza ad una dimensione qualunque il teorema di Eulero su SO3(R).

2. Le funzioni vettoriali

2.1. Definizione ricorsiva delle funzioni

Definiamo ora le funzioni σn:[0,2π]×[0,π]n1SnRn+1.

Gli n parametri di σn saranno denotati con i simboli α1n,α2n,...,αnn.

Queste notazioni si riveleranno molto utili nel seguito, quando si farà un uso combinato di σ1,...,σn1 per descrivere SOn(R).

Occasionalmente, nelle dimostrazioni date per induzione, σn1 potrà avere come parametri α1n,...,αn1n invece di α1n1,...,αn1n1.

Definiamo innanzi tutto σ1:[0,2π]S1R2 nel modo seguente:

σ1(α11)=(σ11(α11)σ21(α11)):=(senα11cosα11); è immediato verificare che σ1 parametrizza S1.

Definiamo ora σn per induzione: σkn:=σkn1(α1n,...,αn1n)senαnn per kn e

σn+1n:=cosαnn.

Così ad esempio σ2(α12,α22)=(senα12senα22cosα12senα22cosα22) e

σ3(α13,α23,α33)=(senα13senα23senα33cosα13senα23senα33cosα23senα33cosα33).

2.2. Suriettività

Dimostriamo ora che σn ha per immagine Sn.

Innanzi tutto facciamo vedere come l’immagine di σn sia contenuta in Sn.

Sia per ipotesi induttiva σn1=1 in Rn, dunque in virtù della definizione ricorsiva di σn si ha:

σn2=k=1n+1(σkn(α1n,...,αnn))2=k=1n(σkn1(α1n,...,αn1n)senαnn)2+cos2αnn=σn12sen2αnn+cos2αnn=1 Sia xSnRn+1, facciamo notare come il vettore formato dalle prime n componenti di x=(x1x2...xn+1)t appartenga a (1xn+12)Sn1 ove:

(1xn+12)Sn1:={(xRn):x=1xn+12}, in pratica (x1,...,xn)t appartiene alla (n1) sfera intersezione fra Sn e l’iperpiano ortogonale a en+1 situato alla “quota” xn+1.

Ora, la funzione σn1 parametrizza Sn1 ed è suriettiva su di essa per ipotesi induttiva, allora {α1n,...,αn1n} tali che (1xn+12)σn1(α1n,...,αn1n)=(x1...xn)t.

Ora essendo 1xn+11 e 01xn+121 esiste αnn[0,π] tale che cosαnn=xn+1 e senαnn=1xn+12 di conseguenza αnn è tale che:

x=((1xn+12)σ1n1(α1n,...,αn1n)...(1xn+12)σnn1(α1n,...,αn1n)xn+1)=(σ1n1(α1n,...,αn1n)senαnn...σnn1(α1n,...,αn1n)senαnncosαnn)

Ma questa è proprio la definizione ricorsiva di σn che dunque è suriettiva su Sn visto che xSn{α1n,...,αnn}:σn(α1n,...,αnn)=x.

2.3. Il caso bidimensionale

Considereremo ora più da vicino la struttura di SO2(R), ciò sarà utile come base per le dimostrazioni induttive che faremo nel seguito per descrivere SOn(R).

Dunque se ASOn(R) deve essere: AtA=(acbd)(abcd)=I2=(1001) e det(abcd)=1

Da queste relazioni si ottiene il sistema seguente:

{a2+c2=1b2+d2=1ab+cd=0adbc=1

E’ facile risolvere tale sistema facendo alcune semplici considerazioni, innanzitutto dovendo essere b2+d2=1 abbiamo che (α[0,2π]):d=cosα e b=senα dunque dovendo essere ab+cd=0 si ha che a=±kcosα e c=ksenα, ma dall’ultima relazione otteniamo adbc=1 dunque a=cosα e c=senα.

Dunque la funzione A(α)=(cosαsenαsenαcosα) parametrizza tutto SO2(R).

2.4. Definizione della base ortonormale

Poniamo ora:

ω1n(α1n1):=σn1(α1n1+π2,π2,...,π2)...................................................................................................ωkn(α1n1,...,αkn1):=σn1(α1n1,α2n1,...,αkn1+π2,π2,...,π2)...................................................................................................ωn2n(α1n1,...,αn2n1):=σn1(α1n1,α2n1,...,αkn1,...,αn2n1+π2,π2)ωn1n(α1n1,...,αn1n1):=σn1(α1n1,α2n1,...,αkn1,...,αn1n1+π2)ωnn(α1n1,...,αn1n1):=σn1(α1n1,α2n1,...,αkn1,...,αn1n1)

Indicheremo le componenti di ωkn nel modo seguente:

ωkn(α1n1,...,αkn1):=((ωkn)1(α1n1,...,αkn1)...(ωkn)i(α1n1,...,αkn1)...(ωkn)n(α1n1,...,αkn1))

2.5. Osservazione importante

Notiamo che per definizione kn2 abbiamo (ωkn)i(α1n1,...,αkn1)=(ωkn1)i(α1n1,...,αkn1) per i<n e (ωkn)n(α1n1,...,αkn1)=0 (verificare), inoltre si ha:

ωn1n(α1n1,...,αn1n1)=(cosαn1n1ωn1n1(α1n1,...,αn2n1)senαn1n1)ωnn(α1n1,...,αn1n1)=(senαn1n1ωn1n1(α1n1,...,αn2n1)cosαn1n1)

Si invita il lettore a verificare quanto affermato, in quanto fondamentale ai fini delle dimostrazioni che daremo in seguito.

3. La funzione matriciale

3.1. Definizione

Definiamo contestualmente la funzione matriciale Mn(α1n1,...,αn1n1):=(ω1n...ωnn).

Dimostreremo più avanti che tale funzione è a valori in SOn(R).

Riportiamo a titolo d’esempio le matrici M2(α11), M3(α12,α22), e M4(α13,α23,α33); si invita il lettore ad effettuare i calcoli necessari per ottenerle esplicitamente.

M2(α11)=(cosα11senα11senα11cosα11);

M3(α12,α22)=(cosα12senα12cosα22senα12senα22senα12cosα12cosα22cosα12senα220senα22cosα22)

M4(α13,α23,α33)=(cosα13senα13cosα23senα13senα23cosα33senα13senα23senα33senα13cosα13cosα23cosα13senα23cosα33cosα13senα23senα330senα23cosα23cosα33cosα23senα3300senα33cosα33)

A questo punto sarà certamente chiara la struttura delle matrici Mn appena introdotte.

Dimostriamo ora per induzione che la matrice Mn(α1n1,...,αn1n1) è a valori in SOn(R)nN, ciò è vero per n=2, per n>2 dimostreremo che i vettori ω1n,...,ωnn formano una base ortonormale.

Intanto ωkn=σn1(α1n1,...,αkn1+π2)=1kn perché

σn1(α1n1,...,αn1n1)Sn1{α1n1,...,αn1n1}Rn1 come abbiamo già visto.

Sia dunque per ipotesi induttiva ωin1ωjn1=0ij, abbiamo (si tenga bene a mente la definizione ricorsiva di σn ):

- Caso (ij)<n2

ωinωjn=k=1nσkn1(α1n1,...,αin1+π2,π2,...,π2)σkn1(α1n1,...,αjn1+π2,π2,...,π2)==[k=1n1σkn2(α1n1,...,αin1+π2,π2,...,π2)σkn2(α1n1,...,αjn1+π2,π2,...,π2)sen2π2]+cos2π2==ωin1ωjn1=0

- Caso in2,j=n1

ωinωn1n=k=1nσkn1(α1n1,...,αin1+π2,π2,...,π2)σkn1(α1n1,...,αn1n1+π2)==[k=1n1σkn2(α1n1,...,αin1+π2,π2,...,π2)σkn2(α1n1,...,αn2n1)senπ2sen(αn1n1+π2)]++cosπ2cos(αn1n1+π2)=ωin1ωn1n1cosαn1n1=0

- Caso in2,j=n

ωinωnn=k=1nσkn1(α1n1,...,αin1+π2,π2,...,π2)σkn1(α1n1,...,αn1n1)==[k=1n1σkn2(α1n1,...,αin1+π2,π2,...,π2)σkn2(α1n1,...,αn2n1)senπ2senαn1n1]++cosπ2cosαn1n1=ωin1ωn1n1senαn1n1=0

- Caso i=n1,j=n

ωn1nωnn=k=1nσkn1(α1n1,...,αn1n1+π2)σkn1(α1n1,...,αn1n1)==[k=1n1σkn2(α1n1,...,αn2n1)σkn2(α1n1,...,αn2n1)sen(αn1n1+π2)senαn1n1]++cos(αn1n1+π2)cosαn1n1=(ωn1n1ωn1n11)senαn1n1cosαn1n1=0

3.2. La funzione matriciale è a determinante positivo

Dimostriamo ora che detMn1(α1n1,...,αn2n1)=1detMn(α1n1,...,αn1n1)=1.

Abbiamo (omettiamo gli argomenti delle funzioni):

detMn(α1n1,...,αn1n1)=det(ω1n,...,ωnn)=det((ω1n)1...(ωn2n)1(ωn1n)1(ωnn)1...............(ω1n)i...(ωn2n)i(ωn1n)i(ωnn)i............(ω1n)n...(ωn2n)n(ωn1n)n(ωnn)n)

ovvero:



=det((ω1n1)1...(ωn2n1)1(ωn1n1)1cosαn1n1(ωn1n1)1senαn1n1...............(ω1n1)n1...(ωn2n1)n1(ωn1n1)n1cosαn1n1(ωn1n1)n1senαn1n10...0senαn1n1cosαn1n1)==(sen2αn1n1+cos2αn1n1)det((ω1n1)1...(ωn1n1)1.........(ω1n1)n1...(ωn1n1)n1)==det(ω1n1,...,ωn1n1)=detMn1(α1n1,...,αn2n1)=1

4. La parametrizzazione

4.1. Definizione della parametrizzazione


Definiamo le matrici Mkn(αk1)=(Mk(α1k1,...,αk1k1)Nk,nkNnk,kInk), ove αk:={α1k,α2k,...,αkk}

Possiamo definire ora la funzione Ωn:[0,2π]n1×[0,π](n1)(n2)2SOn(R) ponendo Ωn(α1,...,αn1):=k=2nMnk+2n(αnk+1).

Così ad esempio Ω4(α1,...,α3)=k=24M4k+24(α4k+1)=

=(cosα13senα13cosα23senα13senα23cosα33senα13senα23senα33senα13cosα13cosα23cosα13senα23cosα33cosα13senα23senα330senα23cosα23cosα33cosα23senα3300senα33cosα33)(cosα12senα12cosα22senα12senα220senα12cosα12cosα22cosα12senα2200senα22cosα2200001)(cosα11senα1100senα11cosα110000100001)

E’ immediato verificare che le matrici
Mkn(αk1) e Ωn(α1,...,αn1) sono ortogonali, per dimostrare che Ωn parametrizza SOn(R) basta quindi far vedere che è suriettiva.

4.2. Suriettività della parametrizzazione

Per farlo mostreremo che data una base ortonormale destra {x1,...,xn} di Rn esistono {α1,...,αn1} ovvero {α11,α12,α22,...,α1n1,...,αn1n1}[0,2π]n1×[0,π](n1)(n2)2 tali che:

Ωn(α1,...,αn1)ek=xkk{1,...,n}.

Ricordiamo che M2(α11)M22(α11)k=22Mk2(α11)=Ω2(α11), dunque, come abbiamo già visto, Ω2 è suriettiva su SO2(R).

Sia dunque {x1,...,xn} una base ortonormale destra di Rn, si ha xn=1 dunque xnSn1, allora esistono {α1n1,...,αn1n1}[0,2π]×[0,π]n2 tali che σn1(αn1)=xn.

Abbiamo pure Mn(αn1)en=σn1(αn1)=xn; notiamo che Mn manda i vettori della base canonica e1,...,en1 in una base ortonormale destra contenuta nell’iperpiano ortogonale a xnσn1(αn1).

Viceversa (Mn(αn1))t è tale che (Mn(αn1))txn=en e (Mn(αn1))txkspan(e1,...,en1)k<n anche se in generale (Mn(αn1))txkekkn.

Per mandare i vettori (Mn(αn1))tx1,...,(Mn(αn1))txn1 nei vettori di base e1,...,en1 basta applicare a sinistra la matrice (Ωn1(α1,...,αn2)Nn1,1N1,n11)t alla (Mn(αn1))t; infatti la (Ωn1(α1,...,αn2)Nn1,1N1,n11)t lascia invariato l’ultimo vettore riga di (Mn(αn1))t, ovverosia xnσn1(αn1), inoltre per ipotesi induttiva {α1,...,αn2}[0,2π]n2×[0,π](n2)(n3)2 tali che (con ek indichiamo indifferentemente il kesimo vettore di base canonica di Rn1 e/o Rn ):

(Ωn1(α1,...,αn2)Nn1,1N1,n11)tek=(Ωn1(α1,...,αn2)ek0)=(Mn(αn1))txkk<n (ricordiamo che i vettori (Mn(αn1))tx1,...,(Mn(αn1))txn1, essendo ortogonali a en, hanno la nesima coordinata nulla).

Dunque, applicando a sinistra la matrice Mn(αn1) ad entrambi i membri dell’espressione precedente abbiamo:

Mn(αn1)(Ωn1(α1,...,αn2)Nn1,1N1,n11)tek=Mn(αn1)((Mn(αn1))txk)=xkk<n

ma abbiamo anche:

Mn(αn1)(Ωn1(α1,...,αn2)Nn1,1N1,n11)t=Mn(αn1)k=3nMnk+2n(αnk+1)==k=2nMnk+2n(αnk+1)=Ωn(α1,...,αn1)

dunque esistono {α1,...,αn1}[0,2π]n1×[0,π](n1)(n2)2 tali che Ωn(α1,...,αn1)ek=xkk{1,...,n}

5. Decomposizione in rotazioni piane

Dimostrata la suriettività di Ωn ricaviamo un’ulteriore proprietà delle matrici Mn che permetterà di esprimere qualunque rotazione in Rn come composizione di rotazioni piane.

5.1. Matrici a blocchi

Introduciamo le matrici Pkn:

Pkn(αkn1):=(Ik1Nk1,2Nk1,nk1N2,k1cosαkn1senαkn1senαkn1cosαkn1N2,nk1Nnk1,k1Nnk1,2Ink1)

Dimostriamo per induzione che Mn(αn1)=k=1n1Pkn(αkn1); intanto ciò è banalmente vero per n=2 infatti M2(α11)=k=11Pk2(αk1)=P12(α11).

Sia dunque la proposizione vera per n1, e dimostriamola per n; abbiamo:

k=1n1Pkn(αkn1)=k=1n2(Pkn1(αkn1)Nn1,1N1,n11)Pn1n(αn1n1)==(Mn1(α1n1,...,αn2n1)Nn1,1N1,n11)(In2Nn2,2N2,n2cosαn1n1senαn1n1senαn1n1cosαn1n1)=

=(ω1n1...ωn2n1ωn1n1Nn1,10...001)(In2Nn2,2N2,n2cosαn1n1senαn1n1senαn1n1cosαn1n1)=

=(ω1n1...ωn2n1cosαn1n1ωn1n1senαn1n1ωn1n10...0senαn1n1cosαn1n1)=(ω1n...ωnn)=Mn(αn1)

5.2. La formula finale

È chiaro poi che Mkn(αk1)=j=1k1Pjn(αjk1).

Ricordando ora che si ha Ωn(α1,...,αn1)=k=2nMnk+2n(αnk+1) e sostituendo in tale espressione quella di Mkn(αk1)=j=1k1Pjn(αjk1) si ottiene la generalizzazione del teorema di Eulero a SOn(R):

Ωn(α1,...,αn1)=k=2nMnk+2n(αnk+1)=k=2n(j=1nk+1Pjn(αjnk+1)); il lettore può verificare personalmente come tale espressione coincida con quella data da Eulero per SO3(R).

Riportiamo a titolo di esempio la decomposizione di Ω4(α1,α2,α3) in rotazioni piane:

Ω4(α1,α2,α3)==(cosα13senα1300senα13cosα130000100001)(10000cosα23senα2300senα23cosα2300001)(1000010000cosα33senα3300senα33cosα33)(cosα12senα1200senα12cosα120000100001)(10000cosα22senα2200senα22cosα2200001)(cosα11senα1100senα11cosα110000100001)

6. Un algoritmo per le matrici ortogonali

Diamo ora un algoritmo per decomporre una matrice ortogonale a determinante positivo nella forma appena ricavata; sia allora B=(bji)SOn(R), ci proponiamo di trovare gli angoli {α1,...,αn1} ovvero {α11,α12,α22,...,α1n1,...,αn1n1}[0,2π]n1×[0,π](n1)(n2)2 tali che si abbia Ωn(α1,...,αn1)=B.

B:=(b11...bn11bn1............b1n1...bn1n1bnn1b1n...bn1nbnn)

Ricordiamo che l’ultima colonna di Ωn coincide con l’ultima di Mn, in quanto la moltiplicazione a destra per le matrici Mkn la lascia invariata.

In particolare l’ultimo vettore colonna di Mn è ωnnσn1 dunque l’ultima colonna di B dovrà essere uguale a: σn1(αn1)=(σ1n1...σn1n1σnn1)=(senαn1n1ωn1n1cosαn1n1)=(bn1...bnn1bnn); supponiamo ora |bnn|1 (altrimenti avremo una matrice a blocchi (B'Nn1,1N1,n1±1) e potremo quindi applicare il procedimento di seguito esposto a B', moltiplicando preventivamente una riga o colonna di B' per 1 nel caso bnn=1 e quindi B'On(R)\SOn(R) ).

Per le considerazioni sopra esposte dev’essere bnn=σnn1(αn1)=cosαn1n1 con αn1n1[0,π] determinato univocamente da αn1n1=arcosbnn.

A questo punto essendo σkn1(α1n1,...,αn1n1)=senαn1n1σkn2(α1n1,...,αn2n1) per k<n abbiamo:

σkn2(α1n1,...,αn2n2)=(bn1senαn1n1...bnn1senαn1n1bnnsenαn1n1); notando poi che cosαn2n1=bnn1senαn1n1 ( senαn1n10

perché abbiamo supposto |bnn|1 ) e ricavando così αn2n1 si può determinare cosαn3n1=bnn2senαn1n1senαn2n1 con lo stesso metodo e le stesse considerazioni usate per αn2n1; continuando mediante un procedimento “all’indietro” si possono determinare tutti i parametri {α1n1,...,αn1n1}[0,2π]×[0,π]n2, e di conseguenza σn1(αn1) e Mn(αn1) che da σn1(αn1) è completamente descritta.

A questo punto, ricordando che si ha Ωn(α1,...,αn1)=k=2nMnk+2n(αnk+1), basta moltiplicare B a sinistra per la matrice (Mn)1=(Mn)t appena ottenuta, ricavando così

la matrice (Ωn1(α1,...,αn2)N1,n1Nn1,11)=(Mn)tB; applicando poi a (Mn)tB il medesimo procedimento usato per B, notando cioè come la (n1)esima colonna della matrice formata dalle sue prime n1 righe e colonne sia uguale a σn2(αn2) si determinano {α1n2,...,αn2n2}[0,2π]×[0,π]n3 dunque Mn1n(αn2) e così via, fino a ricavare, sempre “all’indietro”, α11 e M2n(α11).


7. Considerazioni finali

Per finire facciamo alcune considerazioni sul numero di parametri necessario per descrivere SOn(R); notiamo che abbiamo scomposto una rotazione di Rn in n(n1)2 rotazioni piane, e che i piani ottenibili combinando a due a due gli n vettori di base sono esattamente (n2)=n(n1)2.

Per quanto riguarda Ωn ricordiamo che essa è definita come prodotto da n a 2 delle funzioni Mkn(αk1):[0,2π]×[0,π]k2SOn(R), dunque è il prodotto di n1 matrici aventi ciascuna un dominio del tipo [0,2π]×[0,π]k2; dunque Ωn avrà un dominio formato da [0,2π]n1 e da [0,π](n1)(n2)2 dunque dipende in tutto da n(n1)2 parametri indipendenti.

Ancora, la condizione di ortogonalità per una matrice di ordine n è definita da n(n+1)2 prodotti scalari dunque richiede n2n(n+1)2=n(n1)2 parametri indipendenti.