Studia

Macierze i wyznaczniki: działania, wyznacznik 2×2 i 3×3

Macierze i wyznaczniki na studiach: dodawanie, mnożenie macierzy i przez liczbę, wyznacznik 2×2 i 3×3 (reguła Sarrusa), macierz odwrotna 2×2 z przykładami.

Ilustracja: tablica z wypisanymi macierzami i strzałkami pokazującymi przekątne używane przy obliczaniu wyznacznika
Obraz wygenerowany przez AI

Czym jest macierz

Macierz to układ liczb (lub symboli, wyrażeń) zapisanych w postaci prostokątnej tablicy. Poziome rzędy to wiersze, pionowe to kolumny. Macierz o m wierszach i n kolumnach ma wymiar m × n, a jej element z wiersza i oraz kolumny j oznacza się a(i, j). Macierz kwadratowa ma tyle samo wierszy co kolumn.

Przykład macierzy 2 × 3 (dwa wiersze, trzy kolumny):

1  2  3
4  5  6

Szczególną macierzą kwadratową jest macierz jednostkowa I: na głównej przekątnej ma jedynki, poza nią zera. Dla macierzy 2 × 2:

1  0
0  1

Działania na macierzach

Dodawanie i mnożenie przez liczbę

Macierze dodaje się element po elemencie, więc muszą mieć ten sam wymiar. Mnożenie przez liczbę k oznacza pomnożenie każdego elementu przez k. Dla A = [[1, 2], [3, 4]] i B = [[0, 1], [5, 2]]:

A + B  =  1+0  2+1   =   1  3
          3+5  4+2       8  6

3 · A  =  3  6
          9  12

Mnożenie macierzy

Macierz A o wymiarze m × n można pomnożyć przez macierz B o wymiarze n × p. Warunek: liczba kolumn pierwszej macierzy musi być równa liczbie wierszy drugiej. Wynik ma wymiar m × p. Element wyniku w wierszu i oraz kolumnie j to suma iloczynów elementów i-tego wiersza A i j-tej kolumny B.

Dla tych samych A i B iloczyn AB wyznaczasz tak:

  • element (1, 1): 1·0 + 2·5 = 10,
  • element (1, 2): 1·1 + 2·2 = 5,
  • element (2, 1): 3·0 + 4·5 = 20,
  • element (2, 2): 3·1 + 4·2 = 11.
A · B  =  10   5
          20  11

Kolejność czynników ma znaczenie. Mnożenie jest łączne, ale nie jest przemienne, co widać na tym samym przykładzie:

B · A  =   3   4
          11  18

Wynik BA jest inny niż AB. Iloczyn może istnieć w jednej kolejności, a w drugiej nie: macierz 2 × 3 pomnożona przez macierz 3 × 2 daje macierz 2 × 2, ale już zamiana kolejności daje macierz 3 × 3. Przykład z macierzą nieskwadratową:

C = 1 2 3     D = 1 0      C · D = 7  5
    4 5 6         0 1              16 11
                  2 1

Sprawdzenie pierwszego elementu: 1·1 + 2·0 + 3·2 = 7.

Przesuń tabelę, aby zobaczyć wszystkie kolumny →

DziałanieWarunekWymiar wynikuPrzemienność
A + Bten sam wymiartaki sam jak A i Btak
k · Abraktaki sam jak Atak
A · Bkolumny A = wiersze Bm × p (dla A m × n, B n × p)nie

Wyznacznik macierzy kwadratowej

Wyznacznik to liczba przypisana macierzy kwadratowej, oznaczana det A. Informuje m.in. o tym, czy macierz ma macierz odwrotną.

Wyznacznik 2×2

Dla macierzy o elementach a, b w pierwszym wierszu i c, d w drugim wyznacznik to różnica iloczynu elementów głównej przekątnej i iloczynu elementów drugiej przekątnej: det = a·d − b·c.

Dla A = [[1, 2], [3, 4]]: det A = 1·4 − 2·3 = −2.

Dla macierzy [[2, 4], [1, 2]]: det = 2·2 − 4·1 = 0. Wiersze są proporcjonalne (pierwszy to dwukrotność drugiego), więc wyznacznik jest zerowy.

Wyznacznik 3×3: reguła Sarrusa

Reguła Sarrusa to praktyczny sposób obliczania wyznacznika stopnia 3 i nie przenosi się na wyznaczniki wyższych stopni. Z prawej strony macierzy dopisujesz jej dwie pierwsze kolumny, a następnie dodajesz iloczyny wzdłuż trzech przekątnych biegnących w dół i odejmujesz iloczyny wzdłuż trzech przekątnych biegnących w górę.

Dla macierzy

2  0  1
1  3  2
1  1  4

po dopisaniu dwóch pierwszych kolumn:

2  0  1 | 2  0
1  3  2 | 1  3
1  1  4 | 1  1
  • przekątne w dół: 2·3·4 + 0·2·1 + 1·1·1 = 24 + 0 + 1 = 25,
  • przekątne w górę: 1·3·1 + 2·2·1 + 0·1·4 = 3 + 4 + 0 = 7,
  • wyznacznik: 25 − 7 = 18.

Wzór ogólny dla macierzy z wierszami (a, b, c), (d, e, f), (g, h, i):

det = aei + bfg + cdh − ceg − afh − bdi

Macierz (1, 2, 3), (4, 5, 6), (7, 8, 9) daje wyznacznik 0, co zgadza się z faktem, że jej wiersze są liniowo zależne (trzeci wiersz to podwojony drugi minus pierwszy).

Własność mnożenia

Dla macierzy tego samego stopnia wyznacznik iloczynu jest iloczynem wyznaczników: det(AB) = det A · det B. Dla tych samych A i B: det A = −2, det B = 0·2 − 1·5 = −5, a det(AB) = 10·11 − 5·20 = 10, czyli (−2)·(−5) = 10.

