A. Rozwiązanie układu równań liniowych algebraicznych

Transkrypt

A. Rozwiązanie układu równań liniowych algebraicznych
Dodatek
A
ROZWIĄZANIE UKŁADU RÓWNAŃ LINIOWYCH ALGEBRAICZNYCH
1
A.
ROZWIĄZANIE UKŁADU RÓWNAŃ LINIOWYCH ALGEBRAICZNYCH
W literaturze cytuje się wiele metod numerycznego rozwiązywania układów równań liniowych o postaci
A⋅ X = B
(A.1)
Niektóre z nich są szczególnie nakierowane na szybkość operacji, najmniejszą zajętość pamięci, wykorzystują też dodatkowe cechy macierzy współczynników A, takie jak symetria czy pasmowość. Spośród tych wielu
dostępnych w literaturze procedur omówimy jedną, tzw. metodę rozkładu trójkątnego macierzy Choleskiego
- Banachiewicza. Metoda ta jest z powodzeniem stosowana dla macierzy A symetrycznych i dodatnio określonych, a z takimi właśnie macierzami mamy do czynienia w zadaniach metody elementów skończonych
dotyczących liniowej analizy statycznej konstrukcji sprężystych. Macierz A można rozłożyć na dwie macierze w ten sposób, by
A = U T ⋅U ,
(A.2)
gdzie U jest górną macierzą trójkątną. Macierz A można także rozłożyć do postaci
T
(A.3)
A = U ⋅ D ⋅U
zwanej postacią zmodyfikowaną metody Choleskiego. U jest górną macierzą trójkątną z jedynkami na głównej przekątnej. Symbol D reprezentuje macierz diagonalną, zawierającą kwadraty składowych diagonalych
macierzy U. Równania rekurencyjne Uij., i Dij.., generowane kolumnami dla j=2,3,...,n, dają
U ij =
i −1
1 

⋅  Aij − ∑ Dkk U ki U kj  ,
Dii 
k =1

j −1
D jj = A jj − ∑ Dkk U kj
(1<i<j)
2
(A.4)
(1<i=j)
k =1
Obydwa te równania zawierają wyrażenie Dkk , .Ukj . pod znakiem sumy.Jeżeli podstawimy :
U kj * = Dkk U kj ,
(A.5)
wówczas
i −1
U ij * = Aij − ∑ Dkk U ki U kj * (1<i<j)
(A.6)
k =1
j −1
D jj = A jj − ∑U kj ⋅ U kj * (1<i=j)
k =1
(A.7)
gdzie j=2,3,...,n, oraz
U kj =
1
U kj *,
Dkk
Zatem dla kolumny j osiąga się chwilowy wynik na Uij. dla każdej składowej spoza głównej diagonali według (A.6). Dalej na podstawie (A.6) oblicza się wyraz diagonalny Djj., i równocześnie końcową wartość
każdego składnika poza główną przekątną.
Załóżmy, że chcemy rozwiązać układ równań liniowych typu
Tomasz Łodygowski, Witold Kąkol – Metoda elementów skończonych w wybranych zagadnieniach mechaniki
konstrukcji inżynierskich
Alma Mater
Dodatek
A
ROZWIĄZANIE UKŁADU RÓWNAŃ LINIOWYCH ALGEBRAICZNYCH
2
A⋅ X = B
(A.8)
w którym X jest kolumną n niewiadomych, zaś B jest wektorem stałych. Podstawmy (A.3) do (A.8):
T
U D ⋅U ⋅ X = B,
(A.9)
U ⋅X =Y
(A.10)
D ⋅Y = Z
(A.11)
a podstawiając
oraz
otrzymujemy układ
T
U ⋅Z = B.
(A.12)
Teraz wektor niewiadomych X otrzymujemy w trzech krokach :
1. Ponieważ U jest dolną macierzą trójkątną, elementy wektora Z otrzymamy w procesie podstawienia
w przód :
i −1
Z i = Bi − ∑U ki Z k (1<i) .
(A.13)
k =1
2. Macierz D jest diagonalna, więc
Yi =
Zi
,
Dii
(1=1,2,…,n) .
(A.14)
3. W trzecim kroku znajdujemy wektor X, stosując podstawienie odwrotne (rozpoczynając od ostatniej
niewiadomej):
X i = Yi −
n
∑U
k =i + 1
ik
X k (i<n)
(A.15)
Przykład
Posługując się metodą zmodyfikowaną Choleskiego, spróbujemy rozwiązać następujący układ równań liniowych typu
A·X= B
0   x1  15 
 200 − 200
− 200 700 − 200  ⋅  x  = 30 

  2  
 0
− 200 700   x3  30 
Dokonujemy rozkładu macierzy współczynników A na trzy macierze (A.3), korzystając z zależności (A.4).
Tomasz Łodygowski, Witold Kąkol – Metoda elementów skończonych w wybranych zagadnieniach mechaniki
konstrukcji inżynierskich
Alma Mater
Dodatek
A
ROZWIĄZANIE UKŁADU RÓWNAŃ LINIOWYCH ALGEBRAICZNYCH
3
Kolejno otrzymujemy :
D11 = A11 = 200.00
U 11 = 1.00
1
1
U 12 =
( A12 ) =
0 = 0.00
D11
200
U 13 =
1
1
( A13 ) =
0 = 0.00
D11
200
U 22 = 1.00
2
D22 = A22 − D11U 11 = 400 − 200 = 200.00
U 23 =
1
1
( A23 − D11U 12 U 13 ) =
( −200 − 200( −1 )( 0 ) = −1.00
D23
200
2
2
D33 = A33 − D11U 13 − D22 U 23 = 400 − 200 ⋅ 0 2 − 200 ⋅ ( −1 )2 = 200.00
Macierz A można więc przedstawić w postaci :
0 0  200 0
0  1 − 1 0 
1



A = U ⋅ D ⋅ U = − 1 1 0  ⋅  0 200 0  ⋅ 0 1 − 1
 0 − 1 1  0
0 200  0 0
1 
T
Teraz już łatwo rozwiążemy układ równań, stosując (A. 13), (A. 14) i (A. 15):
Z 1 = B1 = 15 ,
Z 2 = B2 − U 12 Z 1 = 30 − ( −1.0 ) ⋅ 15 = 45 ,
Z 3 = B3 − U 13 Z 1 − U 23 Z 2 = 30 − ( 0 ) ⋅ 15 − ( −1 ) ⋅ 45 = 75 ,
i w końcu
Y1 =
Z1
15
=
= 0.075 ,
D11 200
Y2 =
Z2
45
=
= 0.225 ,
D22 200
Y3 =
Z3
75
=
= 0.375 ,
D33 200
X 3 = Y3 = 0.375 ,
X 2 = Y2 − U 23 X 3 = 0.225 − ( −1 ) ⋅ 0.375 = 0.600 ,
X 1 = Y1 − U 12 X 2 − U 13 X 3 = 0.075 − ( −1 ) ⋅ 600 − ( 0 ) ⋅ 0.375 = 0.675.
Tomasz Łodygowski, Witold Kąkol – Metoda elementów skończonych w wybranych zagadnieniach mechaniki
konstrukcji inżynierskich
Alma Mater

Podobne dokumenty