Rozwiązywanie algebraicznych układów równań liniowych metodami bezpośrednimi

Podobne dokumenty
Zaawansowane metody numeryczne

Układy równań liniowych. Krzysztof Patan

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Wykład 5. Metoda eliminacji Gaussa

5. Rozwiązywanie układów równań liniowych

Metody numeryczne Wykład 4

Analiza numeryczna Kurs INP002009W. Wykłady 6 i 7 Rozwiązywanie układów równań liniowych. Karol Tarnowski A-1 p.

Matematyka stosowana i metody numeryczne

Wartości i wektory własne

Macierze. Rozdział Działania na macierzach

Met Me ody numer yczne Wykład ykład Dr inż. Mic hał ha Łanc Łan zon Instyt Ins ut Elektr Elektr echn iki echn i Elektrot Elektr echn olo echn

Wykład 6. Metoda eliminacji Gaussa: Eliminacja z wyborem częściowym Eliminacja z wyborem pełnym

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

Rozwiązywanie układów równań liniowych

1 Macierze i wyznaczniki

04 Układy równań i rozkłady macierzy - Ćwiczenia. Przykład 1 A =

Zaawansowane metody numeryczne

Obliczenia naukowe Wykład nr 8

, A T = A + B = [a ij + b ij ].

Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych

Treść wykładu. Układy równań i ich macierze. Rząd macierzy. Twierdzenie Kroneckera-Capellego.

15. Macierze. Definicja Macierzy. Definicja Delty Kroneckera. Definicja Macierzy Kwadratowej. Definicja Macierzy Jednostkowej

Układy równań liniowych i metody ich rozwiązywania

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

Analiza matematyczna i algebra liniowa Macierze

13 Układy równań liniowych

A A A A A A A A A n n

RACHUNEK MACIERZOWY. METODY OBLICZENIOWE Budownictwo, studia I stopnia, semestr 6. Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska

Definicja macierzy Typy i właściwości macierzy Działania na macierzach Wyznacznik macierzy Macierz odwrotna Normy macierzy RACHUNEK MACIERZOWY

Metody numeryczne. Janusz Szwabiński. Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/50

; B = Wykonaj poniższe obliczenia: Mnożenia, transpozycje etc wykonuję programem i przepisuję wyniki. Mam nadzieję, że umiesz mnożyć macierze...

Wstęp do metod numerycznych Uwarunkowanie Eliminacja Gaussa. P. F. Góra

1 Zbiory i działania na zbiorach.

Rozwiązywanie algebraicznych układów równań liniowych metodami iteracyjnymi

O MACIERZACH I UKŁADACH RÓWNAŃ

Wstęp do metod numerycznych Faktoryzacja QR i SVD. P. F. Góra

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn a 1j a 2j R i = , C j =

Krótkie wprowadzenie do macierzy i wyznaczników

Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe. P. F. Góra

Zadania egzaminacyjne

Lista. Algebra z Geometrią Analityczną. Zadanie 1 Przypomnij definicję grupy, które z podanych struktur są grupami:

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

DB Algebra liniowa semestr zimowy 2018

Metody dekompozycji macierzy stosowane w automatyce

Metody numeryczne. Janusz Szwabiński. nm_slides-7.tex Metody numeryczne Janusz Szwabiński 11/11/ :45 p.

Układy równań liniowych

= i Ponieważ pierwiastkami stopnia 3 z 1 są (jak łatwo wyliczyć) liczby 1, 1+i 3

10. Metody obliczeniowe najmniejszych kwadratów

III TUTORIAL Z METOD OBLICZENIOWYCH

Analiza numeryczna Lista nr 3 (ćwiczenia) x x 2 n x.

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

Wykład 14. Elementy algebry macierzy

Wektory i wartości własne

Układy równań i nierówności liniowych

Metoda eliminacji Gaussa. Autorzy: Michał Góra

Wstęp do metod numerycznych Eliminacja Gaussa Faktoryzacja LU. P. F. Góra

D1. Algebra macierzy. D1.1. Definicje

UKŁADY RÓWNAŃ LINIOWYCH

macierze jednostkowe (identyczności) macierze diagonalne, które na przekątnej mają same

1. PODSTAWY TEORETYCZNE

NUMERYCZNE METODY ROZWIĄZYWANIA ROWNAŃ LINIOWYCH. PRZYGOTOWAŁA: ANNA BANAŚ KoMBo, WILiŚ

1 Macierz odwrotna metoda operacji elementarnych

WEKTORY I WARTOŚCI WŁASNE MACIERZY. = λ c (*) problem przybliżonego rozwiązania zagadnienia własnego dla operatorów w mechanice kwantowej

Wektory i wartości własne

Metody numeryczne II. Układy równań liniowych

SIMR 2016/2017, Analiza 2, wykład 1, Przestrzeń wektorowa

2. Układy równań liniowych

MATEMATYKA I SEMESTR ALK (PwZ) 1. Sumy i sumy podwójne : Σ i ΣΣ

3. Macierze i Układy Równań Liniowych

Własności wyznacznika

Algebra liniowa. 1. Macierze.

