Metody numeryczne w fizyce
FZP002934wcL
rok akademicki 2020/21 semestr letni
Wykład 3
Karol Tarnowski
karol.tarnowski@pwr.edu.pl
L-1 p. 220
• Układy równań liniowych
• Układy równań do łatwe rozwiązania
• Wyznaczanie rozkładów LU
• Eliminacja Gaussa
• Normy wektorów i macierzy
Plan wykładu
Na podstawie:
• D. Kincaid, W. Cheney, Analiza numeryczna
Układ równań liniowych
11 1 12 2 1 1
21 1 22 2 2 2
1 1 2 2
n n n n
n n nn n n
a x a x a x b a x a x a x b a x a x a x b
+ + + =
+ + + =
+ + + =
11 12 1 1 1
21 22 2 2 2
1 2
n n
n n nn n n
a a a x b
a a a x b
a a a x b
=
Ax = b
• macierz A (rozmiaru n × p)
• macierz B (rozmiaru p × m)
• wynik mnożenia AB (macierz rozmiaru n × m)
Mnożenie macierzy
( ) ( )
=
=
1
1 ,1
p
ik kj ij k
AB a b i m j n
Niech będą dwa układy n równań z n niewiadomymi:
Takie układy równań są równoważne, jeśli mają identyczne rozwiązania.
Chcąc rozwiązać układ równań możemy przekształcić go do równoważnego prostszego układu.
Równoważność układów równań
= , = .
Ax b Bx d
1. Przestawianie równań (E
i E
j)
2. Mnożenie równania stronami przez pewną liczbę różną od zera (lE
i E
i)
3. Dodawanie stronami do równania wielokrotności innego równania (E
i+ lE
j E
i)
Operacje elementarne
Operacje elementarne
Przedstawianie równań
=
11 12 13 11 12 13
21 22 23 31 32 33
31 32 33 21 22 23
1 0 0 0 0 1 0 1 0
a a a a a a
a a a a a a
a a a a a a
=
1 1
2 3
3 2
1 0 0 0 0 1 0 1 0
b b
b b
b b
Operacje elementarne
Mnożenie równania przez skalar
=
11 12 13 11 12 13
21 22 23 21 22 23
31 32 33 31 32 33
1 0 0
0 0
0 0 1
a a a a a a
a a a a a a
a a a a a a
=
1 1
2 2
3 3
1 0 0
0 0
0 0 1
b b
b b
b b
0
Operacje elementarne
Dodawanie równania z mnożnikiem
=
+ + +
11 12 13 11 12 13
21 22 23 21 22 23
31 32 33 21 31 22 32 23 33
1 0 0 0 1 0
0 1
a a a a a a
a a a a a a
a a a a a a a a a
=
+
1 1
2 2
3 2 3
1 0 0 0 1 0
0 1
b b
b b
b b b
Odwrotność macierzy
− −
−
=
=
=
1 1
1
Ax b
A Ax A b
x A b
Załóżmy, że macierz jest przekątniowa
Jeśli dla pewnego i jest a
ii= 0 oraz b
i= 0, to x
imoże być dowolne, natomiast jeśli a
ii= 0 oraz b
i 0 to układ jest sprzeczny.
Układy łatwe do rozwiązania
=
11 1 1
22 2 2
0 0
0
0
0 0
nn n na x b
a x b
a x b
=
1 11 2 22
n nn
b a x b a
b a
Załóżmy, że macierz jest trójkątna dolna. Ponadto załóżmy, że a
ii 0 dla wszystkich i.
podstawianie w przód
Układy łatwe do rozwiązania
−
=
11 1 1
21 22 2 2
1 , 1
0 0
0
n n n nn n n
a x b
a a x b
a a a x b
( )
( )
−
− −
1 1 11
2 2 21 1 22
3 3 32 2 31 1 33
x b a
x b a x a
x b a x a x a
−
=
−
1
1 i
i i ij j ii
j
x b a x a
Załóżmy, że macierz jest trójkątna górna oraz a
ii 0 dla wszystkich i.
podstawianie wstecz
Układy łatwe do rozwiązania
−
=
11 12 1 1 1
22 2 2
1,
0
0 0
n
n n
nn n n
a a a x b
a x b
a
a x b
( )
− − − − −
−
,
1 1 1, , 1, 1
n n n n
n n n n n n n n
x b a
x b a x a
= +
−
1 n
i i ij j ii
j i
x b a x a
W podobny sposób można rozwiązywać układy równań, których macierz powstaje z macierzy trójkątnej przez przestawienie wierszy.
Układy łatwe do rozwiązania
=
=
11 12 1 1
21 22 23 2 2
31 3 3
31 1 3
11 12 2 1
21 22 23 3 2
0
0 0 0 0 0
a a x b
a a a x b
a x b
a x b
a a x b
a a a x b
permutacja (3,1,2)
Załóżmy, że macierz A można wyrazić jako iloczyn macierzy trójkątnej dolnej L i górnej U
A = LU.
Wtedy rozwiązywanie układu równań Ax = b
można wykonać w dwóch etapach, bo L(Ux) = b.
• Lz = b rozwiązujemy względem z,
• Ux = z rozwiązujemy względem x.
Nie każda macierz ma rozkład LU.
Rozkład LU
Jeżeli rozkład LU istnieje, to nie jest określony jednoznacznie.
Rozkład LU
− −
− −
=
11 12 1 11 11 12 1
21 22 21 22 22
1, 1,
1 , 1 1 , 1
0 0
0 0
0 0
n n
n n n n
n n n nn n n n nn nn
a a a l u u u
a a l l u
a u
a a a l l l u
=
A LU
Rozkład LU – algorytm
−
−
= =
11 11 12 1
21 22 22
1,
1 , 1
0 0
0 0
0 0
n
n n
n n n nn nn
l u u u
l l u
L U
u
l l l u
−
−
=
11 12 1
21 22
1,
1 , 1
n
n n
n n n nn
a a a
a a
A a
a a a
= =
= =
=
=
min( , )
1 1
0 0
n i j
ij is sj is sj
s s
is sj
a l u l u
l s i
u s j
Załóżmy, że znamy k-1 wierszy macierzy U oraz k-1 kolumn macierzy L.
Dla i=j=k mamy
ustaliwszy jeden z elementów l
kklub u
kkobliczamy drugi.
Rozkład LU – algorytm
−
=
= 1 +
1 k
,
kk ks sk kk kk
s
a l u l u
=
=
min( , )
1 i j
ij is sj
s
a l u
Znając l
kkoraz u
kkobliczamy pozostałe elementy k-tego wiersza macierzy U oraz k-tej kolumny macierzy L.
Rozkład LU – algorytm
( )
( )
−
= =
−
= =
= = + +
= = + +
1
1 1
1
1 1
1
1
k k
kj ks sj ks sj kk kj
s s
k k
ik is sk is sk ik kk
s s
a l u l u l u k j n
a l u l u l u k i n
=
=
min( , )
1 i j
ij is sj
s
a l u
• rozkład Doolittle’a l
ii= 1 dla 1 ≤ i ≤ n
• rozkład Crouta
u
ii= 1 dla 1 ≤ i ≤ n
• rozkład Cholesky’ego (dla macierzy rzeczywistej, symetrycznej, i dodatniookreślonej)
U = L
T, czyli A = LL
TRozkład LU
Eliminacja Gaussa
−
−
=
−
− − −
1 2 3 4
6 2 2 4 12
12 8 6 10 34
3 13 9 3 27
6 4 1 18 38
x x x x
−
−
=
−
−
− −
1 2 3 4
6 2 2 4
12
2 4 2 2 10
1 2 12 8 1 21 1 2 3 14 26
x x x x
−
−
=
−
− −
1 2 3 4
6 2 2 4 12
0 4 2 2 10
0 12 8 1 21
0 2 3 14 26
x
x
x
x
Eliminacja Gaussa
−
−
=
−
−
− −
1 2 3 4
6 2 2 4
12
2 4 2 2 10
1 2 12 8 1 21 1 2 3 14 26
x x x x
−
−
=
−
−
−
− − −
1 2 3 4
6 2 2 4
12
2 4 2 2 10
1 2 3 2 5 9 1 1 2 4 13 21
x
x
x
x
Eliminacja Gaussa
−
−
=
−
−
−
− − −
1 2 3 4
6 2 2 4
12
2 4 2 2 10
1 2 3 2 5 9 1 1 2 4 13 21
x x x x
−
−
=
−
−
−
− − −
1 2 3 4
6 2 2 4
12
2 4 2 2 10
1 2 3 2 5 9 1 1 2 2 3 3
x
x
x
x
Eliminacja Gaussa
−
−
=
−
−
−
− − −
1 2 3 4
6 2 2 4
12
2 4 2 2 10
1 2 3 2 5 9 1 1 2 2 3 3
x x x x
− −
− −
=
− −
− − − − −
6 2 2 4 1 0 0 0 6 2 2 4
12 8 6 10 2 1 0 0 0 4 2 2
3 13 9 3 1 2 3 1 0 0 0 2 5
6 4 1 18 1 1 2 2 1 0 0 0 3
=
−
1
3
2
1
x
Eliminacja Gaussa
Znaczenie elementów głównych
=
1 2
0 1 1
1 1 2
x x
=
0 1 1 1
1 1 1 2
=
1 2
1 1
1 1 2
x x
−
−
=
− −
1
1 1
2
1 1
0 1 2
x x
(
−) (
−) ( )
−= −
1−
1= −
12
2 1 ,
11
2x x x
= =
2
1,
10
x x
Eliminacja Gaussa
Znaczenie elementów głównych
=
1 2
1 1
1 1 2
x x
=
1 2
1 1 2
1 1
x x
=
− −
1 2
1 1 2
0 1 1 2
x x
= =
2
1,
11
x x
• P – macierz permutacji (P powstaje z I poprzez przestawianie wierszy)
Eliminacja Gaussa
Wybór elementów głównych
=
PA LU
=
Ax b PAx = Pb
=
Lz Pb Ux = z
( ) P
ij=
p ji• P – macierz permutacji (P powstaje z I poprzez przestawianie wierszy)
Eliminacja Gaussa
Wybór elementów głównych
=
PA LU
=
Ax b PAx = Pb
=
Lz Pb Ux = z
( ) P
ij=
p jiW przestrzeni wektorowej V norma jest funkcją określoną na V, o wartościach rzeczywistych nieujemnych, która ma trzy własności:
Normy wektorów i macierzy
Normy wektorów
0 dla 0, ,
dla , , dla , .
=
+ +
x x x V
x x R x V
x y x y x y V
• norma euklidesowa (norma l
2)
• norma l
• norma l
1Normy wektorów i macierzy
Normy wektorów
=
=
22 1
n
,
i i
x x
=
max
1 i, x
i nx
=
=
1 1
n
.
i i
x x
Normy wektorów i macierzy
Normy wektorów
x x R : 2, x 1
1 x
1
1
x
2
1
x
• Dla ustalonej normy wektora indukowana
przez nią norma macierzy kwadratowej A stopnia n jest określona wzorem:
Normy wektorów i macierzy
Normy macierzy
1
sup :
=
=
nu