Professional Documents
Culture Documents
Ort LV0
Ort LV0
Ort LV0
Uvod
Za primjer, radna povrina na slici rasporeena je tako da je uz Command Window na desnoj strani smjeten
prozor sa sadrajem trenutno otvorene mape (foldera) na disku, a na lijevoj strani prozor sa popisom trenutno
definiranih varijabli (Workspace) te popis svih prethodno unesenih naredbi (Command History).
1.2. Unos osnovnih naredbi i izraza
Za unos i izraun jednostavnog izraza, dovoljno je upisati izraz iza znaka ">>" i pritisnuti Enter. Npr.:
>> 15+30 (pritisnuti enter)
ans =
45
Matematike izraze potrebno je formatirati slino notaciji programskog jezika C, tako da e npr. izraz:
2 6
2
7 + (8 + 9 )
2
8
8
8
double array
double array
double array
% brise varijable
% nece vratiti nista, jer smo upravo pozvali naredbu "clear"
Iz gornjeg je vidljivo da Matlab sve skalarne varijable tretira kao polje dimenzija 1x1, to e biti detaljnije
objanjeno u nastavku teksta. Znak "%" oznaava komentar, pa Matlab zanemaruje sve znakove koji slijede u
tog liniji.
Za pomo oko koritenja odreene naredbe, koristi se naredba HELP:
>> help sqrt
SQRT
Square root.
SQRT(X) is the square root of the elements of X. Complex
results are produced if X is not positive.
Detaljan ispis funkcija koje sadri pojedini toolbox, takoer se dobiva naredbom HELP, npr.:
Ovako definirana varijabla a predstavlja vektor sa jednim redom i tri stupca, koja ine elementi 1, 2 i 3.
Prilikom upisa matrice, novi redak se definira pomou znaka ";":
>> b = [1 2 3; 4 5 6]
b =
1
4
2
5
3
6
2
5
3
6
Transponiranje matrice (zamjena dimenzija) radi se pomou operatora " ' ", npr. (za prethodno definiranu
matricu b):
>> b'
ans =
1
2
3
4
5
6
Unos dugakih nizova brojeva olakan je upotrebom operatora ":". Npr. za kreiranje vektora koji sadri jedan
red sa brojevima od 0 do 10 dovoljno je upisati:
4
5
6
5
6
7
6
7
8
10
2
3
4
3
4
5
% [0.0
% [1.0
0.1
0.9
0.2
0.8
0.3
0.7
0.4
0.6
0.5
0.5
...
...
0.8
0.2
0.9
0.1
1.0]
0.0]
Za definiranje linearnih nizova moe se koristiti i naredba linspace, dok analogno tome naredba logspace
stvara logaritamski niz:
>> a = linspace(0,5,100);
>> b = logspace(0,5,100);
%
%
%
%
b = [6 4 2; 2 1 3];
ans =
7
6
6
6
5
9
Za mnoenje dvaju matrica, mora biti zadovoljen uvjet da je broj redova desne matrice jednak broju stupaca
lijeve matrice:
>> a = [1 2 3
4 5 6];
>> b = [4 3
2 3
7 5];
>> c = a*b
c =
29
68
24
57
Ponekad e, meutim, biti korisno meusobno pomnoiti elemente dvaju matrica (ili vektora) istih dimenzija.
U tom sluaju koristi se operator ".*":
ans =
1
>> X = A \ B
dok e se kod izraza
>> X = B / A
tj. vektor vrijednosti od 0 do 3.14 u razmacima od 0.01, tada je mogue izraunati funkciju:
y = f (t ) = sin(t )
na slijedei nain:
>> y = sin(t);
Varijabla y bit e vektor jednakih dimenzija kao t, sastavljen od lanova koji ine sinusnu funkciju pojedinih
lanova vektora t.
Ovdje je potrebno obratiti panju da e kod mnoenja i dijeljenja i dalje vrijediti gore objanjena pravila za
matrini produkt. Npr., ako bismo eljeli prikazati slijedeu funkciju:
y = f (t ) = t sin 2 (t )
moramo mnoiti vektore koritenjem operatora ".*", odnosno potencirati pomou ".^":
Ako je prozor sa slikom ve otvoren, slijedee pozivanje naredbe plot izbrisat e prethodnu sliku i nacrtati novu
u istom prozoru. Za crtanje vie grafova u istom prozoru koristi se naredba hold:
>> plot(t, sin(t));
>> hold on;
>> plot(t, cos(t));
% crta 1. graf
% zadrava prethodni graf kod slijedeeg plot-a
% crta 2. graf
1.8. M-funkcije
Uz interne funkcije i toolbox-e, Matlab omoguuje pisanje korisnikih funkcija i skripti. Skripte se sastoje od
niza naredbi i izraza snimljenih u datoteku. Pozivanjem skripte, Matlab izvodi naredbu za naredbom na isti
nain na koji bi ih izvodio prilikom pojedinanog unosa direktno u Command Window. Kod potrebe za unosom
U m-editoru, naredbe se piu na isti nain kao i u Command Window. Testiranje, odnosno pokretanje skripte
moe se iz m-editora izvriti kliktanjem na naredbu "Save and Run" (oznaeno crvenim krugom na slici):
Nakon to je skripta sauvana na disk, moe se pokrenuti iz trenutno aktivne mape upisivanjem naziva
datoteke u Command Window:
>> test
Za potrebe ovih laboratorijskih vjebi, rjeenja zadataka pisat e se u skripte, tako da se izraun moe lako
ponoviti.
1.9. Literatura
Prethodna poglavlja ukratko opisuju osnove rada s Matlab-om, dovoljne za upoznavanje s alatom i nainima
upotrebe. Detaljni uvid u naredbe i koritenje Matlab-a moete dobiti iz materijala prof. dr. sc. eljka Bana sa
Fakulteta Elektrotehnike i raunarstva u Zagrebu. Skripte se mogu skinuti sa slijedeih linkova:
http://www.fer.hr/_download/repository/Osnove_matlaba.pdf
http://www.fer.hr/_download/repository/simbolic_toolbox.pdf
http://www.fer.hr/_download/repository/simulinkskripta.pdf
Koritenjem spomenute funkcije help, dobiva se opis i kratki primjer upotrebe za svaku funkciju Matlab-a.
2.
3.
Priprema za vjebu
Rad na vjebi
1. Pokrenuti Matlab.
4. Pomou naredbe edit, ili kroz alatni prozor Current Folder kako je prikazano na gornjoj slici, napraviti
novu skriptu oblika ImePrezime.m i spremiti ju u mapu E:\ORT\Vjezba0. Skripta ImePrezime.m
mora sadravati naredbe potrebne za dobivanje rezultata vjebe bez potrebe za korisnikom
interakcijom.
5. Izraunati vrijednost varijable
x=
6. Nai matricu
3
sin 2
7
x:
+ cos
1 5 6
21 27
A = 3 2 6 , B = 26 29 , A X = B
6 5 1
31 62
7. Za
"f(t), g(t)". Koritenjem naredbe title postavite naslov slike na "Slika 1.". Na kraju preko slike
prikaite mreu koritenjem naredbe grid.
4.
Izvjee sa vjebe