Aproksymacja. funkcji: ,a 2. ,...,a m. - są funkcjami bazowymi m+1 wymiarowej podprzestrzeni liniowej X m+1

Algebra liniowa. Macierze i układy równań liniowych

Algebra liniowa z geometrią

Wykład III Układy równań liniowych i dekompozycje macierzy

Zadania z algebry liniowej - sem. I Przestrzenie liniowe, bazy, rząd macierzy

Wstęp do metod numerycznych Eliminacja Gaussa i faktoryzacja LU. P. F. Góra

METODY NUMERYCZNE. wykład. konsultacje: wtorek 10:00-11:30 środa 10:00-11:30. dr inż. Grażyna Kałuża pokój

UKŁADY RÓWNAŃ LINIOWYCH - Metody dokładne

Rozwiazywanie układów równań liniowych. Ax = b

Algebra WYKŁAD 3 ALGEBRA 1

Wykład 7 Macierze i wyznaczniki

MACIERZE I WYZNACZNIKI

= Zapiszemy poniższy układ w postaci macierzy. 8+$+ 2&=4 " 5 3$ 7&=0 5$+7&=4

φ(x 1,..., x n ) = a i x 2 i +

Układy równań liniowych

det[a 1,..., A i,..., A j,..., A n ] + det[a 1,..., ka j,..., A j,..., A n ] Dowód Udowodniliśmy, że: det[a 1,..., A i + ka j,..., A j,...

ALGEBRA LINIOWA. Wykład 2. Analityka gospodarcza, sem. 1. Wydział Zarządzania i Ekonomii Politechnika Gdańska

Przestrzenie wektorowe

Zaawansowane metody numeryczne

1 Elementy logiki i teorii mnogości

Baza w jądrze i baza obrazu ( )

2 1 3 c c1. e 1, e 2,..., e n A= e 1 e 2...e n [ ] M. Przybycień Matematyczne Metody Fizyki I

"Bieda przeczy matematyce; gdy się ją podzieli na więcej ludzi, nie staje się mniejsza." Gabriel Laub

Ekoenergetyka Matematyka 1. Wykład 3.

1. Liczby zespolone i

Zestaw 12- Macierz odwrotna, układy równań liniowych

Metody numeryczne i statystyka dla in»ynierów

Transkrypt:

Rozwiązywanie algebraicznych układów równań liniowych metodami bezpośrednimi

Plan wykładu:. Definicje macierzy, norm etc.. Metoda eliminacji Gaussa, Jordana. Rozkład LU metodą Gaussa. Układy równań z macierzą symetryczną. Rozkłady: LDL T, LL T. Układy równań z macierzą trójdiagonalną. Iteracyjne poprawianie rozwiązań. Układy liniowe nadokreślone, układ normalny równań, metody ortogonalizacji

Pojęcia podstawowe Macierz jest uporządkowanym układem mxn liczb rzeczywistych lub zespolonych A=(a ij ) (i=,..,m; j=,...,n) A m n = a a : : : a n a a : : : a n : : : : : : : : : : : : a m a m : : : a mn Jeśli m=n to A jest kwadratowa stopnia n. Transpozycja - A=(a ij ) to A T =(a ji ) Ślad macierzy A=A nxn (A T ) T = A ( A) T = A T (A + B) T = A T + B T (AB) T = B T A T (Ax) T = x T A T Macierz diagonalna D=( ij d ij ) D = d 0 : : : 0 0 d : : : 0 : : : : : : : : : : : : 0 0 : : : d n Macierz jednostkowa I=( ij ) nx tr(a) = i= a ii tr(a T ) = tr(a)

Pojęcia podstawowe Macierz jest uporządkowanym układem mxn liczb rzeczywistych lub zespolonych A=(a ij ) (i=,..,m; j=,...,n) A m n = a a : : : a n a a : : : a n : : : : : : : : : : : : a m a m : : : a mn Jeśli m=n to A jest kwadratowa stopnia n. Transpozycja - A=(a ij ) to A T =(a ji ) Ślad macierzy A=A nxn (A T ) T = A ( A) T = A T (A + B) T = A T + B T (AB) T = B T A T (Ax) T = x T A T Macierz diagonalna D=( ij d ij ) D = d 0 : : : 0 0 d : : : 0 : : : : : : : : : : : : 0 0 : : : d n Macierz jednostkowa I=( ij ) nx tr(a) = i= a ii tr(a T ) = tr(a)

Macierz trójkątna lewa (dolna) L = Macierz trójkątna prawa (górna) R = l 0 : : : 0 l l : : : 0 : : : : : : : : : : : : l n l n : : : l nn r r : : : r n 0 r : : : r n : : : : : : : : : : : : 0 0 : : : r nn Sumy, iloczyny i odwrotności macierzy trójkątnych tego samego rodzaju są macierzami trójkątnymi. Wyznacznik macierzy trójkątnej det(l) = l l : : : l nn Jeśli det(a) = 0 to macierz jest nieosobliwa i dla takiej macierzy istnieje macierz odwrotna A - AA = A A = I (AB) = B A Macierz symetryczna A T = A Macierz ortogonalna Q=Q mxn Q T Q = I Q Q = I Q T = Q Macierz idempotentna det(r) = r r : : : r nn det(a) = det(a T ) det(ab) = det(a)det(b) A = A

Macierzą hermitowską nazywamy macierz, która po transpozycji i sprzężeniu zespolonemu jej elementów jest równa macierzy pierwotnej A H = A T Elementy diagonalne macierzy hermitowskiej są rzeczywiste (pozostałe mogą być zespolone lub rzeczywiste). Macierzą dodatniookreśloną nazywamy macierz rzeczywistą lub hermitowską o własności: x T Ax > 0; x R n ; x = 0 Macierz dodatnio określona jest zawsze odwracalna. Macierz odwrotna jest również dodatnio określona. Przestrzenią liniową (wektorową) nad ciałem liczb rzeczywistych (zespolonych) nazywamy zbiór obiektów (wektorów) z określonym działaniem dodawania elementów przestrzeni oraz mnożenia ich przez liczbę i oznaczamy R N (C N ). Aksjomaty: łączność, przemienność, element neutralny, element odwrotny,... Uporządkowany zbiór liczb rzeczywistych (zespolonych) tworzy wektor Przestrzeń wektorowa będąca zbiorem takich obiektów ma wymiar n. Dowolny zbiór n wektorów liniowo niezależnych w R N x = (x ; x ; x ; : : : ; x n ) y ; y ; : : : ; y n tworzy bazę przestrzeni. Każdy element przestrzeni można zapisać jako kombinację liniową elementów bazy x = y + y + : : : + n y n Podprzestrzeń linową R w R N tworzy zbiór wszystkich wektorów y ; y ; : : : ; y k ; k n Macierz możemy traktować jako obiekt zbudowany z wektorów ( wektory wierszowe lub kolumnowe). Rzędem macierzy A=A mxn r=rank(a) nazywamy największą liczbę niezależnych liniowo wektorów wierszowych lub kolumnowych. Jeśli r=m=n to macierz jest nieosobliwa.

Macierzą hermitowską nazywamy macierz, która po transpozycji i sprzężeniu zespolonemu jej elementów jest równa macierzy pierwotnej A H = A T Elementy diagonalne macierzy hermitowskiej są rzeczywiste (pozostałe mogą być zespolone lub rzeczywiste). Macierzą dodatniookreśloną nazywamy macierz rzeczywistą lub hermitowską o własności: x T Ax > 0; x R n ; x = 0 Macierz dodatnio określona jest zawsze odwracalna. Macierz odwrotna jest również dodatnio określona. Przestrzenią liniową (wektorową) nad ciałem liczb rzeczywistych (zespolonych) nazywamy zbiór obiektów (wektorów) z określonym działaniem dodawania elementów przestrzeni oraz mnożenia ich przez liczbę i oznaczamy R N (C N ). Aksjomaty: łączność, przemienność, element neutralny, element odwrotny,... Uporządkowany zbiór liczb rzeczywistych (zespolonych) tworzy wektor Przestrzeń wektorowa będąca zbiorem takich obiektów ma wymiar n. Dowolny zbiór n wektorów liniowo niezależnych w R N x = (x ; x ; x ; : : : ; x n ) y ; y ; : : : ; y n tworzy bazę przestrzeni. Każdy element przestrzeni można zapisać jako kombinację liniową elementów bazy x = y + y + : : : + n y n Podprzestrzeń linową R w R N tworzy zbiór wszystkich wektorów y ; y ; : : : ; y k ; k n Macierz możemy traktować jako obiekt zbudowany z wektorów ( wektory wierszowe lub kolumnowe). Rzędem macierzy A=A mxn r=rank(a) nazywamy największą liczbę niezależnych liniowo wektorów wierszowych lub kolumnowych. Jeśli r=m=n to macierz jest nieosobliwa.

Normy wektorów i macierzy Normy wprowadza się w celu ilościowego określania własności wektorów i macierzy. Normą wektora nazywamy funkcję, która każdemu elementowi w R N przyporządkowuje liczbę rzeczywistą. Dla dowolnych norma wektora musi spełniać następujące aksjomaty: Dla n-wymiarowego wektora najczęściej stosowane są normy z rodziny L P : - norma pierwsza x; y R n R jjxjj 0; jjxjj = 0 () x = 0 jj xjj = j j jjxjj jjx + yjj jjxjj + jjyjj x = [x ; x ; : : : ; x n ] T jjxjj p = (jx j p + jx j p + : : : jx n j p ) p p = ; kxk = jx j + jx j + : : : + jx n j Dla dowolnego wektora x w przestrzeni R n prawdziwe są poniższe relacje pomiędzy normami: kxk kxk kxk pnkxk nkxk Normy macierzy Własności norm macierzy jjajj 0; jjajj = 0 () A = 0 jj Aj = j j jjajj jja + Bjj jjajj + jjbjj jjabjj jjajj jjbjj jjaxjj jjajj jjxjj(normy zgodne) Normy zgodne norma macierzy indukowana przez normę wektora - norma druga (euklidesowa) p = ; kxk = (x + x + : : : + x n) = - norma maksymalna p = ; kxk = maxfjx j; jx j; : : : ; jx n jg 8

Macierz o m wierszach i n kolumnach można traktować jako operator liniowy przekształcający przestrzeń R m w R n. Normę takiej macierzy można określić przy użyciu wektorów: kak pq = sup xr n x=0 kaxk q kxk p - maksymalna suma modułów w wierszu kak = max i=;;:::;n nx ja ij j j= - maksymalny moduł elementu gdzie: p i q oznaczają normy wektorów w przestrzeniach R n i w R m. Mówimy, że norma A pq jest normą indukowaną przez normy. p oraz. q. Dla p=q oznaczając możemy określić następujące normy macierzy - maksymalna suma modułów w kolumnie - norma spektralna kak p = kak pq kak = max j=;;:::;n mx ja ij j i= kak = ( max i=;:::;n i(aa T )) = kak = max i;j ja ij j W przestrzeniach z normą często używa się euklidesowej (Frobeniusa) normy macierzy: kak E = v u t mx i= nx j= a ij która nie jest indukowana żadną normą ale spełnia ona z normą warunek zgodności: kak kak E kxk ; x R n Normy macierzy mają istotne znaczenie w analizie błędów (np. błędów rozwiązania układów równań liniowych). 9

Szukamy rozwiązania układu równań liniowych w postaci: a x + a x + : : : + a n x n = b a x + a x + : : : + a n x n = b : : : : : : : : : : : : : : : : : : : : : : : : : : : = : : : a n x + a n x + : : : + a nn x n = b n Powyższy układ równań można zapisać w postaci macierzowej: Ax = b gdzie: - macierz współczynników układu A = a a : : : a n a a : : : a n : : : : : : : : : : : : a n a n : : : a nn - szukany wektor - wektor wyrazów rozwiązań wolnych x = x x. x n b = b b. b n Warunek rozwiązywalności układu niejednorodnego: R(A) podprzestrzeń liniowa rozpięta na wektorach kolumnowych macierzy A Dla R(A) = R n b R(A) warunek rozwiązywalności układu jest spełniony dla każdego b i rozwiązanie ma postać x = A b Jeśli rank(a)=r<n to rozwiązania tworzą rozmaitość (n-r) wymiarową. 0

Układ równań z macierzą trójkątną Zakładamy, że elementy leżące na diagonali są niezerowe. Rozwiązanie układu można znaleźć posługując się wzorem rekurencyjnym, zaczynając od elementu x n : W celu wyznaczenia wszystkich składowych wektora rozwiązania x należy wykonać: - M operacji mnożenia i dzielenia a x + a x + : : : + a n x n = b x n = b n a nn - D operacji dodawania i odejmowania a x + : : : + a n x n = b : : : : : : : : : : : : : : : : : : M = n + n a nn x n = b n x i = b i a ii+ x i+ : : : a in x n a ii D = n n

Uwarunkowanie zadania - rozwiązania układu równań gdzie (A) = jjajj jja jj Wpływ błędów zaokrągleń na wynik można oszacować analizując zaburzenia danych: A,b a) zaburzamy wektor b: A(x + ±x) = b + ±b ±x = A ±b jj±xjj jja jj jj±bjj b) zaburzamy elementy macierzy A: (A + ±A)(x + ±x) = b A±x + ±A(x + ±x) = 0 ±x = A ±A(x + ±x) jj±xjj jja jj jj±ajj jjx + ±xjj jest wskaźnikiem uwarunkowania macierzy Korzystając z wyniku (a) oraz nierówności jjbjj = jjaxjj jjajj jjxjj dostajemy oszacowanie na błąd względny rozwiązania: jj±xjj jjxjj (A) jj±bjj jjbjj Wniosek - duży wskaźnik uwarunkowania macierzy może powodować duże względne zaburzenia rozwiązania nawet dla małych zaburzeń wektora danych. Zadanie jest wówczas źle uwarunkowane. ostatnią nierówność zapisujemy w postaci jj±xjj jjx + ±xjj (A) jj±ajj jjajj

