Układy z macierzami trójkątnymi
Metoda Choleskiego (Cholesky'ego)
(i nieco więcej)
W zależności od tego
czy kolejne elementy macierzy L są wyznaczane wierszami czy kolumnami, powyższy algorytm nosi nazwę
algorytmu Choleskiego-Banachiewicza
lub
Twierdzenie:
Jeśli wszystkie wyznaczniki podmacierzy Aii ( i = 1,2,..., n-1) utworzonych z „i” pierwszych kolumn i wierszy macierzy A, licząc odpowiednio z lewej do prawej strony i z góry na dół, są różne od zera (det Aii
≠
0)to istnieje jednoznaczny rozkład macierzy A na dwie macierze trójkątne L i U, odpowiednio dolną z jedynkami na przekątnej głównej i górną
o postaci:
A=LU
Metoda rozkładu na macierze L i U
gdzie L = 1 0 1 0 0 1 2 1 21 L M O M M L L n n l l l U = nn n n u u u u u u L M O M M L L 0 0 0 22 2 1 12 11
Algorytm rozwiązania układu równań A X = B jest więc następujący.
Wstawiając równanie A = L U do A X = B otrzymamy L U X = B,
które możemy rozbić na dwa równania
L Y = B
U X = Y
Z pierwszego równania wyznaczamy wektor Y
Zaletą takiego rozbicia jest fakt, że obydwa wektory otrzymujemy natychmiast, bowiem rozwiązujemy dwa układy równań z macierzami trójkątnymi:
= − = =
∑
− = n i y l b y b y i k k ik i i 2,3,..., 1 1 1 1 − − = − = =∑
+ = 1 ..., , 2 , 1 1 i n n u x u y x u y x ii n i k k ik i i nn n nElementy macierzy L i U można wyznaczyć dwoma sposobami.
1.
Istnieje ścisły związek między rozkładem macierzy A na macierze L i U a metodą eliminacji Gaussa.
Można wykazać, że
elementy kolejnych kolumn macierzy L są równe współczynnikom przez które mnożone są w kolejnych krokach wiersze układu równań celem dokonania eliminacji niewiadomych w odpowiednich kolumnach ) ( ) ( k kk k ik ik a a l = k =1,2,..., n i = k +1,...,n
Natomiast macierz U jest równa macierzy trójkątnej uzyskanej w eliminacji Gaussa, czyli
) ( k
ki
ki a
2.
Algorytm Doolittle’a.
Mnożąc macierz L i U a następnie porównując z macierzą A
odpowiednio pierwszy wiersz i pierwszą kolumnę, drugi wiersz i drugą kolumnę itd otrzymamy = = = = n j u a l n j a u j j j j ..., , 3 , 2 ..., , 2 , 1 11 1 1 1 1 dla i =2,3,..., n + + = − = + = − =
∑
∑
− = − = . ..., , 2 , 1 ..., , 1 , 1 1 1 1 n i i j u u l a l n i i j u l a u ii i k ki jk ji ji i k kj ik ij ijMetoda Choleskyego
dekmpozycja macierzy
Rozkład Choleskyego
jest procedurą rozkładu symetrycznej, dodatnio określonejmacierzy A na iloczyn postaci:
A = LLT
gdzie L jest dolną macierzą trójkątną, a LT jej transpozycją.
Macierz dowolnego typu można rozłożyć na iloczyn dolnej i górnej macierzy trójkątnej postaci A = LU stosując metodę LU.
Rozkład Choleskiego
jest możliwy jedynie w przypadku macierzy symetrycznych i dodatnio określonych.
Macierz symetryczna – macierz kwadratowa (tzn. o tej samej liczbie wierszy i kolumn), której wyrazy położone symetrycznie względem przekątnej głównej są równe; formalnie jest to macierz kwadratowa A=[aij] stopnia n która dla i, j = 1,…,n spełnia warunek
aij = aji
który można zapisać krótko przy pomocy transpozycji jako
AT = A
macierzą dodatnio określoną nazywamy macierz A typu n×n, która
jest macierzą symetryczną
i dla każdego niezerowego wektora x xT A x > 0
Algorytm rozkładu
Rozpisując iloczyn A = LLT, otrzymujemy:
Współczynniki macierzy A, są zatem równe::
Metoda Choleskiego,
podobnie jak metoda rozkładu L·U
polega na zastąpieniu jednego układu równań o n niewiadomych
opisanego macierzą pełną
dwoma układami równań również o n niewiadomych, ale za to opisanymi macierzami trójkątnymi.
Różnica w stosunku do metody rozkładu L·U polega na tym, że
w metodzie Choleskiego
Ograniczenia na postać macierzy A ,
• macierz ta musi być symetryczna (A=AT)
oraz
• dodatnio określona (XT A X > 0 dla każdego X takiego, że |X|≠0)
Wówczas: A X = B dla A = L LT A X = L LT X = B oraz: LT X = Y L Y = B
Obliczanie wartości wyznacznika
. NiechA=LU. Wiemy że
det A = det L · det U.
Zauważmy, że
wartość wyznacznika macierzy trójkątnej
jest równa iloczynowi wartości elementów na przekątnej głównej
∏
= = n i ii u A 1 detRozwiązywanie
Układ równań (dla macierzy L):
Układ równań dla macierzy LT możemy rozwiązać wykorzystując moduł wykonany dla metody 'eliminacji Gaussa'.