Rotacja Jacobiego

W numerycznej algebrze liniowej obrót Jacobiego jest obrotem Q k dwuwymiarowej podprzestrzeni liniowej n - wymiarowej przestrzeni iloczynu wewnętrznego , wybranej do zera symetrycznej pary wpisów poza przekątną n × n rzeczywistej symetryczności macierz , A , zastosowana jako transformacja podobieństwa :

Jest to podstawowa operacja w algorytmie wartości własnej Jacobiego , który jest numerycznie stabilny i dobrze nadaje się do implementacji na procesorach równoległych [ potrzebne źródło ] .

Dotyczy to tylko wierszy k i ℓ oraz kolumn k i ℓ A , a A pozostanie symetryczne. Również rzadko obliczana jest wyraźna macierz dla Q k ℓ ; zamiast tego obliczane są wartości pomocnicze, a A jest aktualizowane w wydajny i numerycznie stabilny sposób. Jednak dla odniesienia możemy zapisać macierz jako

Oznacza to, że Q k jest macierzą tożsamości, z wyjątkiem czterech wpisów, dwóch na przekątnej ( q kk i q ℓℓ , oba równe c ) i dwóch symetrycznie umieszczonych poza przekątną ( q k i q k , równe s i − s , odpowiednio). Tutaj c = cos θ i s = sin θ dla pewnego kąta θ; ale aby zastosować obrót, sam kąt nie jest wymagany. Wykorzystanie delty Kroneckera notacji, wpisy macierzy mogą być zapisane

Załóżmy, że h jest indeksem innym niż k lub ℓ (które same muszą być różne). Następnie aktualizacja podobieństwa daje algebraicznie

Obliczenia numerycznie stabilne

Aby określić wielkości potrzebne do aktualizacji, musimy rozwiązać równanie pozadiagonalne dla zera ( Golub i Van Loan 1996 , §8.4). To daje do zrozumienia ze

Ustaw β na połowę tej wielkości,

Jeśli k . wynosi zero, możemy zatrzymać się bez przeprowadzania aktualizacji, dlatego nigdy nie dzielimy przez zero Niech t będzie tan θ. Następnie za pomocą kilku tożsamości trygonometrycznych redukujemy równanie do

Dla stabilności wybieramy rozwiązanie

Z tego możemy otrzymać c i s jako

Chociaż moglibyśmy teraz użyć algebraicznych równań aktualizacji podanych wcześniej, może być lepiej napisać je od nowa. Pozwalać

tak, że ρ = tan(θ/2). Następnie poprawione równania aktualizacji są

Jak wcześniej zauważono, nigdy nie musimy jawnie obliczać kąta obrotu θ. W rzeczywistości możemy odtworzyć aktualizację symetryczną określoną przez Q kℓ , zachowując tylko trzy wartości k , ℓ i t , z t ustawionym na zero dla obrotu zerowego.

Zobacz też

  •   Golub, Gene H .; Van Loan, Charles F. (1996), Matrix Obliczenia (wyd. 3), Baltimore: Johns Hopkins University Press, ISBN 978-0-8018-5414-9