Metoda eliminacji Gaussa rozwiązania układu równań liniowych. Metoda jest dwuetapowa: ) Eliminacja zmiennych. Układ pierwotny: A () x = b () a () x + a () x + : : : + a () n x n = b () a () x + a () x + : : : + a () n x n = b () : : : : : : : : : : : : : : : : : : : : : : : : : : : = : : : a () n x + a () n x + : : : + a () nnx n = b () n Odejmujemy od i-tego wiersza (i=,,...,n) wiersz pierwszy pomnożony przez współczynnik l i = a() i a () Z równań i=,,..,n wyeliminowana została zmienna x. A () x = b () a () x + a () x + : : : + a () n x n = b () a () x + : : : + a () n x n = b () : : : : : : : : : : : : : : : : : : : : : = : : : a () n x + : : : + a () nnx n = b () n Powtarzamy operację, ale odejmujemy od i-tego wiersza (i=,,...,n) wiersz drugi pomnożony przez współczynnik l i = a() i a () Postępując dalej w ten sposób eliminujemy z każdego następnego równania jedną zmienną. Eliminację kończymy po (n-) krokach, gdy uzyskamy trójkątny układ równań w postaci: a (n) x + a (n) x + : : : + a (n) n x n = b (n) a (n) x + : : : + a (n) n x n = b (n) : : : : : : : : : : : : = : : : A (n) x = b (n) a (n) nn x n = b (n) n

) Etap drugi nazywany jest postępowaniem odwrotnym. Rozwiązanie (kolejne składowe wektora x) znajdujemy stosując wzór rekurencyjny dla macierzy trójkątnej. Wyznaczenie rozwiązania metodą Gaussa wymaga wykonania: - M op. mnożenia i dzielenia M = n + n n k r - D op. dodawania i odejmowania D = n + n n Metoda eliminacji w tej postaci jest niestabilna numerycznie problem dzielenia przez 0 lub liczbę bliską zeru. Rozwiązanie: Pełny wybór elementów głównych W k-tym kroku szukamy elementu ja (k) rs j = max k i;j n; jak ij j i przestawiamy wiersze: k i r oraz kolumny: k i s a) częściowy wybór elementów głównych b) pełny wybór elementów głównych Częściowy wybór elementów głównych W k-tym kroku szukamy elementu k k s ja (k) rk j = max k i n jak ikj r i przestawiamy wiersze r oraz k.

