Macierz rotacji - Rotation matrix

W liniowym Algebra , A macierz obrotu jest macierz transformacji , która jest używana do wykonywania ruchu obrotowego w przestrzeni euklidesowej . Na przykład, stosując poniższą konwencję, macierz

obraca punkty na płaszczyźnie xy w kierunku przeciwnym do ruchu wskazówek zegara o kąt θ względem osi x wokół początku dwuwymiarowego kartezjańskiego układu współrzędnych . Aby wykonać obrót na płaszczyźnie punktu o współrzędnych standardowych v =( x , y ) , należy go zapisać jako wektor kolumnowy i pomnożyć przez macierz R :

Jeśli x i y są współrzędnymi punktu końcowego wektora, gdzie x jest cosinusem, a y jest sinusem, to powyższe równania stają się formułami kąta sumowania trygonometrycznego . Rzeczywiście, macierz rotacji może być postrzegana jako formuły kąta sumowania trygonometrycznego w postaci macierzy. Jednym ze sposobów zrozumienia tego jest powiedzenie, że mamy wektor pod kątem 30° od osi x i chcemy obrócić ten kąt o dalsze 45°. Musimy po prostu obliczyć współrzędne punktu końcowego wektora na 75°.

Przykłady w tym artykule dotyczą aktywnych obrotów wektorów w kierunku przeciwnym do ruchu wskazówek zegara w prawoskrętnym układzie współrzędnych ( y przeciwnie do ruchu wskazówek zegara od x ) przez wstępne mnożenie ( R po lewej). Jeśli którakolwiek z nich zostanie zmieniona (np. obracanie osi zamiast wektorów, transformacja pasywna ), należy użyć odwrotności przykładowej macierzy, która pokrywa się z jej transpozycją .

Ponieważ mnożenie macierzy nie ma wpływu na wektor zerowy (współrzędne początku), macierze rotacji opisują obroty wokół początku. Macierze rotacji zapewniają algebraiczny opis takich rotacji i są szeroko stosowane do obliczeń w geometrii , fizyce i grafice komputerowej . W niektórych publikacjach termin rotacja jest uogólniany na rotacje niewłaściwe , charakteryzujące się macierzami ortogonalnymi z wyznacznikiem -1 (zamiast +1). Łączą one właściwe obroty z odbiciami (które odwracają orientację ). W innych przypadkach, gdy odbicia nie są brane pod uwagę, właściwa etykieta może zostać upuszczona. Ta ostatnia konwencja została zastosowana w tym artykule.

Macierze rotacji są macierzami kwadratowymi z rzeczywistymi wpisami. Dokładniej, można je scharakteryzować jako macierze ortogonalne z wyznacznikiem  1; oznacza to, że macierz kwadratowa R jest macierzą rotacji wtedy i tylko wtedy, gdy R T = R -1 i det R = 1 . Zbiór wszystkich macierzy ortogonalnych o rozmiarze n z determinujących +1 tworzy grupy znany jako specjalnej grupy prostopadłym SO ( N ) , przy czym przykładem może być grupa ruch obrotowy, (3) . Zbiór wszystkich macierzy ortogonalnych o rozmiarze n z wyznacznikiem +1 lub -1 tworzy (ogólną) grupę ortogonalną O( n ) .

W dwóch wymiarach

Obrót wektora w kierunku przeciwnym do ruchu wskazówek zegara o kąt θ . Wektor jest początkowo wyrównany z osią x .

W dwóch wymiarach standardowa macierz rotacji ma postać:

To obraca wektory kolumnowe za pomocą następującego mnożenia macierzy ,

Zatem nowe współrzędne ( x ′, y ′) punktu ( x , y ) po obrocie są

Przykłady

Na przykład, gdy wektor

jest obrócony o kąt θ , jego nowe współrzędne to

i kiedy wektor

jest obrócony o kąt θ , jego nowe współrzędne to

Kierunek

Kierunek obrotu wektora jest przeciwny do ruchu wskazówek zegara, jeśli θ jest dodatnie (np. 90°), a zgodnie z ruchem wskazówek zegara, jeśli θ jest ujemne (np. -90°). Zatem macierz obrotu w prawo jest znaleziona jako

Przypadek dwuwymiarowy jest jedynym nietrywialnym (tj. nie jednowymiarowym) przypadkiem, w którym grupa macierzy rotacji jest przemienna, więc nie ma znaczenia, w jakiej kolejności wykonywane są wielokrotne rotacje. Alternatywna konwencja wykorzystuje obracające się osie, a powyższe macierze reprezentują również obrót osi zgodnie z ruchem wskazówek zegara o kąt θ .

Niestandardowa orientacja układu współrzędnych

Obrót o kąt θ z niestandardowymi osiami.

Jeśli używany jest standardowy prawoskrętny kartezjański układ współrzędnych , z osią x po prawej stronie i osią y w górę, obrót R ( θ ) jest przeciwny do ruchu wskazówek zegara. Jeśli używany jest lewoskrętny kartezjański układ współrzędnych, z x skierowanym w prawo, ale y skierowanym w dół, R ( θ ) jest zgodne z ruchem wskazówek zegara. Takie niestandardowe orientacje są rzadko używane w matematyce, ale są powszechne w grafice komputerowej 2D , która często ma początek w lewym górnym rogu i y w dół ekranu lub strony.

Zobacz poniżej inne alternatywne konwencje, które mogą zmienić sens obrotu wytwarzanego przez macierz obrotu.

Wspólne rotacje

Szczególnie przydatne są matryce

do obrotu o 90°, 180° i 270° w kierunku przeciwnym do ruchu wskazówek zegara.

Obrót o 180° (w środku), po którym następuje obrót o 90° (po lewej) jest równoważny pojedynczemu obrotowi o 90° (dodatnie 270°) (po prawej). Każda z tych figur przedstawia wynik obrotu względem pionowej pozycji początkowej (na dole po lewej) i zawiera macierzową reprezentację permutacji zastosowanej przez obrót (w środku po prawej), a także inne powiązane diagramy. Zobacz "Zapis permutacji" na Wikiversity, aby uzyskać szczegółowe informacje.

Związek z płaszczyzną złożoną

Odkąd

matryce kształtu

tworzą pierścień izomorficzne z pola o liczbach zespolonych . Zgodnie z tym izomorfizmie matryce obrotowe odpowiadają koła z jednostki zespolonej , złożone liczby modułu 1 .

Jeśli zidentyfikować z przez izomorfizmie liniowego działanie matrycy powyżej w postaci wektorów , odpowiada pomnożone przez liczbę zespoloną x + IY i obrotów odpowiadają mnożenia liczb zespolonych o module 1 .

Jak każdą macierz rotacji można zapisać

powyższa korespondencja wiąże taką macierz z liczbą zespoloną

(ta ostatnia równość to wzór Eulera ).

W trzech wymiarach

Dodatni obrót o 90° wokół osi y ( po lewej) po jednym wokół osi z (w środku) daje obrót o 120° wokół głównej przekątnej (po prawej).
W lewym górnym rogu znajdują się macierze obrotu, w prawym dolnym rogu są odpowiednie permutacje sześcianu z początkiem w jego środku.