Macierz odwrotna 2×2

Macierz kwadratowa A jest odwracalna, jeśli istnieje macierz B taka, że AB = BA = I. Macierz B nazywa się wtedy macierzą odwrotną do A i zapisuje A⁻¹. Dla macierzy nad ciałem liczb rzeczywistych macierz jest odwracalna wtedy i tylko wtedy, gdy jej wyznacznik jest różny od zera.

Dla macierzy 2×2 z elementami a, b, c, d i wyznacznikiem D = ad − bc ≠ 0:

A⁻¹ = 1/D · (  d  -b )
            ( -c   a )

Przykład: A = [[2, 1], [5, 3]]. Wyznacznik D = 2·3 − 1·5 = 1, więc

A⁻¹ =  3  -1
      -5   2

Sprawdzenie mnożeniem: A · A⁻¹ daje macierz jednostkową [[1, 0], [0, 1]]. Dla A = [[1, 2], [3, 4]] wyznacznik wynosi −2, więc A⁻¹ = −1/2 · [[4, −2], [−3, 1]] = [[−2, 1], [3/2, −1/2]]; mnożenie A · A⁻¹ również daje macierz jednostkową.

Sprawdzenie obliczeń w Pythonie

Wszystkie przykłady powyżej da się sprawdzić własnymi funkcjami, bez zewnętrznych bibliotek. Ułamki obsługuje moduł fractions, który podaje wyniki dokładnie.

from fractions import Fraction as F

def dodaj(A, B):
    return [[a + b for a, b in zip(r, s)] for r, s in zip(A, B)]

def mnoz(A, B):
    return [[sum(A[i][k] * B[k][j] for k in range(len(B)))
             for j in range(len(B[0]))] for i in range(len(A))]

def det2(M):
    return M[0][0] * M[1][1] - M[0][1] * M[1][0]

def det3(M):
    (a, b, c), (d, e, f), (g, h, i) = M
    return a*e*i + b*f*g + c*d*h - c*e*g - a*f*h - b*d*i

def odwrotna2(M):
    D = det2(M)
    return [[F(M[1][1], D), F(-M[0][1], D)],
            [F(-M[1][0], D), F(M[0][0], D)]]

A = [[1, 2], [3, 4]]
B = [[0, 1], [5, 2]]
print(dodaj(A, B))                  # [[1, 3], [8, 6]]
print(mnoz(A, B))                   # [[10, 5], [20, 11]]
print(mnoz(B, A))                   # [[3, 4], [11, 18]]
print(det2(A))                      # -2
print(det3([[2, 0, 1], [1, 3, 2], [1, 1, 4]]))   # 18
print(odwrotna2([[2, 1], [5, 3]]))  # [[3, -1], [-5, 2]]
print(det2(mnoz(A, B)), det2(A) * det2(B))        # 10 10

Uruchomienie tego kodu daje wyniki zapisane w komentarzach (odwrotna macierz zwracana jest jako obiekty Fraction, np. Fraction(3, 1) dla liczby 3). Przy dłuższych obliczeniach warto skorzystać z biblioteki do obliczeń numerycznych, ale do zrozumienia reguł własne funkcje wystarczą.

Najczęstsze błędy

Przesuń tabelę, aby zobaczyć wszystkie kolumny →

BłądPoprawnie
Mnożenie macierzy element po elemencieElement wyniku to suma iloczynów wiersza i kolumny
Założenie, że AB = BAMnożenie macierzy nie jest przemienne
Użycie reguły Sarrusa dla macierzy 4×4Reguła dotyczy wyłącznie wyznaczników stopnia 3
Pomylenie znaków w regule SarrusaTrzy iloczyny w dół ze znakiem plus, trzy w górę ze znakiem minus
Szukanie odwrotności przy wyznaczniku 0Macierz o zerowym wyznaczniku nie ma odwrotnej
Zamiana miejsc a i d bez zmiany znaków b i cWe wzorze na odwrotność zamienia się a z d, a b i c zmieniają znak

Zobacz też: Układ równań.

Najczęstsze pytania (FAQ)

Czym jest wyznacznik macierzy?

To liczba przypisana macierzy kwadratowej. Dla macierzy 2×2 to ad − bc, dla 3×3 liczy się go regułą Sarrusa lub innymi metodami. Zerowy wyznacznik oznacza, że macierz nie ma odwrotnej.

Jak pomnożyć dwie macierze?

Sprawdź, czy liczba kolumn pierwszej macierzy równa się liczbie wierszy drugiej. Jeśli tak, element wyniku w wierszu i oraz kolumnie j to suma iloczynów kolejnych elementów i-tego wiersza pierwszej macierzy i j-tej kolumny drugiej.

Czy mnożenie macierzy jest przemienne?

Nie. Dla A = [[1, 2], [3, 4]] i B = [[0, 1], [5, 2]] iloczyn AB to [[10, 5], [20, 11]], a BA to [[3, 4], [11, 18]].

Czy regułę Sarrusa można stosować dla macierzy 4×4?

Nie. Reguła Sarrusa dotyczy wyznaczników stopnia 3. Dla większych macierzy stosuje się inne metody, np. rozwinięcie Laplace’a.

Kiedy macierz ma macierz odwrotną?

Gdy jest kwadratowa i jej wyznacznik jest różny od zera. Dla macierzy 2×2 odwrotność to 1/(ad − bc) razy macierz z zamienionymi a i d oraz zmienionymi znakami b i c.

Czy mogę dodać macierze o różnych wymiarach?

Nie. Dodawanie wykonuje się element po elemencie, więc obie macierze muszą mieć ten sam wymiar.

← Więcej: Studia