Stosując wybór elementu głównego rozwiązanie otrzymujemy zawsze. W trakcie wyboru elementu głównego należy zmienić także kolejność w x i b. Modyfikacji tej można nie stosować dla: a) macierzy z dominującą przekątną ja ii j nx j=;j=i b) macierzy symetrycznej i jednocześnie dodatniookreślonej Metoda eliminacji Jordana (eliminacji zupełnej) W układzie równań: ja i;j j (i = ; : : : ; n) a () x + a () x + : : : + a () n x n = b () a () x + a () x + : : : + a () n x n = b () : : : : : : : : : : : : : : : : : : : : : : : : : : : = : : : a () n x + a () n x + : : : + a () nnx n = b () n Następnie odejmujemy od i-tego wiersza (i=,,...,n) wiersz pierwszy przemnożony przez i otrzymujemy w i = a () i A () x = b () x + a () x + : : : + a () n x n = b () a () x + : : : + a () n x n = b () : : : : : : : : : : : : : : : : : : : : : = : : : a () n x + : : : + a () nnx n = b () n Podobnie postępujemy z równaniem drugim. Dzielimy je przez A () x = b () w = a () Następnie od i-tego wiersza (i=,,,...,n) odejmujemy wiersz drugi pomnożony przez współczynnik: w i = a () i równanie pierwsze dzielimy obustronnie przez współczynnik: w = a ()

