Nakon pokretanja programa otvara se Matlabov prozor. Uočavamo znak (prompt) >>, gdje unosimo naredbe.
Matrice
Matricu unosimo u Matlab naredbom:
>>A=[3 2 4;1 5 0]
A =
3 2 4
1 5 0
Element u drugom retku, drugom stupcu možemo dobiti naredbom
>>A(2,2)
ans =
5
Cijeli stupac ili redak možemo dobiti upotrebom operatora dvotočka:
>>A(1,:)
ans =
3 2 4
>>A(:,3)
ans =
4
0
Naredba size daje nam dimenzije matrice
>>size(A)
ans =
2 3
Osnovne operacije s matricama
>>A=[2 1;3 4]
A =
2 1
3 4
>>B=[ 2 3; 3 1/2]
B =
2.0000 3.0000
3.0000 0.5000
Zbrajanje matrica | + | A+B | ans=
|
|||||
Oduzimanje matrica | - | A-B | ans=
|
|||||
Množenje matrica | * | A*B | ans=
|
|||||
Desno dijeljenje matrica | / | A/B | ans=
|
|||||
Lijevo dijeljenje matrica | \ | A\B | ans=
|
|||||
Potenciranje matrica | ^ | A^B | ans=
|
|||||
Transponiranje matrica | ' | A' | ans=
|
|||||
Množenje elemenata dviju matrica član po član | .* | A.*B | ans=
|
|||||
Desno dijeljenje elemenata dviju matrica član po član | ./ | A./B | ans=
|
|||||
Lijevo dijeljenje elemenata dviju matrica član po član | .\ | A.\B | ans=
|
|||||
Potenciranje elemenata dviju matrica član po član | .^ | A.^B | ans=
|
Posebne matrice
Jediničnu matricu stvaramo naredbom eye:
>>eye(3)
ans =
1 0 0
0 1 0
0 0 1
Nul-matricu generiramo naredbom zeros:
>>zeros(3)
ans =
0 0 0
0 0 0
0 0 0
Matricu punu jedinica stvaramo naredbom ones:
>>ones(3)
ans =
1 1 1
1 1 1
1 1 1
Slučajnu matricu generiramo pomoću funkcije rand:
>>A=fix(rand(3)*10)
A =
4 2 0
8 6 6
5 8 3
Osnovne matrične funkcije:
diag(A) – vraća vektor čiji su elementi dijagonalni elementi matrice A
>>diag(A)
ans =
4
6
3
Provjeriti šro je diag(diag(A)).
rank(A) – računa rang matrice A
>>rank(A)
ans =
3
sum(A) – vraća vektor čiji su elementi sume stupaca matrice A
>>sum(A)
ans =
17 16 9
prod(A) - vraća vektor čiji su elementi umnošci elemenata stupaca matrice A
>> prod(A)
ans =
160 96 0
det(A) – računa determinatnu matrice:
>> det(A)
ans =
-108
inv(A) – računa inverznu matricu matrice A
>> inv(A)
ans =
0.2778 0.0556 -0.1111
-0.0556 -0.1111 0.2222
-0.3148 0.2037 -0.0741
Stapanje matrica
Često je potrebno iz manjih matrica napraviti veće. Npr, iz matrica i želimo dobiti matricu .
>>A=[1 3;2 4]
A =
1 3
2 4
>>B=[0;5]
B =
0
5
>>C=[A B]
C =
1 3 0
2 4 5
Zadaci
a) Izračunati u Matlabu vrijednost tražene funkcije za zadani x:
f(x)=(x+1)0.5 , x=5
f(x)=(x+1)1/3 , x=6
f(x)=1/(4-x2) , x=7
f(x)=sqrt(x2-2) , x=8
f(x)=(-cos(x)/(3*sin2(x)))+4/3*ctg(x) , x=14
b) Napisati naredbe u Matlabu koje rade slijedeće:
1. Kreirati jednostupčanu matricu A s elementima –10, -8, -6, ..., 6, 8, 10.
2. Kreirati vektor B čiji su elementi kosinusi ekvivalentnih elemenata vektora A
3. Kreirati vektor C čiji su elementi redom umnošci ekvivalentnih elemenata vektora A i B
4. Kreirati matricu D čiji će stupci biti redom vektori A, B i C
5. Kreirati matricu E čiji su reci redom 2., 5., 10. i 8. redak matrice D
c) Napisati naredbe u Matlabu koje rade slijedeće:
1. Kreirati jednorednu matricu A s 10 elemenata od 0 do 4 (funkcija linspace)
2. Kreirati jednorednu matricu B s elementima 1..10.
3. Kreirati vektor C čiji su elementi vrijednost funkcije f(x,y)=2x-3y, ukoliko za varijablu x uzimamo podatke iz vektora A, a za varijablu y podatke iz vektora B.
4. Kreirati matricu D čiji su reci vektori A, B i C zaokruženi pomoću funkcije fix.
5. Kreirati matricu E čiji su stupci 6., 5, i 3. stupac matrice D.
6. Izračunati determinantu matrice E.
7. Kreirati matricu F čiji kojoj je prvi redak glavna dijagonala matrice E, drugi redak suma članova ekvivalentnih stupaca matrice E i treći redakt produkt članova ekvivalentnih stupaca matrice E.
d) Pomoću matrice
A=
2 | 1 |
-1 | -5 |
i funkcija ones, zeros i eye kreirati matricu
0 | 0 | 2 | 1 | 1 | 0 |
0 | 0 | -1 | -5 | 0 | 1 |
4 | 2 | 5 | 5 | -2 | -1 |
-2 | -10 | 5 | 5 | 1 | 5 |
3 | 2 | 0 | 0 | 1 | 1 |
0 | -4 | 0 | 0 | 1 | 1 |