Obroty podstawowe

Obrót podstawowy (zwany także rotacją elementarną) to obrót wokół jednej z osi układu współrzędnych. Poniższe trzy podstawowe macierze rotacji obracają wektory o kąt θ wokół osi x- , y- lub z- w trzech wymiarach, używając zasady prawej ręki — która kodyfikuje ich znaki przemienne. (Te same macierze mogą również reprezentować obrót osi zgodnie z ruchem wskazówek zegara.)

W przypadku wektorów kolumnowych każdy z tych podstawowych obrotów wektora pojawia się w kierunku przeciwnym do ruchu wskazówek zegara, gdy oś, wokół której występują, wskazuje na obserwatora, układ współrzędnych jest prawoskrętny, a kąt θ jest dodatni. Na przykład R z obróci się w kierunku osi y wektor wyrównany z osią x , co można łatwo sprawdzić, operując R z na wektorze (1,0,0) :

Jest to podobne do rotacji wytwarzanej przez wspomnianą powyżej dwuwymiarową macierz rotacji. Zobacz poniżej alternatywne konwencje, które mogą pozornie lub faktycznie odwracać sens obrotu wytwarzanego przez te macierze.

Ogólne rotacje

Inne macierze rotacji można uzyskać z tych trzech za pomocą mnożenia macierzy . Na przykład produkt

reprezentuje obrót, którego kąty odchylenia, pochylenia i przechylenia wynoszą odpowiednio α , β i γ . Bardziej formalnie jest to rotacja wewnętrzna, której kąty Taita-Bryana wynoszą odpowiednio α , β , γ , wokół osi z , y , x . Podobnie produkt

reprezentuje obrót zewnętrzny, którego (niewłaściwe) kąty Eulera wynoszą α , β , γ , wokół osi x , y , z .

Macierze te dają pożądany efekt tylko wtedy, gdy są używane do wstępnego mnożenia wektorów kolumnowych i (ponieważ ogólnie mnożenie macierzy nie jest przemienne ) tylko wtedy, gdy są stosowane w określonej kolejności (zobacz Niejednoznaczności po więcej szczegółów).

Konwersja z macierzy rotacji na oś-kąt

Każdy obrót w trzech wymiarach jest zdefiniowany przez swoją (wektor wzdłuż tej osi jest niezmieniony przez obrót), a jego kąt — wielkość obrotu wokół tej osi ( twierdzenie Eulera o obrocie ).

Istnieje kilka metod obliczania osi i kąta z macierzy obrotu (zobacz także reprezentacja oś-kąt ). Tutaj opisujemy tylko metodę opartą na obliczeniu wektorów własnych i wartości własnych macierzy rotacji. Możliwe jest również wykorzystanie śladu macierzy rotacji.

Ustalenie osi

Rotację R wokół osi u można rozłożyć za pomocą 3 endomorfizmów P , ( IP ) i Q (kliknij, aby powiększyć).

Mając macierz obrotu 3 × 3 R , wektor u równoległy do ​​osi obrotu musi spełniać

ponieważ obrót u wokół osi obrotu musi skutkować u . Powyższe równanie można rozwiązać dla u, które jest unikalne aż do współczynnika skalarnego, chyba że R = I .

Co więcej, równanie można przepisać

co wskazuje, że u leży w przestrzeni zerowej z R - I .

Patrząc w inny sposób, u oznacza wektor własny z R odpowiadający wartości własnych λ = 1 . Każda macierz rotacji musi mieć tę wartość własną, przy czym pozostałe dwie wartości własne są złożonymi sprzężeniami siebie. Wynika z tego, że ogólna macierz rotacji w trzech wymiarach ma, aż do stałej multiplikatywnej, tylko jeden rzeczywisty wektor własny.

Jednym ze sposobów określenia osi obrotu jest pokazanie, że:

Ponieważ ( RR T ) jest macierzą skośno-symetryczną , możemy wybrać u takie, że

Iloczyn macierz-wektor staje się iloczynem krzyżowym wektora z samym sobą, zapewniając, że wynik jest zerowy:

Dlatego, jeśli

następnie

Wielkość u obliczona w ten sposób to || u || = 2 sin θ , gdzie θ jest kątem obrotu.

To nie działa, jeśli R jest symetryczne. Powyżej, gdy R - R t ma wartość zero, a wszystkie następne etapy są nieprawidłowe. W takim przypadku konieczne jest przekątne R i znalezienie wektora własnego odpowiadającego wartości własnej równej 1.

Określanie kąta

Aby znaleźć kąt obrotu, gdy znana jest oś obrotu, wybierz wektor v prostopadły do ​​osi. Wtedy kąt obrotu jest kątem między v i R v .

Bardziej bezpośrednią metodą jest jednak po prostu obliczenie śladu : sumy elementów diagonalnych macierzy rotacji. Należy zwrócić uwagę, aby wybrać odpowiedni znak dla kąta θ, aby pasował do wybranej osi:

z czego wynika, że ​​wartość bezwzględna kąta wynosi

Macierz obrotu od osi i kąta

Macierz właściwego obrotu R o kąt θ wokół osi u = ( u x , u y , u z ) , wersor z u2
x
+ u2
r
+ u2
= 1
, dana jest wzorem:

Wyprowadzenie tej macierzy z pierwszych zasad można znaleźć w sekcji 9.2 tutaj. Podstawowym pomysłem na wyprowadzenie tej macierzy jest podzielenie problemu na kilka znanych prostych kroków.

  1. Najpierw obróć daną oś i punkt tak, aby oś leżała w jednej z płaszczyzn współrzędnych ( xy , yz lub zx )
  2. Następnie obróć daną oś i punkt tak, aby oś była wyrównana z jedną z dwóch osi współrzędnych dla tej konkretnej płaszczyzny współrzędnych ( x , y lub z )
  3. Użyj jednej z podstawowych macierzy obrotu, aby obrócić punkt w zależności od osi współrzędnych, z którą oś obrotu jest wyrównana.
  4. Odwróć obróć parę oś-punkt tak, aby osiągnęła ostateczną konfigurację, jak w kroku 2 (Cofnij krok 2)
  5. Obróć wstecz pary oś-punkt, co zostało wykonane w kroku 1 (cofanie kroku 1)

Można to napisać bardziej zwięźle jako

gdzie [ U ] x jest przekrój matrycy produktu z u ; ekspresja uU jest produkt zewnętrzną i I jest macierzą jednostkową . Alternatywnie wpisy w macierzy to:

gdzie ε jkl jest symbolem Levi-Civita, gdzie ε 123 = 1 . Jest to macierzowa forma rotacji Rodriguesa (lub równoważna, inaczej sparametryzowana formuła Eulera-Rodriguesa ) z

W obrocie wektora x wokół osi u o kąt θ można zapisać jako:

Jeśli przestrzeń 3D jest prawostronna i θ > 0 , ten obrót będzie przeciwny do ruchu wskazówek zegara, gdy u wskazuje na obserwatora ( Reguła prawej ręki ). Jawnie, z prawoskrętną bazą ortonormalną,