Otrzymujemy zmodyfikowany układ równań: A () x = b () x + 0 x + a () x + : : : + a () n x n = b () x + a () x + : : : + a () n x n = b () : : : : : : : : : : : : : : : : : : : : : = : : : a () n x + : : : + a () nnx n = b () n Po przeprowadzeniu (n-) eliminacji zmiennych układ równań ma poniższą postać: x = b (n) x = b (n) : : : = : : : x n = b (n) n czyli gotowe rozwiązanie. Liczba operacji: M = n + n Rozkład LU metodą Gaussa-Crouta(GCW) Metodę Gaussa można użyć do znalezienia takich macierzy L i U, które z macierzą A związane są relacją: A = L U Procedura wyznaczania elementów tych macierzy nosi nazwę rozkładu LU. Sposób postępowania (wykorzystujemy metodę eliminacji Gaussa): ) mnożenie wiersza pierwszego przez czynnik l i = a() i a i odjęcie go od i-tego wiersza (i=...n), zastępujemy mnożeniem przez macierz: L () = 0 : : : : : : 0 l 0 : : : 0 l 0 0 0 : : : : : : : : : 0 l n 0 0 : : : co można zapisać macierzowo: n n D = n n L () A () = A () L () b () = b ()

Eliminacja zmiennej z równań (i=,,...,n) wygląda podobnie. Mnożymy wiersze zmodyfikowanego układu równań o indeksach i=,,...,n przez czynnik l i = a() i a i odejmujemy od nich wiersz drugi. Operację tą można przeprowadzić mnożąc układ równań obustronnie przez macierz L () : L () = 0 : : : : : : 0 0 0 0 : : : 0 l 0 0 : : : : : : : : : 0 0 l n 0 0 Zapis macierzowy operacji: L () A () = A () L () b () = b () Po wykonaniu (n-) takich operacji dostajemy L (n ) L (n ) : : : L () A () = A (n) L (n ) L (n ) : : : L () b () = b (n) Macierze L (i) są nieosobliwe (można znaleźć dla każdej macierz odwrotną). Przemnażając obie strony powyższych równań przez (L (n-) ) -, (L (n-) ) -..., otrzymamy: A () = b () = ³L () ³L () ³ : : : L (n ) A (n) ³L () ³L () ³ : : : L (n ) b (n) wprowadzamy oznaczenia L = (L () ) (L () ) : : : (L (n ) ) U = A (n) = µl (n ) L (n ) : : : L () A () A = L U Jak znaleźć macierze (L (i) ) -? L () = ³ L () = 0 : : : 0 l : : : 0 : : : : : : 0 l n 0 : : : 0 : : : 0 l : : : 0 : : : : : : 0 l n 0 : : :

