Co zawiera?

Wstęp - podstawy o macierzach

MATrix LABoratoty jest programem w którym większość operacji wykonuje się na macierzach. Dlatego też w pierwszej kolejności należy nauczyć się jak zapisywać macierze, oraz jakie działania można na nich wykonywać.

Macierz zapisujemy w nawiasach kwadratowych [ ], oddzialając średnikiem wiersze, a spacją lub przecinkiem wyrazy w wierszu. Zatwierdzamy poprzez enter.

A = [1 2 4; 2 6 7; 3 5 1] %zapis macierzy A (w ten sposób w MATLABie zapisuje się komentarz)

A =

1___2___4
2___6___7
3___5___1
%odpowiedź - macierz A

O = inv(A) %komenda wyznaczająca macierz odwrotną O macierzy A

O =

1.2609 __-0.7826__ 0.4348
-0.8261__0.4783 __-0.0435
0.3478 __-0.0435__-0.0870
%odpowiedź - macierz O

T = A' %komenda zamieniająca wiersze z kolumnami macierzy A, czyli wyznaczająca macierz transponowaną D macierzy A

T =

1 __2 __3
2 __6__ 5
4 __7 __1
%odpowiedź - macierz T

Operacje matematyczne na macierzach

Operacja matematyczna
Objaśnienie
A + B
Dodawanie macierzy A do B, obydwie macierze muszą posiadać te same wymiary

Można dodać wielkość skalarną do dowolnej macierzy

A - B
Odejmowanie macierzy A do B, obydwie macierze muszą posiadać te same wymiary

Od dowolnej macierzy można odjąć wielkość skalarną

A * B

Mnożenie macierzy A przez B. Liczba kolumn macierzy A musi być równa liczbie wierszy macierzy B.

Można mnożyć macierz przez skalar. Wtedy każdy element macierzy zostaje przemonożony przez skalar.

A .* B
Mnożenie odpowiednich elementów macierzy A i macierzy B. Macierze A i B muszą mieć ten sam wymiar
A / B
Mnożenie macierzy A przez macierz odwrotną B (macierz odwrotna to inv(B)), aby wykonać taką operację macierz B musi być macierzą kwadratową)
A ./ B
Mnożenie poszczególnych elementów macierzy A i macierzy odwrotnej B. A i B muszą mieć te same wymiary.
A \ B
Mnożenie macierzy odwrotnej A przez macierz B
A .\ B
Mnożenie poszczególnych elementów macierzy odwrotnej A i macierzy B. A i B muszą mieć te same wymiary.
A ^ p
Podniesienie macierzy A do potęgi p, np.: A^2 = A*A
A .^ p
Podniesienie do potęgi p każdego elementu macierzy A

Wektory

Wektory tworzymy tak samo jak macierze. Wektor poziomy N = [2 4 8] oddzielając wyrazy w wierszu spacją, natomiast pionowy M = [2; 4; 8] oddzialając wyrazy średnikiem

Można również wygenerować wektor:

- podając pierwszy i ostatni element oraz wartość skoku. X = [1:0.5:4]

- wykorzystując funkcję linspace: Y = linspace(3,14,17). Wektor Y będzie zawierać 17 elementów od jedynki do czternastki z odstępami liniowymi

- wykorzystując funkcję logspace: Z = logspace(1,2,8). Wektor Z będzie zawierać 8 elementów od 10^1 do 10^2 z odstępami logarytmicznymi.

Macierze

1. 'Wyciąganie' fragmentów macierzy

Gdy mamy macierz A, która składa się z N wierszy i M kolumn, możemy wyciągać z niej interesujące nas fragmenty:

- pojedynczy wyraz a35 = A(3,5) %z trzeciego wiersza w piątej kolumnie

- wiersz N = A(4,1:M) %cały czwarty wiersz

- kolumnę M = A(1:N,7) %cała siódma kolumna

- fragment macierzy B = A(1:4,3:6) %wiersze od 1 do 4 oraz kolumny od 3 do 6

2. Generowanie macierzy

Komendą zeros(n,m) wygenerujemy macierz, o n wierszach i m kolumnach, składającą się z samych zer. Komendą ones(n,m) wygenerujemy macierz n x m składającą się z jedynek. Komendą rand(n,m) wygenerujemy macierz o wyrazach podlegających rozkładowi jednostajnemu. Komendą randn(n,m) wygenerujemy macierz o wyrazach podlegających rozkładowi normalnemu.

3. Jeszcze jeden sposób na skonstruowanie macierzy - 'sklejanie'

A = [2 4 6 ; 2 8 1];%wprowadzamy macierz A - dwa wiersze i trzy kolumny

B = [3 ; 5]; %wprowadzamy macierz B - dwa wiersze i jedna kolumna

C = [3 5 1 9 ; 2 6 1 9 ]; %wprowadzamy macierz C - dwa wiersze i cztery kolumny

D = [A B ; C] %konstruujemy macierz D

D =

2 __4 __6__ 3
2__ 8__ 1__ 5
3 __5__ 1__ 9
2 __6__ 1__ 9
%odpowiedź - macierz D

Komendą E = sum(D) możemy zsumować wyrazy w kolejnych kolumnach macierzy D. Otrzymamy wtedy wektor E = [9 23 9 26].

Gdy chcemy usunąć drugą kolumnę z macierzy D, piszemy: D(:,2)=[ ], jeśli chcemy usunąć trzeci wiersz D(3,:)=[ ].

4. Obliczanie wyznaczników, wyznaczenie równania własnego oraz wartości własnych macierzy

Do wyliczenia wyznacznika gółwnego macierzy służy komenda det

W = det(D) %obliczamy wyznacznik macierzy D

W = - 270 %odpowiedź

Do tego aby wyznaczyć równanie charakterystyczne macierzy D, musimy najpierw macierz D przedstawić jako obiekt symboliczny - to tego służy komenda sym, a następnie wykorzystać komendę poly

R = poly(sym(D)) %wyznaczamy równanie charakterystyczne

R = x^4-20*x^3+49*x^2+81*x-270 %odpowiedź

v = eig(D) %wyznaczamy wartości własne macierzy D.

v =

16.8663
-2.1444
2.6390 + 0.7075i
2.6390 - 0.7075i
%odpowiedź