Zwróć uwagę na uderzające, jedynie pozorne różnice w stosunku do równoważnego sformułowania Lie-algebraicznego poniżej .

Nieruchomości

Dla dowolnej n- wymiarowej macierzy rotacji R działającej na

(Obrót jest macierzą ortogonalną )

Wynika, że:

Rotacja jest określana jako prawidłowa, jeśli det R = 1 , a niewłaściwa (lub odbicia od rotacji ), jeśli det R = –1 . W celu uzyskania jeszcze wymiarach n = 2, K , to n wartości własnych X z odpowiednim obrotem występować jako pary sprzężenie zespolone , które są pierwiastkami z sobą λ = e ± j o j = 1, ..., K , która jest prawdziwe tylko dla λ = ±1 . W związku z tym może nie być wektorów ustalonych przez obrót ( λ = 1 ), a zatem nie może być żadnej osi obrotu. Wszelkie ustalone wektory własne występują parami, a oś obrotu jest podprzestrzenią parzystowymiarową.

Dla nieparzystych wymiarów n = 2 k + 1 obrót właściwy R będzie miał nieparzystą liczbę wartości własnych, z co najmniej jedną λ = 1, a oś obrotu będzie nieparzystą podprzestrzenią wymiarową. Dowód:

Tutaj I jest macierzą jednostkową i używamy det( R T ) = det( R ) = 1 , jak również (−1) n = −1 ponieważ n jest nieparzyste. Dlatego det( RI ) = 0 , co oznacza, że ​​istnieje zerowy wektor v z ( R – I ) v = 0 , czyli R v = v , ustalonym wektorem własnym. Mogą również istnieć pary ustalonych wektorów własnych w parzystowymiarowej podprzestrzeni ortogonalnej do v , więc całkowity wymiar ustalonych wektorów własnych jest nieparzysty.

Na przykład, w 2-przestrzeni n = 2 , obrót o kąt θ ma wartości własne λ = e i λ = e , więc nie ma osi obrotu z wyjątkiem sytuacji, gdy θ = 0 , w przypadku rotacji zerowej. W 3-przestrzeni n = 3 oś obrotu właściwego niezerowego jest zawsze jednoznaczną linią, a obrót wokół tej osi o kąt θ ma wartości własne λ = 1, e , e . W 4-przestrzeni n = 4 cztery wartości własne mają postać e ± , e ± . Obrót zerowy ma θ = φ = 0 . Przypadek θ = 0, φ ≠ 0 nazywa się prostym obrotem , z dwiema jednostkowymi wartościami własnymi tworzącymi płaszczyznę osi i dwuwymiarowym obrotem prostopadłym do płaszczyzny osi. W przeciwnym razie nie ma płaszczyzny osi. Przypadek θ = φ nazywamy rotacją izokliniczną , w której wartości własne e ± iθ są powtarzane dwukrotnie, więc każdy wektor jest obracany o kąt θ .

Ślad macierzy rotacji jest równy sumie jej wartości własnych. Dla n = 2 , obrót o kąt θ ma ślad 2 cos θ . Dla n = 3 , obrót wokół dowolnej osi o kąt θ ma ślad 1 + 2 cos θ . Dla n = 4 , a śladem jest 2(cos θ + cos φ ) , co daje 4 cos θ dla rotacji izoklinicznej.

Przykłady

Geometria

W geometrii euklidesowej rotacja jest przykładem izometrii , transformacji, która przesuwa punkty bez zmiany odległości między nimi. Obroty różnią się od innych izometrii dwiema dodatkowymi właściwościami: pozostawiają (co najmniej) jeden punkt stały, a " ręczność " pozostają niezmienione. W przeciwieństwie do tego, translacja przesuwa każdy punkt, odbicie zmienia kolejność prawo- i leworęczną, odbicie ślizgowe wykonuje obie te czynności, a niewłaściwa rotacja łączy zmianę ręczności z normalną rotacją.

Jeśli jako początek kartezjańskiego układu współrzędnych przyjmie się punkt stały , to każdemu punktowi można nadać współrzędne jako przesunięcie od początku. Można więc pracować z wektorową przestrzenią przemieszczeń zamiast samych punktów. Załóżmy teraz, że ( p 1 , ..., p n ) są współrzędnymi wektora p od początku O do punktu P . Wybierz bazę ortonormalną dla naszych współrzędnych; wtedy kwadrat odległości do P , według Pitagorasa , wynosi

które można obliczyć za pomocą mnożenia macierzy

Obrót geometryczny przekształca linie w linie i zachowuje proporcje odległości między punktami. Na podstawie tych własności można wykazać, że obrót jest przekształceniem liniowym wektorów, a zatem można go zapisać w postaci macierzowej Q p . Fakt, że rotacja zachowuje nie tylko proporcje, ale same odległości, określa się jako

lub

Ponieważ to równanie obowiązuje dla wszystkich wektorów p , można dojść do wniosku, że każda macierz obrotu Q spełnia warunek ortogonalności ,

Obroty zachowują ręczność, ponieważ nie mogą zmienić kolejności osi, co implikuje specjalny warunek macierzy ,

Co równie ważne, można wykazać, że każda macierz spełniająca te dwa warunki działa jak rotacja.

Mnożenie

Odwrotnością macierzy rotacji jest jej transpozycja, która jest jednocześnie macierzą rotacji:

Iloczynem dwóch macierzy rotacji jest macierz rotacji:

Dla n > 2 , mnożenie n × n macierzy rotacji generalnie nie jest przemienne .

Zauważając, że każda macierz jednostkowa jest macierzą rotacji, a mnożenie macierzy jest asocjacyjne , możemy podsumować wszystkie te własności, mówiąc, że macierze rotacji n × n tworzą grupę , która dla n > 2 jest nieabelowa , zwana specjalną ortogonalną grupa i oznaczona SO ( n ) , SO ( n , R ) , SO n lub SO n ( R ) , grupa n x n macierzy rotacji jest izomorficzny grupy obrotów w sposób n -wymiarowej przestrzeni. Oznacza to, że mnożenie macierzy rotacji odpowiada kompozycji rotacji, zastosowanej w kolejności od lewej do odpowiednich macierzy.

Niejasności

Alias ​​i rotacje alibi

Interpretacja macierzy rotacji może być podatna na wiele niejasności.

W większości przypadków efekt niejednoznaczności jest równoważny efektowi odwrócenia macierzy rotacji (dla tych macierzy ortogonalnych równoważnie transpozycja macierzy ).