Sprawdzenie L (i) ³ L (i) = I macierz L jest macierzą dolną z jedynkami na diagonali: L = (L () ) (L () ) : : : (L (n ) ) 0 : : : : : : 0 l 0 : : : 0 L = l l 0 0 : : : : : : : : : 0 l n l n l n : : : Dysponując macierzami L i U można rozwiązać układ równań: Ax = b LUx = b poprzez rozwiązanie układów równań Ly = b Ux = y Rozwiązanie każdego z równań wiąże się z nakładem obliczeń jak dla układu z macierzą trójkątną (~n ). Rozkład LU (eliminacja Gaussa) to nakład rzędu ~0.n. macierz U jest macierzą górną z niezerowymi elementami na diagonali: U = u u u : : : u n 0 u u : : : u n 0 0 u : : : u nn : : : : : : : : : : : : : : : 0 0 0 : : : u nn 8

Jaki jest wektor reszt rozwiązania? Norma maksymalna wektora reszt może być mała nawet dla źle uwarunkowanych macierzy. Zalety: r = b A~x = (A + ±A)~x A~x = ±A~x jjrjj = jjb A~xjj k "jj±ajj jj~xjj ) Duża wydajność dla dużej liczby równań. Rozkład LU opłaca się stosować w przypadku rozwiązywania wielu układów równań z tą samą macierzą współczynników układu A. Każdy układ równań różni się wtedy tylko wektorem wyrazów wolnych. Rozkład LU wykonuje się w takim przypadku tylko raz (ilość operacji ~n ). Rozwiązanie pojedynczego układu równań można znaleźć przy zastosowaniu algorytmu postępowania odwrotnego (ilość operacji ~n ). ) Oszczędność zajmowanej pamięci. Elementy macierzy L i U mogą zostać zapisane w macierzy A. ) Jeśli macierz A jest symetryczna i dodatniookreślona to nie trzeba dokonywać wyboru elementów podstawowych. 9

Układy równań z macierzą symetryczną. Rozkład LDL T Oznaczmy rozkład LU jako: Szukamy rozkładu macierzy A w postaci: A = LDU gdzie: L macierz trójkątna dolna z jedynkami na diagonali, D macierz diagonalna z elementami diagonalnymi macierzy ¹U, U macierz trójkątna górna z jedynkami na diagonali Wykorzystujemy symetrię macierzy co prowadzi do rozkładu dla macierzy symetrycznych: A = LDL T Rozwiązanie układu Ax=b: A = LU U T DL T = A T = A ) U = L T Lz = b Dy = z L T x = y Elementy rozkładu wyznaczamy rekurencyjnie a dla i=,,...,n oblicza się na przemian: Nakład obliczeń: Zalety: - nakład obliczeń dwukrotnie mniejszy niż w GCW - dzięki symetrii macierzy wystarczy zapamiętać elementów d = a l ij = a ij P j k= c ikl jk d j c ij = d j l ij ; j = ; ; : : : ; i d i = a ii Xi k= c ik l ik M = n + n n D = n n N = n(n + ) 0

