Lab 3 – uzupełnienie. Szkic M. Głowacki, L-10, PK
1
Laboratorium komputerowe 3 – uzupełnienie
1. Rozwiązywanie układów równań.
Przykład
{
2𝑥 − 3𝑦 + 4𝑧 = −1 2𝑧 = 𝑥 + 2 𝑦 − 𝑧 = 3𝑥
Porządkujemy układ równań (nie jest to konieczne, ale pomaga uniknąć błędu przy definiowaniu macierzy współczynników układu i wektora prawej strony).
{
2𝑥 − 3𝑦 + 4𝑧 = −1
−𝑥 + 2𝑧 = 2 3𝑥 − 𝑦 + 𝑧 = 0 Zapisujemy układ równań w postaci macierzowej 𝑨𝒙 = 𝒃 :
[
2 −3 4
−1 0 2
3 −1 1
] [ 𝑥 𝑦 𝑧
] = [
−1 2 0
]
Definiujemy:
A=[2 -3 4; -1 0 2; 3 -1 1];
b=[-1; 2; 0];
Sprawdzamy, czy układ równań ma rozwiązanie (czy wyznacznik macierzy współczynników układu równań jest niezerowy):
det(A) Otrzymujemy:
ans = -13
Rozwiązujemy układ równań:
x=A\b Otrzymujemy:
x=
0.30769 2.07692 1.15385
Lab 3 – uzupełnienie. Szkic M. Głowacki, L-10, PK
2 2. Wyznaczenie macierzy odwrotnej.
Dla macierzy zdefiniowanej w poprzednim punkcie:
inv(A) wynik:
[
−0.1538 0.0769 0.4615
−0.5385 0.7692 0.6154
−0.0769 0.5385 0.2308 ]
Sprawdzamy:
inv(A)*A %lub A*inv(A) wynik:
[
1.0000 −0.0000 0.0000
−0.0000 1.0000 −0.0000
−0.0000 0.0000 1.0000 ]
Uwaga: uzyskujemy w przybliżeniu macierz jednostkową (macierz odwrotna również zostaje wyznaczona w przybliżeniu). Zapis -0.0000 nie oznacza żadnego specjalnego symbolu matematycznego - jest to po prostu mała liczba ujemna, której co najmniej pierwsze cztery cyfry po przecinku są równe zero.
Uwaga: układy równań możemy również rozwiązywać za pomocą macierzy odwrotnej:
x=inv(A)*b
Jednak lepiej jest stosować operator \ .