Alias ​​lub alibi (pasywna lub aktywna) transformacja
Współrzędne punktu P mogą ulec zmianie z powodu obrotu układu współrzędnych CS ( alias ) lub obrotu punktu P ( alibi ). W tym drugim przypadku obrót P powoduje również obrót wektora v reprezentującego P . Innymi słowy, albo P i v są ustalone, gdy obraca się CS (alias), albo CS jest ustalone, gdy obraca się P i v (alibi). Dowolny obrót można zasadnie opisać w obie strony, ponieważ wektory i układy współrzędnych faktycznie obracają się względem siebie, wokół tej samej osi, ale w przeciwnych kierunkach. W tym artykule wybraliśmy podejście alibi do opisania rotacji. Na przykład,
reprezentuje obrót wektora v w kierunku przeciwnym do ruchu wskazówek zegara o kąt θ lub obrót CS o ten sam kąt, ale w przeciwnym kierunku (tj. zgodnie z ruchem wskazówek zegara). Transformacje Alibi i aliasów są również nazywane odpowiednio transformacjami aktywnymi i pasywnymi .
Przed mnożeniem lub po mnożeniu
Ten sam punkt P może być reprezentowany przez wektor kolumnowy v lub wektor wierszowy w . Macierze rotacji mogą albo wstępnie pomnożyć wektory kolumnowe ( R v ), albo pomnożyć wektory wierszy ( w R ). Jednak R v powoduje obrót w przeciwnym kierunku względem w R . W tym artykule rotacje wytworzone na wektorach kolumnowych są opisane za pomocą premultiplikacji. Aby uzyskać dokładnie taki sam (to jest obrót samej końcowej współrzędne punktu P ), co odpowiada wierszowy wektor musi być dodatkowo mnożone przez transponowaniem z R (tj wag R T ).
Współrzędne prawo- lub leworęczne
Macierz i wektor można przedstawić w odniesieniu do prawoskrętnego lub lewostronnego układu współrzędnych. W całym artykule przyjęliśmy orientację praworęczną, chyba że zaznaczono inaczej.
Wektory lub formularze
Przestrzeń wektorów ma dwie przestrzenie w postaci liniowych , a matryca może działać po obu wektorów lub formach.

Rozkłady

Niezależne samoloty

Rozważ macierz rotacji 3 × 3

Jeśli Q działa w określonym kierunku, v , czysto jako skalowanie przez czynnik λ , to mamy

aby

Zatem λ jest pierwiastkiem wielomianu charakterystycznego dla Q ,

Na uwagę zasługują dwie cechy. Po pierwsze, jeden z pierwiastków (lub wartości własnych ) to 1, co oznacza, że ​​macierz nie ma wpływu na pewien kierunek. W przypadku rotacji w trzech wymiarach jest to obrotu (pojęcie, które nie ma znaczenia w żadnym innym wymiarze). Po drugie, pozostałe dwa pierwiastki są parą sprzężonych sprzężeń zespolonych, których iloczyn wynosi 1 (stały wyraz kwadratu), a suma wynosi 2 cos θ (zanegowany wyraz liniowy). Ta faktoryzacja jest interesująca dla macierzy rotacji 3 × 3 , ponieważ to samo dzieje się dla nich wszystkich. (Jako szczególne przypadki, dla rotacji zerowej „złożone koniugaty” mają obie wartości 1, a dla rotacji o 180° oba są -1.) Ponadto, podobna faktoryzacja obowiązuje dla dowolnej macierzy rotacji n × n . Jeśli wymiar, n , jest nieparzysty, będzie „wisząca” wartość własna równa 1; a dla dowolnego wymiaru pozostałe czynniki wielomianowe na wyrażenia kwadratowe, takie jak ten tutaj (z zaznaczonymi dwoma szczególnymi przypadkami). Mamy gwarancję, że wielomian charakterystyczny będzie miał stopień n, a zatem n wartości własne. A ponieważ macierz rotacji komutuje z jej transpozycją, jest to macierz normalna , więc może być diagonalizowana. Dochodzimy do wniosku, że każda macierz obrotu, wyrażona w odpowiednim układzie współrzędnych, dzieli się na niezależne obroty dwuwymiarowych podprzestrzeni co najwyżejn/2 z nich.

Suma wpisów na głównej przekątnej macierzy nazywa się śladem ; nie zmienia się, jeśli zmienimy orientację układu współrzędnych, i zawsze równa się sumie wartości własnych. Ma to wygodny wpływu na 2 x 2 i 3 x 3 matryc obrotowych, że ślad ujawnia kąta obrotu , θ w przestrzeni dwuwymiarowej (lub podprzestrzeni). Dla macierzy 2 × 2 ślad wynosi 2 cos θ , a dla macierzy 3 × 3 jest to 1 + 2 cos θ . W przypadku trójwymiarowym podprzestrzeń składa się ze wszystkich wektorów prostopadłych do osi obrotu (kierunek niezmienny, z wartością własną 1). W ten sposób z dowolnej macierzy obrotu 3 × 3 możemy wyciągnąć oś obrotu i kąt, które całkowicie określają obrót.

Sekwencyjne kąty

Ograniczenia na macierzy rotacji 2 × 2 implikują, że musi ona mieć postać

z a 2 + b 2 = 1 . Dlatego możemy ustawić a = cos θ i b = sin θ , dla pewnego kąta θ . Aby znaleźć θ , nie wystarczy spojrzeć na a lub b w pojedynkę; musimy rozważyć oba razem, aby umieścić kąt we właściwej ćwiartce , używając dwuargumentowej funkcji arcus tangens .

Rozważmy teraz pierwszą kolumnę macierzy rotacji 3 × 3 ,

Chociaż a 2 + b 2 prawdopodobnie nie będzie równe 1, ale pewna wartość r 2 < 1 , możemy użyć niewielkiej odmiany poprzedniego obliczenia, aby znaleźć tak zwaną rotację Givensa, która przekształca kolumnę do

zerowanie b . Działa to na podprzestrzeń rozpiętą przez osie x i y . Możemy wtedy powtórzyć proces dla xz -podprzestrzeni do zera c . Działając na pełnej macierzy, te dwa obroty dają schematyczny kształt

Przenosząc uwagę na drugą kolumnę, obrót Givensa podprzestrzeni yz może teraz wyzerować wartość z . To doprowadza do postaci pełną macierz

która jest macierzą tożsamości. W ten sposób rozłożyliśmy Q jako

N x n macierzy rotacji będzie mieć ( n - 1) + ( n - 2) + ⋯ + 2 + 1 , lub

wpisy poniżej przekątnej do zera. Możemy je wyzerować, rozszerzając tę ​​samą ideę przechodzenia przez kolumny z serią obrotów w ustalonej sekwencji płaszczyzn. Dochodzimy do wniosku, że zbiór n × n macierzy rotacji, z których każda ma n 2 wpisów, może być sparametryzowany przez1/2n ( n − 1) kątów.

xzx w xzy w xyx w xyz w
yxy w yxz w yzy w yzx w
zyz w ZYX w zxz w zxy w
xzx b yzx b xyx b zyx b
yxy b zxy b yzy b xzy b
zyż b xyz b zxz b yxz b

W trzech wymiarach jest to macierzowa forma obserwacji Eulera , więc matematycy nazywają uporządkowany ciąg trzech kątów kątami Eulera . Sytuacja jest jednak nieco bardziej skomplikowana, niż dotychczas wskazywaliśmy. Mimo niewielkiego wymiaru mamy w rzeczywistości dużą swobodę w kolejności używanych przez nas par osi; mamy też pewną swobodę w doborze kątów. W ten sposób znajdujemy wiele różnych konwencji stosowanych przy parametryzacji rotacji trójwymiarowych dla fizyki, medycyny, chemii lub innych dyscyplin. Gdy włączymy opcję osi świata lub osi ciała, możliwe są 24 różne sekwencje. I podczas gdy niektóre dyscypliny nazywają dowolną sekwencję kątami Eulera, inne nadają różnym sekwencjom różne nazwy (Cardano, Tait-Bryan, roll-pitch-yaw ).