Rozkład LL T (Banachiewicza-Cholesky'ego) Jeśli macierz A jest macierzą symetryczną dodatnio określoną wówczas można dokonać następującego rozkładu: Macierz L jest macierzą trójkątną dolną z elementami na diagonali mogącymi się różnić od. Macierz spełnia warunek A = LL T A = ¹ L ¹ L T więc rozkład ten nie jest jednoznaczny. Jeśli jednak liczby na diagonali macierzy L są dodatnie wówczas rozkład jest jednoznaczny, a elementy macierzy wyznaczamy ze wzorów: l ii = v u t aii ¹L = L Xi k= lik ; i = ; ; : : : ; n l ji = a ji P i k= l jkl ik ; j = i + ; i + ; : : : ; n l ii Nakład obliczeń: Przykład n p M = n + n n D = n + n + n A = i = : l = ; l = ; l = i = : l = ; l = i = : l = A = = 0 0 0 0 0 0

Inne zastosowania rozkładu LU. Obliczanie wyznacznika Aby obliczyć wyznacznik macierzy A możemy posłużyć się rozkładem det(l) = A = LU det(a + E) = det(lu) Wyznacznik macierzy U jest iloczynem elementów stojących na diagonali tej macierzy (n- operacji mnożenia). Odwracanie macierzy = det(l)det(u) = det(u) Aby znaleźć przy pomocy macierzy L i U macierz odwrotną A - należy rozwiązać n układów równań: LUx (i) = e (i) ; i = ; ; : : : ; n e (i) = [0; 0; : : : ; ; : : : ; 0] T LUX = I! X = A Rozwiązania układów równań x (i) stanowią kolumny macierzy odwrotnej A - (po uwzględnieniu ewentualnych przestawień wierszy wynikających z wyboru elementu podstawowego). Przykład Znaleźć macierz A - jeśli macierz A jest zdefiniowana: 0 A = 0 0 0 0 0 L = 0 0 U = 0 0 0 x () = = = x () = = = = = P n = x () = = = = A =

Układy równań z macierzą trójdiagonalną Szukamy rozwiązania układu równań: Zdarza się że macierz układu równań ma postać (np. równania z ilorazami różnicowymi): T = T x = b d c a d c a d c............... c n a n d n Można wykonać rozkład LU macierzy T, macierze te mają postać: U = u c u c 0 u c...... 0 Elementy macierzy rozkładu obliczamy rekurencyjnie: u = d l i = a i u i u i = d i l i c i ;... c n u n i = ; ; : : : ; n L = l 0 l...... 0...... l n Rozwiązanie układu Tx=b: Ly = b Ux = y

Rozwiązanie: y = b y i = b i x n = y l i y i n u n x i = y i c i x i+ u i ; i = n ; n ; : : : ; gdzie: x jest poprawką, którą można łatwo wyznaczyć rozwiązując układ: A±x = r Należy jednak pamiętać, że wyznaczona poprawka do rozwiązania również jest przybliżeniem. Kolejne poprawione rozwiązanie, które uzyskamy będzie miało postać: ¹x = ~x + ±x + ±(±x) nakład obliczeń: M=n-, D=n- liczba zajętych komórek: P=n- Jeśli macierz jest dominująca kolumnowo to rozkład T=LU jest równoważny rozkładowi z częściowym wyborem elementu podstawowego (niezawodność metody). Iteracyjne poprawianie rozwiązania układu równań Błąd rozwiązania można sprawdzić obliczając wektor reszt: r = b A~x Zazwyczaj współrzędne wektora r są różne od zera. Oznacza to, że nie uzyskaliśmy dokładnego rozwiązania, ale przybliżone. Rozwiązanie to chcemy poprawić: ~x = x ±x Jeżeli wektor reszt r=b-ax jest obliczony dokładnie, poprawka x została wyznaczona metodą Gaussa- Crouta oraz zachodzi warunek: jjrjj "jjajj W (n)jj±xjj + jjaxjj " W (n) = 9 n + n 8n wówczas norma wektora reszt obliczona w kolejnych iteracjach maleje jjb A¹xjj jjb Axjj

Algorytm iteracyjnego poprawiania rozwiązania:. Rozwiązujemy układ Ax () =b metodą Gaussa. Obliczamy wektor reszt r () i sprawdzamy rozwiązanie. Sprawdzamy czy poniższy warunek jest prawdziwy jjr i jj > jjax () jj " jeśli nie to przerywamy obliczenia. Jeśli jest spełniony to kontynuujemy.. Obliczamy poprawkę i wyznaczamy ±x () x () = x () + ±x (). Wyznaczamy wektor reszt r () i sprawdzamy rozwiązanie. W razie konieczności powtarzamy kroki,, aż do skutku.

Rozwiązywanie układów liniowych nadokreślonych minimalizacja formy kwadratowej Jak rozwiązać poniższy problem? a : : : a n a : : : a n : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : a m : : : a mn dla warunku m > n x : : : : : : x n Brak dokładnego rozwiązania w większości przypadków. Można poszukiwać conajwyżej najlepszego przybliżenia rozwiązania w sensie średniokwadratowym. Dla r = b Ax rozwiązaniem średniokwadratowym problemu nadokreślonego (least square problem) jest taki wektor x, który minimalizuje normę: jjrjj = (r T r) = = b b : : : : : : : : : : : : b m Szukamy minimum funkcjonału F: (r T r) = = min! r T r = F = min F = (b Ax) T (b Ax) = (b T x T A T )(b Ax) = b T b b T Ax x T A T b + x T A T Ax Minimum znajdziemy jeśli narzucimy warunek: @F @~x = ~0 @F @~x = bt A A T b + A T Ax + x T A T A = 0 Dwa pierwsze wyrazy są identyczne, (podobnie i ) więc otrzymujemy warunek: A T Ax A T b = 0 A T Ax = A T b (A T A) = x = (A T A) A T b

Jeśli macierz A jest macierzą o rozmiarach mxn i elementach rzeczywistych, b jest wektorem m-elementowym, a x wektorem n elementowym spełniającym równanie A T (b Ax) = 0 wówczas dla dowolnego n-elementowego wektora y spełniona jest nierówność jjb Axjj jjb Ayjj Dla dowolnego wektora otrzymujemy warunek skąd wynika że wektor r jest ortogonalny do wszystkich wektorów z przestrzeni R(A) rozpiętej na wektorach kolumnowych macierzy A. Dlaczego? - bo macierz A jest prostokątna i nie generuje bazy zupełnej. Ponadto nadokreślony układ równań można przekształcić do postaci układu normalnego Macierz A T A jest symetryczna, dlatego układ normalny można rozwiązać metodą Cholesky'ego. Jeśli kolumny macierzy A są niezależne liniowo to macierz jest nieosobliwa. x = 0! Ax = 0 (Az) T (b Ax) = 0 (A T A)x = A T b x T (A T A)x = (Ax) T Ax = jjaxjj > 0! det(a T A) > 0

Gdy kolumny A są niezależne liniowo, wówczas rozwiązanie układu jest jednoznaczne gdzie macierz A I : x = A I b A I = (A T A) A T jest pseudoodwrotnością macierzy A. r = (I P A )b P A = AA I = A(A T A) A T P A jest operatorem rzutu ortogonalnego na przestrzeń rozpiętą na kolumnach macierzy A. Uwaga: jeśli kolumny A są zależne liniowo (bardzo często) to wówczas istnieje wiele rozwiązań (średniokwadratowych ) dających ten sam wektor reszt. Przykład wpływ uwarunkowania macierzy na rozwiązanie układu normalnego A = " 0 0 0 " 0 0 0 " ; b = 0 0 0 ; j"j Przekształcamy do układu normalnego A T A = A T b = Dla precyzji obliczeń rzędu i macierz A T A staje się osobliwa układ nie posiada rozwiązania. Metody wykorzystujące rozkład QR Dla macierzy A o rozmiarach mxn, w której kolumny są niezależne liniowo istnieje jednoznaczny rozkład w postaci Q jest macierzą o rozmiarach mxn taką że: D jest macierzą diagonalną + " + " + " " ¼ 0 A = QR Q T Q = D D = diag(d ; d ; : : : ; d n ) d k > 0; k = ; : : : ; n 8

R jest macierzą trójkątną górną z elementami r kk = ; k = ; : : : ; n Warunek minimalizacji normy wektora reszt w sensie średniokwadratowym przyjmuje postać Ax = b ) A T Ax = A T b R T Q T QRx = R T Q T b R T DRx = R T Q T b DRx = Q T b Rx = D Q T b = y Jak wyznaczyć macierze Q i R? Zmodyfikowana metoda Grama-Schmidta Wyznaczamy ciąg macierzy A = A () ; A () ; : : : ; A (n+) = Q ³ A (k) = q ; : : : ; q k ; a (k) k ; : : : ; a(k) n q ;i a (k) ;i q i = : : : : : : : : : a(k) i = : : : q m;i a (k) m;i Założenia ) k- pierwszych kolumn w A (k) to także k- pierwszych kolumn w Q ) kolumny są ortogonalne do kolumn Proces ortogonalizacji polega na rekurencyjnej ortogonalizacji kolumn o indeksie od k do n w k-tej iteracji względem kolumny q k (usuwamy z nich przyczynki od q k ) w ten sposób wyznaczamy k-tą kolumnę R (elementy r kj ) oraz kolumnę k+ macierzy Q (elementy a j (k+) ). Klasyczna met. GS: a (k) k ; : : : ; a(k) n q ; : : : ; q k q k = a (k) k ; d k = q T k q k ; r kk = a (k+) j = a (k) j r kj a (k) k r kj = qt k a(k) j d k j = k + ; : : : ; n 9

