Narzędzia użytkownika

Narzędzia witryny


Action disabled: source
mnum:mnum6

Operacje na macierzach, układy równań liniowych

Rozważmy układ n równań liniowych postaci

$$\begin{matrix} a_{11}x_1 + a_{12}x_2 + \cdots + a_{1n}x_n = b_1 \\ a_{21}x_1 + a_{22}x_2 + \cdots + a_{2n}x_n = b_2 \\ \cdots \\ a_{n1}x_1 + a_{n2}x_2 + \cdots + a_{nn}x_n = b_n \\ \end{matrix}$$

który można zapisać w postaci macierzowej

$$\boldsymbol{A} \cdot \boldsymbol{X}=\boldsymbol{B}$$

gdzie

$$ \boldsymbol{A}= \begin{pmatrix} a_{11} & a_{12} & \cdots &a_{1n} \\ a_{21} & a_{22} & \cdots &a_{2n} \\ \cdots \\ a_{n1} & a_{n2} & \cdots &a_{nn} \\ \end{pmatrix} $$

to macierz główna układu,

$$ \boldsymbol{X}= \begin{pmatrix} x_1 \\ x_2 \\ \cdots \\ x_n \\ \end{pmatrix} $$

to wektor niewiadomych, a

$$ \boldsymbol{B}= \begin{pmatrix} b_1 \\ b_2 \\ \cdots \\ b_n \\ \end{pmatrix} $$

to wektor wyrazów wolnych. Zakładamy, że układ jest oznaczony, to znaczy ma jedno rozwiązanie. W tym przypadku macierz główna $\boldsymbol{A}$ nie jest osobliwa (jej wyznacznik jest różny od zera).

Układ równań

$$\boldsymbol{A} \cdot \boldsymbol{X}=\boldsymbol{B}$$

można rozwiązać obliczając macierz odwrotną do macierzy głównej układu

$$\boldsymbol{X}= \boldsymbol{A^{-1}} \cdot \boldsymbol{B}$$

W tym celu posłużymy się metodą Gaussa-Jordana. Z definicji mamy

$$\boldsymbol{A^{-1}} \cdot \boldsymbol{A} = \boldsymbol{I} $$

$$\boldsymbol{A^{-1}} \cdot \boldsymbol{I} = \boldsymbol{A^{-1}} $$

Jeżeli wypiszemy obok siebie macierz $\boldsymbol{A}$ i macierz jednostkową $\boldsymbol{I}$ i będziemy na obydwu macierzach wykonywać te same przekształcenia, w taki sposób żeby macierz $\boldsymbol{A}$ przetransformować do macierzy jednostkowej to, w wyniku równoległego przekształcania macierzy $\boldsymbol{I}$, otrzymamy macierz odwrotną do $\boldsymbol{A}$.

Rozważmy przykładową macierz

$$ \boldsymbol{A}= \begin{pmatrix} 2 & 1 & 1 \\ 1 & 2 & 1 \\ 1 & 1 & 2 \\ \end{pmatrix} \boldsymbol{B}= \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \\ \end{pmatrix} $$

(1) Dzielimy pierwszy wiersz (obu macierzy) przez $a_{11}$ (żeby otrzymać $a_{11}=1$)

$$ \boldsymbol{A}= \begin{pmatrix} 1 & 1/2 & 1/2 \\ 1 & 2 & 1 \\ 1 & 1 & 2 \\ \end{pmatrix} \boldsymbol{B}= \begin{pmatrix} 1/2 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \\ \end{pmatrix} $$

(2) Od wiersza 2 odejmujemy wiersz 1 pomnożony przez $a_{21}$ (żeby otrzymać $a_{21}=0$) oraz od wiersza 3 wiersz 1 pomnożony przez $a_{31}$ (żeby otrzymać $a_{31}=0$)

$$ \boldsymbol{A}= \begin{pmatrix} 1 & 1/2 & 1/2 \\ 0 & 3/2 & 1/2 \\ 0 & 1/2 & 3/2 \\ \end{pmatrix} \boldsymbol{B}= \begin{pmatrix} 1/2 & 0 & 0 \\ -1/2 & 1 & 0 \\ -1/2 & 0 & 1 \\ \end{pmatrix} $$

(3) Wiersz 2 dzielimy przez $a_{22}$ (żeby uzyskać $a_{22}=1$), tak uzyskany wiersz mnożymy przez $a_{12}$ i odejmujemy od wiersza 1 (żeby uzyskać $a_{12}=0$), tak uzyskany wiersz mnożymy przez $a_{32}$ i odejmujemy od wiersza 3 (żeby uzyskać $a_{32}=0$)

$$ \boldsymbol{A}= \begin{pmatrix} 1 & 0 & 1/3 \\ 0 & 1 & 1/3 \\ 0 & 0 & 4/3 \\ \end{pmatrix} \boldsymbol{B}= \begin{pmatrix} 2/3 & -1/3 & 0 \\ -1/3 & 2/3 & 0 \\ -1/3 & -1/3 & 1 \\ \end{pmatrix} $$

(4) Wiersz 3 dzielimy przez $a_{33}$ (żeby uzyskać $a_{33}=1$), tak uzyskany wiersz mnożymy przez $a_{13}$ i odejmujemy od wiersza 1 (żeby uzyskać $a_{13}=0$), tak uzyskany wiersz mnożymy przez $a_{23}$ i odejmujemy od wiersza 2 (żeby uzyskać $a_{23}=0$)

$$ \boldsymbol{A}= \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \\ \end{pmatrix} \boldsymbol{B}= \begin{pmatrix} 3/4 & -1/4 & -1/4 \\ -1/4 & 3/4 & -1/4 \\ -1/4 & -1/4 & 3/4 \\ \end{pmatrix} $$

W ten sposób otrzymaliśmy macierz

$$ \boldsymbol{A^{-1}}= \boldsymbol{B}= \begin{pmatrix} 3/4 & -1/4 & -1/4 \\ -1/4 & 3/4 & -1/4 \\ -1/4 & -1/4 & 3/4 \\ \end{pmatrix} $$

Ćw. 6.1
Napisz funkcję wyznaczającą macierz odwrotną metodą Gaussa-Jordana (sprawdź swoją funkcję mnożąc otrzymaną macierz przez macierz odwrotną do tej macierzy) i wykorzystaj ją do rozwiązania układu trzech równań liniowych o trzech niewiadomych. Opis metody Gaussa-Jordana znajdziesz powyżej.

Ćw. 6.2
Napisz funkcję obliczającą wyznacznik macierzy 3×3 i wykorzystaj ją do rozwiązania tego samego układu równań metodą wyznacznikową (wzory Cramera, jeżeli nie pamiętasz to znajdziesz je na przykład w Wikipedii).

Ćw. 6.3
Wykonaj te same obliczenia dla układu czterech równań liniowych o czterech niewiadomych.

Ćw. 6.4
Oszacuj ile operacji mnożenia jest potrzebnych do rozwiązania takiego układu za pomocą każdej z tych dwóch metod.

mnum/mnum6.txt · ostatnio zmienione: 2021/04/20 09:10 przez zbd