Jednym z powodów dużej liczby opcji jest to, że, jak wspomniano wcześniej, rotacje w trzech (i wyższych) wymiarach nie dojeżdżają. Jeśli odwrócimy daną sekwencję obrotów, otrzymamy inny wynik. Oznacza to również, że nie możemy skomponować dwóch obrotów przez dodanie odpowiadających im kątów. Zatem kąty Eulera nie są wektorami , pomimo podobieństwa w wyglądzie jako trójka liczb.

Wymiary zagnieżdżone

3 x 3 macierz obrotu, takie jak

sugeruje macierz rotacji 2 × 2 ,

jest osadzony w lewym górnym rogu:

To nie jest iluzja; nie tylko jedna, ale wiele kopii n- wymiarowych rotacji znajduje się w ( n + 1) -wymiarowych obrotach, jako podgrupy . Każde osadzenie pozostawia ustalony jeden kierunek, który w przypadku matryc 3×3 jest osią obrotu. Na przykład mamy

ustalając odpowiednio oś x,y i oś z . Oś obrotu nie musi być osią współrzędnych; jeśli u = ( x , y , z ) jest wektorem jednostkowym w pożądanym kierunku, wtedy

gdzie c θ = cos θ , s θ = sin θ , jest obrotem o kąt θ pozostawiając oś u ustaloną.

Kierunek w ( n + 1) -wymiarowej przestrzeni będzie jednostkowym wektorem wielkości, który możemy uznać za punkt na uogólnionej sferze S n . Tak więc jest naturalne, że opisuje grupę obrotów SO ( n + 1), jako połączenie SO ( n ) i S n . Odpowiednim formalizmem jest wiązka włókien ,

gdzie dla każdego kierunku w przestrzeni bazowej S n , światłowód nad nim w przestrzeni całkowitej SO( n + 1) jest kopią przestrzeni światłowodu SO( n ) , a mianowicie rotacjami, które utrzymują ten kierunek.

W ten sposób możemy zbudować macierz obrotu n × n , zaczynając od macierzy 2 × 2 , kierując jej stałą oś na S 2 (zwykłą sferę w przestrzeni trójwymiarowej), kierując wynikowy obrót na S 3 i tak dalej aż do S n -1 . Punkt na S n można wybrać za pomocą n liczb, więc znowu mamy1/2n ( n − 1) liczb opisujących dowolnąmacierz rotacji n × n .

W rzeczywistości możemy postrzegać sekwencyjny rozkład kątów, omówiony wcześniej, jako odwrócenie tego procesu. Złożenie n − 1 obrotów Givensa sprowadza pierwszą kolumnę (i wiersz) do (1, 0, ..., 0) , tak że pozostała część macierzy jest macierzą rotacji o jeden wymiar mniejszym, osadzoną tak, aby pozostawić (1, 0, ..., 0) naprawiono.

Parametry pochylenia za pomocą wzoru Cayleya

Gdy macierz obrotu n × n Q , nie zawiera wartości własnej -1, a zatem żaden z rotacji planarnych, które zawiera, nie jest obrotem o 180°, to Q + I jest macierzą odwracalną . Większość macierzy rotacji pasuje do tego opisu i dla nich można wykazać, że ( QI )( Q + I ) −1 jest macierzą skośno-symetryczną , A . Zatem A T = − A ; a ponieważ przekątna jest z konieczności równa zeru, a górny trójkąt określa dolny, A zawiera1/2n ( n − 1) niezależnych liczb.

Dogodnie I - A jest odwracalny, gdy A jest skośno-symetryczny; w ten sposób możemy odzyskać oryginalną macierz za pomocą przekształcenia Cayleya ,

która odwzorowuje dowolną skośno-symetryczną macierz A na macierz rotacji. W rzeczywistości, poza zauważonymi wyjątkami, możemy w ten sposób wytworzyć dowolną macierz rotacji. Chociaż w praktycznych zastosowaniach nie możemy sobie pozwolić na ignorowanie obrotów o 180°, transformata Cayleya jest nadal potencjalnie użytecznym narzędziem, dającym parametryzację większości macierzy rotacji bez funkcji trygonometrycznych.

W trzech wymiarach mamy na przykład ( Cayley 1846 )

Jeśli skondensujemy wpisy skośne do wektora ( x , y , z ) , to wytworzymy obrót o 90° wokół osi x dla (1, 0, 0), wokół osi y dla (0, 1, 0) i wokół osi z dla (0, 0, 1). Obroty o 180° są poza zasięgiem; ponieważ, w limicie x → ∞ , ( x , 0, 0) zbliża się do obrotu o 180° wokół osi x i podobnie dla innych kierunków.

Rozkład na nożyce

W przypadku 2D macierz rotacji można rozłożyć na trzy macierze ścinania ( Paeth 1986 ):

Jest to przydatne na przykład w grafice komputerowej, ponieważ ścinanie można zaimplementować za pomocą mniejszej liczby instrukcji mnożenia niż bezpośrednie obracanie mapy bitowej. Na nowoczesnych komputerach może to nie mieć znaczenia, ale może mieć znaczenie w przypadku bardzo starych lub słabszych mikroprocesorów.

Obrót można również zapisać jako dwa nożyce i skalowanie ( Daubechies i Sweldens 1998 ):

Teoria grup

Poniżej przedstawiamy kilka podstawowych faktów dotyczących roli zbioru wszystkich macierzy obrotowych o ustalonym wymiarze (tutaj głównie 3) w matematyce, a szczególnie w fizyce, gdzie symetria obrotowa jest wymogiem każdego prawdziwie fundamentalnego prawa (ze względu na założenie izotropii przestrzeni ) i gdzie ta sama symetria, jeśli występuje, jest właściwością upraszczającą wielu problemów o mniej podstawowym charakterze. W mechanice klasycznej i mechanice kwantowej jest mnóstwo przykładów . Znajomość części rozwiązań dotyczących tej symetrii odnosi się (z zastrzeżeniami) do wszystkich takich problemów i można ją wykluczyć z konkretnego problemu, zmniejszając w ten sposób jego złożoność. Doskonałym przykładem – w matematyce i fizyce – byłaby teoria harmoniki sferycznej . Ich rola w teorii grup grup rotacyjnych polega na byciu przestrzenią reprezentacji całego zbioru skończenie wymiarowych nieredukowalnych reprezentacji grupy rotacyjnej SO(3). W tym temacie zobacz Grupa rotacyjna SO(3) § Harmoniczne sferyczne .

Do głównych artykułów wymienionych w każdej podsekcji odsyła się w celu uzyskania bardziej szczegółowych informacji.

Grupa kłamstw