klasyczna met. GS różni się kolejnością obliczeń: Jednocześnie przekształcamy wektor b tj.: b = b () ; b () ; : : : ; b (n+) b (k+) = b (k) y k q k ; d Po n+ krokach b (n+) jest to część wektora k pierwotnego ortogonalna do R(A) i stanowi wektor reszt. Po przeprowadzeniu procesu ortogonalizacji do końca (jeśli kolumny macierzy A są liniowo niezależne) dostajemy Q = (q ; : : : ; q n ) R = (r kj ) y = (y ; y ; : : : ; y n ) T A = QR b = Qy + r Rx = y q k = a k k X i= r ik q i r ik = qt i a k ; i = ; ; : : : ; k d i y k = qt k b(k) Wyznaczenie R i y wymaga wykonania mn(n+) operacji a rozwiązanie układu n(n+)/. Metoda Grama-Schmidta dla macierzy o liniowo zależnych kolumnach A = QR! AR = Q! Q = AS S=R - jest macierzą trójkątną górną. Stąd wynika q k = s k a + s k a + : : : + s kk a k Może się okazać że a, a,...,a k- są niezależne liniowo, ale a k jest już ich kombinacją (oraz wektorów q, q,...). Wtedy a (k) k = 0 (w macierzy Q) i powinniśmy przerwać proces ortogonalizacji. Jeśli jednak to istnieje wektor rank(a) > k a (k) j = 0; k j n Można więc przestawić kolumny j i k oraz prowadzić proces ortogonalizacji do momentu gdy pozostałe wektory a j (k) nie będą liniowo zależne. Szukamy wektora o największej normie: jja k sjj = max k j n jja(k) j jj a następnie za kolumnę k podstawiamy kolumnę s. 0

Dla rank(a)=r A <n rozkład QR ma postać Q = (q ; q ; : : : ; q ra ) A = Q(R; S) b = Qy + r Przykład zakładamy " ; " ¼ 0 gdzie: R rxr -macierz trójkątna górna (r kk =) S- macierz o rozmiarach r A x(n-r A ) Rozwiązania szukamy rozwiązując układ (R; S)x = y x = (x ; x ) T x = R y R Sx gdzie: x - ma r składowych, x jest dowolnym wektorem o n-r składowych (np. x =0). Q = R = x = 0 0 " " "= 0 " "= 0 0 "= 0 = 0 0 = = = ; r = " ; y = ; x dok = = = =( + " ) =( + " ) =( + " ) 0