N x n macierzy rotacji dla każdego n , tworząc grupę , na specjalną grupę ortogonalne , SO ( n ) . Ta struktura algebraiczna jest połączona ze strukturą topologiczną odziedziczoną w taki sposób, że operacje mnożenia i odwrotności są funkcjami analitycznymi wpisów macierzy. Zatem SO( n ) jest dla każdego n grupą Liego. Jest kompaktowy i podłączony , ale nie tylko . Jest to również grupa półprosta , właściwie grupa prosta z wyjątkiem SO(4). Znaczenie tego polega na tym, że wszystkie twierdzenia i cała maszyneria z teorii rozmaitości analitycznych ( rozmaitości analityczne są w szczególności rozmaitościami gładkimi ) mają zastosowanie, a dobrze rozwinięta teoria reprezentacji zwartych grup półprostych jest gotowa do użycia.

Algebra kłamstwa

Algebra Liego więc ( n ) z SO( n ) jest dana przez

i jest przestrzenią skośnie-symetrycznych macierzy wymiaru n , patrz grupa klasyczna , gdzie o ( n ) jest algebrą Liego z O( n ) , grupa ortogonalna . Dla porównania, najczęstszą podstawą tego (3) jest

Mapa wykładnicza

Podłączenie algebraiczne leżą na grupy Lie jest wykładniczy mapę , która jest określona za pomocą standardowych matrycy wykładniczy serie dla e A Dla każdego skosu niesymetrycznego macierzy A , exp ( ) jest zawsze macierzy rotacji.

Ważnym praktycznym przykładem jest przypadek 3×3 . W grupie ruch obrotowy, (3) okazuje się, że można zidentyfikować co Atak (3) z Eulera wektor ω = θ u , gdzie u = ( x , y , oo ) jest wektorem jednostkowym wielkości.

Z właściwości identyfikacji wynika , że u znajduje się w zerowej przestrzeni A . Zatem u pozostaje niezmienne przez exp( A ) i dlatego jest osią obrotu.

Zgodnie ze wzorem rotacji Rodriguesa na postaci macierzowej otrzymujemy:

gdzie

Jest to macierz obrotu wokół osi u o kąt θ . Aby uzyskać szczegółowe informacje, zobacz mapę wykładniczą SO(3) .

Wzór Bakera–Campbella–Hausdorffa

Formuła BCH zawiera wyraźne wyrażenie dla Z = log( e X e Y ) w postaci rozwinięcia serii zagnieżdżonych komutatorów X i Y . Ta ogólna ekspansja rozwija się, gdy

W przypadku 3 × 3 ogólna nieskończona ekspansja ma zwartą formę,

dla odpowiednich współczynników funkcji trygonometrycznej, wyszczególnionych we wzorze Bakera–Campbella–Hausdorffa dla SO(3) .

Jako tożsamość grupowa, powyższe dotyczy wszystkich wiernych reprezentacji , w tym dubletu (reprezentacja spinorowa), która jest prostsza. Ta sama wyraźna formuła wynika zatem bezpośrednio z macierzy Pauliego; patrz wyprowadzenie 2 × 2 dla SU(2) . Dla ogólnego przypadku n × n można użyć ref.

Grupa wirowania

Grupa Liego z n × n macierzy rotacji, SO( n ) , nie jest po prostu połączona , więc teoria Liego mówi nam, że jest to homomorficzny obraz uniwersalnej grupy pokrywającej . Często grupa pokrywająca, która w tym przypadku nazywana jest grupą spinową oznaczaną przez Spin( n ) , jest prostsza i bardziej naturalna w obsłudze.

W przypadku płaskich obrotów, SO (2) jest topologicznie koło , S 1 . Uniwersalne grupa przykrycie wirowania (2) jest izomorficzny w prostej , R , z dodatkiem. Ilekroć stosuje się kąty o dowolnej wielkości, korzysta się z wygody uniwersalnej osłony. Każda macierz obrotu 2 × 2 jest tworzona przez policzalną nieskończoność kątów, oddzielonych całkowitymi wielokrotnościami 2 π . Odpowiednio, podstawowym grupę o SO (2) jest izomorficzny z liczb całkowitych, Z .

W przypadku obrotów przestrzennych, SO (3) jest równoważne topologicznie trójwymiarowej rzeczywistej przestrzeni rzutowej , RP 3 . Uniwersalne grupy obejmujące Spin (3) jest izomorficzny z 3-kuli , S 3 . Każda macierz obrotu 3 × 3 jest tworzona przez dwa przeciwstawne punkty na kuli. Odpowiednio, podstawowym grupy SO (3) jest izomorficzny grupy dwuelementowej, Z 2 .

Możemy również opisać Spin(3) jako izomorficzny z kwaternionami normy jednostkowej przy mnożeniu, lub z pewnymi macierzami rzeczywistymi 4 × 4 , lub ze złożonymi specjalnymi macierzami unitarnymi 2 × 2 , czyli SU(2). Mapy kryjące dla pierwszego i ostatniego przypadku podaje

oraz

Dla szczegółowego opisu pokrycia SU(2) i czwartorzędowego pokrycia, patrz grupa spinowa SO(3) .

Wiele cech tych etui jest takich samych dla wyższych wymiarów. Pokrycia są wszystkie dwa do jednego, z SO( n ) , n > 2 , mające grupę podstawową Z 2 . Naturalne otoczenie dla tych grup znajduje się w algebrze Clifforda . Jeden rodzaj akcji rotacji jest wytwarzany przez rodzaj „kanapki”, oznaczany przez qvq . Co ważniejsze w zastosowaniach w fizyce, odpowiednia reprezentacja spinu algebry Liego znajduje się wewnątrz algebry Clifforda. Można ją wykładać w zwykły sposób, aby uzyskać reprezentację dwuwartościową , znaną również jako reprezentacja projekcyjna grupy rotacyjnej. Tak jest w przypadku SO(3) i SU(2), gdzie 2-wartościowa reprezentacja może być postrzegana jako „odwrotność” mapy pokrywającej. Dzięki właściwościom map pokrywających odwrotność można wybrać jeden do jednego jako sekcję lokalną, ale nie globalną.

Nieskończone obroty

Macierze w algebrze Liego same w sobie nie są rotacjami; macierze skośno-symetryczne są pochodnymi, proporcjonalnymi różnicami obrotów. Rzeczywista „rotacja różnicowa” lub nieskończenie mała macierz rotacji ma postać

gdzie jest znikomo małe i Aso (n) , na przykład z A = L x ,

Zasady obliczeń są jak zwykle, z wyjątkiem tego, że nieskończenie małe liczby drugiego rzędu są rutynowo odrzucane. Dzięki tym regułom macierze te nie spełniają wszystkich tych samych właściwości, co zwykłe macierze skończonej rotacji przy zwykłym traktowaniu nieskończenie małych. Okazuje się, że kolejność wykonywania nieskończenie małych obrotów jest nieistotna . Aby zobaczyć ten przykład, zobacz nieskończenie małe obroty SO(3) .

Konwersje

Widzieliśmy istnienie kilku dekompozycji, które mają zastosowanie w każdym wymiarze, a mianowicie niezależnych płaszczyzn, kątów sekwencyjnych i wymiarów zagnieżdżonych. We wszystkich tych przypadkach możemy albo rozłożyć macierz, albo ją skonstruować. Szczególną uwagę zwróciliśmy również na macierze rotacji 3 × 3 , które wymagają dalszej uwagi w obu kierunkach ( Stuelpnagel 1964 ).

Kwaternion

Biorąc pod uwagę kwaternion jednostkowy q = w + x i + y j + z k , odpowiednik wstępnie pomnożony (do użycia z wektorami kolumnowymi) 3 × 3 macierz rotacji wynosi


Teraz każdy składnik kwaternionowy pojawia się pomnożony przez dwa w wyrażeniu stopnia drugiego, a jeśli wszystkie takie wyrazy są zerowe, pozostaje macierz jednostkowa. Prowadzi to do wydajnej, solidnej konwersji z dowolnego kwaternionu – czy to jednostkowego, czy niejednostkowego – na macierz rotacji 3 × 3 . Dany:

możemy obliczyć

Uwolnieni od zapotrzebowania na kwaternion jednostkowy, stwierdzamy, że niezerowe kwaterniony działają jako jednorodne współrzędne dla macierzy rotacji 3 × 3 . Cayley transformacji omówione wcześniej, uzyskuje się przez wyskalowanie kwaternion tak, że jego w komponent 1. Przez obrót o 180 ° wokół dowolnej osi, w będzie wynosić zero, co wyjaśnia ograniczenia Cayley.

Suma wpisów wzdłuż głównej przekątnej ( śladu ) plus jeden równa się 4 − 4( x 2 + y 2 + z 2 ) , czyli 4 w 2 . Zatem sam ślad możemy zapisać jako 2 w 2 + 2 w 2 − 1 ; a z poprzedniej wersji macierzy widzimy, że same wpisy diagonalne mają tę samą postać: 2 x 2 + 2 w 2 − 1 , 2 y 2 + 2 w 2 − 1 , oraz 2 z 2 + 2 w 2 − 1 . Możemy więc łatwo porównać wielkości wszystkich czterech elementów kwaternionowych za pomocą przekątnej macierzy. W rzeczywistości możemy uzyskać wszystkie cztery wielkości za pomocą sum i pierwiastków kwadratowych, a następnie wybrać spójne znaki za pomocą skośno-symetrycznej części wpisów poza przekątną:

Alternatywnie użyj pojedynczego pierwiastka kwadratowego i dzielenia

Jest to numerycznie stabilne, o ile ślad t nie jest ujemny; w przeciwnym razie ryzykujemy dzielenie przez (prawie) zero. W takim przypadku załóżmy, że Q xx jest największym wpisem po przekątnej, więc x będzie miało największą wartość (pozostałe przypadki są wyprowadzane przez permutację cykliczną); to jest bezpieczne.

Jeżeli macierz zawiera istotny błąd, np. skumulowany błąd liczbowy, możemy skonstruować symetryczną macierz 4×4 ,

i znajdź wektor własny , ( x , y , z , w ) , jego największej wartości własnej. (Jeśli Q jest rzeczywiście macierzą rotacji, wartość ta będzie wynosić 1.) Tak otrzymany kwaternion będzie odpowiadał macierzy rotacji najbliższej danej macierzy ( Bar-Itzhack 2000 ) (Uwaga: sformułowanie cytowanego artykułu jest mnożone, działa z wektorami wierszowymi).

Rozkład polarny

Jeśli macierz n × n M jest nieosobliwa, jej kolumny są wektorami liniowo niezależnymi; w ten sposób proces Grama-Schmidta może dostosować je do bazy ortonormalnej. W kategoriach numerycznej algebry liniowej , konwertujemy M na macierz ortogonalną Q , używając rozkładu QR . Jednak często preferujemy Q najbliższe M , czego ta metoda nie zapewnia. W tym celu narzędziem, którego potrzebujemy, jest rozkład biegunów ( Fan & Hoffman 1955 ; Higham 1989 ).

Aby zmierzyć bliskość, możemy użyć dowolnego niezmiennika normy macierzy w ramach przekształceń ortogonalnych. Wygodnym wyborem jest norma Frobeniusa , || QM || F , do kwadratu, który jest sumą kwadratów różnic elementów. Pisząc to w kategoriach śladu , Tr , naszym celem jest,

Znajdź Q minimalizując Tr( ( QM ) T ( QM ) ) , z zastrzeżeniem Q T Q = I .

Chociaż napisana w kategoriach macierzowych, funkcja celu jest tylko wielomianem kwadratowym. Możemy go zminimalizować w zwykły sposób, znajdując, gdzie jego pochodna wynosi zero. W przypadku macierzy 3 × 3 ograniczenie ortogonalności implikuje sześć równości skalarnych, które muszą spełniać wpisy Q. Aby uwzględnić ograniczenie(a), możemy zastosować standardową technikę, mnożniki Lagrange'a , złożone jako symetryczna macierz Y . Zatem nasza metoda to:

Rozróżnij Tr( ( QM ) T ( QM ) + ( Q T QI ) Y ) względem (wpisów) Q , i przyrównaj do zera.

Rozważ przykład 2 × 2 . Łącznie z ograniczeniami staramy się zminimalizować

Biorąc pochodną po kolejno Q xx , Q xy , Q yx , Q yy , składamy macierz.

Ogólnie otrzymujemy równanie

aby

gdzie Q jest ortogonalne, a S symetryczne. Aby zapewnić minimum, macierz Y (a więc S ) musi być dodatnio określona. Algebra liniowa połączeń QS do polarnego rozkładowi z M , przy S pierwiastek kwadratowy z S 2 = M t M .

Gdy M jest niesingularne , współczynniki Q i S rozkładu polarnego są jednoznacznie określone. Jednak wyznacznik S jest dodatni, ponieważ S jest dodatnio określony, więc Q dziedziczy znak wyznacznika M . Oznacza to, że Q jest gwarantowane tylko jako ortogonalne, a nie macierz rotacji. Jest to nieuniknione; M ujemnej determinant nie ma jednoznacznie określone najbliższy macierzy rotacji.

Oś i kąt

Aby wydajnie skonstruować macierz obrotu Q z kąta θ i osi jednostkowej u , możemy wykorzystać symetrię i skośno-symetrię wewnątrz wpisów. Jeśli x , y i z są składowymi wektora jednostkowego reprezentującego oś, a

następnie

Określenie osi i kąta, podobnie jak określenie kwaternionu, jest możliwe tylko do znaku; czyli ( u , θ ) i (− u , − θ ) odpowiadają tej samej macierzy rotacji, tak jak q i q . Dodatkowo ekstrakcja osi-kąta stwarza dodatkowe trudności. Kąt może być ograniczony w zakresie od 0° do 180°, ale kąty są formalnie niejednoznaczne jako wielokrotności 360°. Gdy kąt wynosi zero, oś jest niezdefiniowana. Gdy kąt wynosi 180°, matryca staje się symetryczna, co ma wpływ na wydobycie osi. W pobliżu wielokrotności 180° należy uważać, aby uniknąć problemów liczbowych: przy wyodrębnianiu kąta dwuargumentowy arcus tangens z atan2 (sin θ , cos θ ) równym θ pozwala uniknąć niewrażliwości arccos; a przy obliczaniu wielkości osi w celu wymuszenia jednostkowej wielkości, podejście brute-force może stracić dokładność z powodu niedomiaru ( Moler & Morrison 1983 ).

Częściowe podejście jest następujące:

Komponenty x , y i z osi byłyby następnie podzielone przez r . W pełni odporne podejście użyje innego algorytmu, gdy t , ślad macierzy Q , jest ujemny, tak jak w przypadku ekstrakcji kwaternionów. Gdy r wynosi zero, ponieważ kąt wynosi zero, oś musi być dostarczona z innego źródła niż macierz.

Kąty Eulera

Złożoność konwersji eskaluje wraz z kątami Eulera (używanymi tutaj w szerokim znaczeniu). Pierwsza trudność polega na ustaleniu, której z dwudziestu czterech odmian kartezjańskiego porządku osi użyjemy. Załóżmy, że te trzy kąty to θ 1 , θ 2 , θ 3 ; fizyka i chemia mogą je interpretować jako

podczas gdy dynamika statku powietrznego może użyć

Jedno systematyczne podejście zaczyna się od wyboru najbardziej prawej osi. Spośród wszystkich permutacji z ( x , y , Z ) , tylko dwa miejsca, które pierwszej osi; jedna to permutacja parzysta, a druga nieparzysta. Wybór parytetu ustanawia zatem oś środkową. To pozostawia dwie możliwości dla skrajnej lewej osi, albo powielając pierwszą, albo nie. Te trzy wybory dają nam 3 × 2 × 2 = 12 odmian; podwajamy to do 24, wybierając osie statyczne lub obrotowe.

To wystarczy, aby skonstruować macierz z kątów, ale trójki różniące się na wiele sposobów mogą dać tę samą macierz rotacji. Załóżmy na przykład, że używamy powyższej konwencji zyz ; wtedy mamy następujące pary równoważne:

(90°, 45°, -105°) (−270 °, −315°, 255°) wielokrotności 360°
(72°, 0°, 0°) (40°, 0°, 32 °) pojedyncze wyrównanie
(45°, 60°, −30°) (−135°, −60°, 150°) bistabilna klapka

Kąty dla dowolnej kolejności można znaleźć za pomocą zwięzłej wspólnej procedury ( Herter i Lott 1993 ; Shoemake 1994 ).

Problem singularnego wyrównania, matematycznego odpowiednika fizycznej blokady gimbala , pojawia się, gdy środkowy obrót wyrównuje osie pierwszego i ostatniego obrotu. Wpływa na każdą kolejność osi przy parzystych lub nieparzystych wielokrotnościach 90 °. Te osobliwości nie są charakterystyczne dla macierzy rotacji jako takiej i występują tylko przy użyciu kątów Eulera.

Osobliwości unika się podczas rozważania i manipulowania macierzą rotacji jako ortonormalnych wektorów wierszy (w aplikacjach 3D często nazywanych wektorem prawym, górnym i wychodzącym) zamiast jako kątów. Osobliwości są również unikane podczas pracy z kwaternionymi.

Formuła wektorowa na wektor

W niektórych przypadkach interesujące jest opisanie rotacji poprzez określenie, w jaki sposób wektor jest mapowany na inny poprzez najkrótszą ścieżkę (najmniejszy kąt). W tym całkowicie opisuje powiązaną macierz rotacji. Ogólnie, przy danym x , yn , macierz

należy do SO( n + 1) i odwzorowuje x na y .

Jednolite macierze losowej rotacji

Czasami musimy wygenerować macierz losowych rotacji o jednorodnym rozkładzie. Wydaje się intuicyjnie jasne w dwóch wymiarach, że oznacza to, że kąt obrotu jest równomiernie rozłożony między 0 a 2 π . Ta intuicja jest poprawna, ale nie przenosi się na wyższe wymiary. Na przykład, jeśli rozłożymy macierze rotacji 3 × 3 w postaci oś-kąt, kąt nie powinien być rozłożony równomiernie; prawdopodobieństwo, że (wielkość) kąta wynosi co najwyżej θ, powinno wynosić1/π( θ − sin θ ) , dla 0 ≤ θ ≤ π .

Ponieważ SO( n ) jest połączoną i lokalnie zwartą grupą Liego, mamy proste standardowe kryterium jednorodności, a mianowicie, że rozkład pozostaje niezmieniony, gdy składa się z dowolnego dowolnego obrotu ("translacja" grupy Liego). Ta definicja odpowiada tak zwanej miary Haara . León, Massé i Rivest (2006) pokazują, jak wykorzystać transformatę Cayleya do generowania i testowania macierzy zgodnie z tym kryterium.

Możemy wygenerować jednorodną dystrybucję w dowolnym wymiarze przy użyciu algorytmu podgrupy z Diaconis i Shashahani (1987) . To rekursywnie wykorzystuje zagnieżdżoną strukturę grup wymiarów SO( n ) w następujący sposób. Wygeneruj kąt jednorodny i skonstruuj macierz obrotu 2×2 . Aby przejść od n do n + 1 , wygeneruj wektor v równomiernie rozłożony na n- sferze S n , osadź macierz n × n w następnym większym rozmiarze w ostatniej kolumnie (0, ..., 0, 1) i obróć większą macierz tak, aby ostatnia kolumna stała się v .

Jak zwykle mamy specjalne alternatywy dla obudowy 3×3 . Każda z tych metod zaczyna się od trzech niezależnych losowych skalarów równomiernie rozłożonych na interwale jednostkowym. Arvo (1992) wykorzystuje nieparzysty wymiar, aby zmienić odbicie Householder na obrót przez negację i wykorzystuje to do wycelowania w oś jednolitego obrotu planarnego.

Inna metoda używa kwaternionów jednostkowych. Mnożenie macierzy rotacji jest homomorficzne z mnożeniem kwaternionów, a mnożenie przez jednostkę kwaternionów obraca jednostkową sferę. Ponieważ homomorfizm jest lokalną izometrią , natychmiast wnioskujemy, że aby uzyskać rozkład jednostajny na SO(3), możemy użyć rozkładu jednostajnego na S 3 . W praktyce: stwórz czteroelementowy wektor, w którym każdy element jest próbką rozkładu normalnego. Normalizuj jego długość, a otrzymasz równomiernie próbkowany losowy kwaternion jednostki, który reprezentuje równomiernie próbkowany losowy obrót. Zauważ, że powyższe dotyczy tylko obrotów w wymiarze 3. Aby uzyskać uogólnioną ideę kwaternionów, należy zajrzeć do Rotors .

Można również stosować kąty Eulera, ale nie przy każdym kącie równomiernie rozłożonym ( Murnaghan 1962 ; Miles 1965 ).

W przypadku postaci oś-kąt, oś jest równomiernie rozłożona w jednostkowej sferze kierunków S 2 , natomiast kąt ma niejednorodny rozkład po [0, π ] odnotowany wcześniej ( Miles 1965 ).

Zobacz też

Uwagi

Uwagi

Bibliografia

Zewnętrzne linki