Uvod u Matlab Simic Seminarski

Embed Size (px)

Citation preview

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    1/14

    1

    SADRAJ:

    1.UVOD..2

    2.Sistem MATLAB a....................................................................................3

    3.Radno okruenje Matlab-a ......................................................................3

    4.Rad u komandnom prozoru.....................................................................5

    5.Aritmetike operacije...............................................................................5

    6.Formati prikaza rezultata........................................................................6

    7.Definisanje skalarnih promenljivih...........................................,..............7

    8.Dvodimenzionalni grafikoni.....................................................................7

    9.Neke grafike naredbe..8

    10.Ime svojstva i vrednost svojstva.........................................................10

    11.Komanda fplot.....................................................................................11

    12.Grafikon sa vie grafika......................................................................12

    ZAKLJUAK.....14

    LITERATURA15

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    2/14

    2

    1.UVOD

    Prva, izvorna verzija MATLAB-a, napisana je kasnih sedamdesetih, na univerzitetuNew

    Mexico i Stanford Univerzitetu, sa osnovnom namenom da slui kao pomonosredstvona kursevima iz linerarne algebre, i numerike analize. Zamiljeno je da ovajpaket bude nadgradnja FORTRAN-a koja bi koristila gotove potprograme FORTRAN-a.

    Dananje mogunosti MATLAB-a daleko prevazilaze tadanji originalni "MatrixLaboratory".Ogroman broj naunih i tehnikih disciplina neizostavno zahtevajukoritenje MATLAB-a.MATLAB pored svojih razvojnih i programabilnih mogunostiposeduje jojednu zaista monu alatku koja je jedna od osnovnih odlika ovog paketa.To su toolboxovi.Naime, vrlo jednostavno se u MATLAB-u mogu kreirati sopstvene

    funkcije koje daju rjeenjana postavljene zahtjeve. Skup ovako kreiranih funkcija (m-fajlova) objedinjenih u jednu celinu predstavlja osnovnu strukturu toolboxa. Toolboxovi

    dakako predstavljaju mnogo vie od kolekcije upotrebljivih fajlova, jer je u njima jedinjentrud velikih svjetskih istraitelja u raznim podrujima nauke. Matlab je vii programski

    jezik namenjen obradi podataka u formi matrica i brojeva. Sam naziv Matlab izveden je

    od MatrixLaboratory, ime se sugerie da su matrice osnovni entiteti za numerikeproraune. Zahvaljujui fleksibilnom okruenju, irokom spektru ugraenih funkcijakojima se efikasno dolazi do numerikih rijeenja, mogunou razvoja algoritama iprogramiranja, Matlab se nametnuo kao nezamjenjiv alat za rjeavanje problema u

    gotovo svim oblastima ininjerske prakse.

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    3/14

    3

    2.Sistem MATLAB a

    Sastoji se od pet glavnih celina:

    Razvojno okruenje - niz alata i mogunosti olakavaju upotrebu Matlab funkcija idatoteka.

    Biblioteka matematikih funkcija - elementarna i kompleksna aritmetika, sloenefunkcije, ...

    Programski jezik - Jezik visokog nivoa, sa kontrolom toka programa, funkcijama,strukturama podataka, ulazom/izlazom, objektnoorijentisano programiranje. Omoguavabrzo pisanje kratkih programa i kao sloenih aplikacija

    Upotreba grafike - 2D i 3D grafika visokog nivoa, analiza slike, animacije,prezentaciona grafika. Omoguava i rad sa grafikom na niskom nivou

    API (Application Program Interface) - omoguava pisanje C i Fortran programa kojikoriste Matlab: pozivanje rutina iz Matlaba, upotreba Matlab engine-a, itanje i pisanje udatoteke Matlab formata.

    3.Radno okruenje Matlab-a

    ine ga:

    komandni prozor (samo je jedan)

    nekoliko grafikih prozora

    korisnikov editor za pisanje M-skript datoteka

    Kom andni prozor

    je mesto gde se daju (kucaju) naredbe interpreteru i ispisuju rezultati

    sekvencijalno prihvata i izvrava naredbe poseduje linijski editor

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    4/14

    4

    Grafiki prozor

    obino prikazuje 2D i 3D dijagrame

    vie dijagrama se moe prikazati u razliitim prozorima i/ili se jedan

    prozor moe podeliti na nekoliko delova

    automatski se pojavljuje kod izvravanja grafikih naredbi

    sadraj prozora se moe odtampati na nekoliko naina

    Radno okruenje Matlab-a s

    Sastoji se od veeg broja prozora:

    Command Window(ranije komandni prozor)

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    5/14

    5

    Command History

    Launch Pad

    Help Browser

    Current Directory Browser

    Workspace Browser

    Array Editor

    Editor/Debugger

    4.Rad u komandnom prozoru

    Da bi se upisala komanda, kursor mora biti neposredno iza komandnog znaka (>>). Upisana komanda bie izvrena kada se pritisne Enter. Izvrava se samo poslednja

    upisana komanda. Sve prethodno izvrene komande ostaju nepromenjene. U isti red moe se upisati vie komandi ako se razdvoje zarezom. Kada se pritisne

    Enter, komande se redom izvravaju, sleva nadesno. Ne moete se vratiti u prethodni red komandnog prozora, izmeniti neto i zatim

    ponovo izvriti tako izmenjenu komandu. Pritiskom tastera iza komandnog znaka se prikazuje prethodna komanda. Tako

    ispisana komanda se moe izmeniti i ponovo izvriti. Strelicom nadole redom seprikazuju sve prethodno upisane komande. Ako je komanda predugaka da bi stala u jedan red, upiite tri take i pritisnite

    Enter. Nastavak komande piite u sledeem redu.

    Komanda se izvrava kada je upiete u komandni prozor i pritisnete Enter. I rezultatkomande se prikazuje u komandnom prozoru. Ukoliko na kraj komande upiete taku izarez, njen rezultat se nee prikazati. Ukoliko u isti red upiete vie komandi njihovirezultati se nee prikazati ako ih razdvojite znakovima taka i zarez. Znak % oznaavada je u pitanju komentar, i tako oznaeni redovi se ne izvravaju.

    5.Aritmetike operacije

    Operacija Simbol Primer

    Sabiranje + 5+3

    Oduzimanje - 5-3

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    6/14

    6

    Mnoenje * 5*3

    Deljenje zdesna / 5/3

    Deljenje sleva \ 5/3=3\5

    Stepenovanje ^ 5^3=5

    Najvei prioritet imaju zagrade, zatim stepenovanje, mnoenje i deljenje pa sabiranje ioduzimanje. Ako dve ili vie operacija imaju isti prioritet, izraz se izraunava slevaudesno.

    6.Formati prikaza rezultata

    Korisnik moe da izabere format kojim e rezultat biti prikazan na ekranu. Izlazni formatse zadaje komandom format. Koriste se sledei formati:

    Komanda Opis Primer

    format short fiksni zarez sa etri decimale 41.4286

    format long fiksni zarez sa 14 decimala 41.42865247894578

    format short e nauna notacija sa 4 decimale 4.1429e+001

    format long e nauna notacija sa 15 decimala 4.142865247894578e+001

    format short g pet cifara sa fiksnim ili pokretnim zarezom 41.429

    format long g 15 cifara sa fiksnim ili pokretnim zarezom 41.4286524789457

    format bank dve decimale 41.43

    format compact uklanja prazne redove

    format loose dodaje prazne redove

    Ugraene elementarne matematike funkcije

    Funkcija Opis Funkcija Opis

    sqrt(x) kvadratni koren factorial(x) x!

    exp(x) ex sin(x) sinus

    abs(x) apsolutna vrednost cos(x) kosinus

    log(x) logaritam sa oanovom e tan(x) tangens

    log10(x) logaritam sa osnovom 10 cot(x) kotanges

    Inverzne trigonometrijske funkcije su asin(x), acos(x), atan(x) i acot(x).

    Funkcije zaokruivanja:

    Funkcija Opis Primer

    round(x) zaokruivanje na najblii ceo broj round (17/5)=3

    fix(x) zaokruivanje nanie fix(13/5)=2

    ceil(x) zaokruivanje navie ceil(11/5)=3

    floor(x) zaokruivanje na najblii manji ceo broj floor(9/4)=2

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    7/14

    7

    rem(x,y) ostatak deljenja x sa y rem(13,5)=3

    sign(x) vrednost 1 za x>0, -1 za x

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    8/14

    8

    ezsurf naredba za lagano crtanje standardnih povriplot3 crta krive u 3D prostoru

    Komanda plot

    Najjednostavniji oblik komande je:plot(x,y).

    Argumenti x i y su vektori. Oba vektora moraju imati jednak broj elemenata.

    Izvravanjem ove komande nastaje slika u grafikom prozoru. Ako nije otvoren, grafikiprozor se automatski otvara nakon izvrenja komande. Slika sadri jednu krivu sa xvrednostima na apscisi i y vrednostima na ordinati. Kriva se sastoji od pravolinijskih

    segmenata koji povezuju take ije su koordinate definisane elementima vektora x i y.

    >> %Primer izrade grafikona

    >> x=[1 2 3 5 7 7.5 8 10];

    >> y=[2 6.5 7 7 5.5 4 6 8];

    >> plot(x,y)

    Komanda plot ima opcione argumente za zadavanje boje i stila linije, boje i vrste

    markera. Sa tim opcijama, komanda izgleda ovako:

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    9/14

    9

    plot(x,y,oznaka linije,ImeSvojstva,VrednostSvojstva)

    Oznake linija:

    - puna linija (podrazumevana)-- isprekidana

    : takasta

    -. crta-taka

    Oznake boje linija:

    r crvena

    g zelena

    b plava

    c cijan

    m magenta

    y uta

    k crna

    w bela

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    10/14

    10

    Oznake linija treba pisati kao znakovni niz unutar komande plot. Redosled oznaka je

    proizvoljan. Oznake linija su opcione.

    >> plot(x,y,'r') take povezuje puna crvena linija

    >> plot(x,y,'--y') take povezuje uta isprekidana linija>> plot(x,y,'*') takesu ozbaene zvezdicama, a nisu povezane linijama

    >> plot(x,y,'g:d') zelena takasta linija povezuje take oznaene markerima u oblikuromba

    10.Ime svojstva i vrednost svojstva

    Ime svojstva se pie kao znakovni niz iza kojeg sledi zarez i vrednost svojstva, sveunutar komandeplot.

    Ime svojstva Opis Mogue vrednosti svojstva

    LineWidth(linewidth)Deljina linije Broj izraen u takama (default

    0.5)

    MarkerSize(markersize) Veliina markera Broj izraen u takama

    MarkerEdgeColor(markeredgecolor)Boja markera ili boja ivice za

    popunjene markere

    Oznake boja iz prethodnih opisa,

    napisane kao znakovni niz

    MarkerFaceColor(markerfacecolor)Boja popune za popunjene

    markere

    Oznake boja iz prethodnog opisa,

    napisane kao znakovni niz

    Imena svojstava za oznake linija su:

    Oznaka Ime svojstva Mogue vrednosti svojstva

    Line Style LinestyleOznaka stila linije iz navedene

    tabele, napisana kao znakovni niz

    Line Color ColorOznaka boje linjie iz navedene

    tabele, napisana kao znakovni niz

    Marker MarkerOznaka oblika markera iz navedene

    tabele, napisana kao znakovni niz

    Komanda plot moe biti napisana u komandnom prozoru ili u skript datoteci.Grafikoni se mogu crtati za date podatke ili za funkcije. Prvi grafikon je nacrtan za date

    podatke. Evo primera grafikona funkcije pomou skript datoteke:

    %Grafik funkcije

    x=[-2:0.01:4];

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    11/14

    11

    y=3.5.^(-0.5*x).*cos(6*x);

    plot(x,y)

    Iz komandnog prozora izvravamo datoteku navoenjem njenog imena i dobijamo grafik

    funkcije:

    11.Komanda fp lo t

    Ova komanda iscrtava funkcije oblika y=f(x) u datim granicama x i y ose (opciono):

    fplot(funkcija,granice,oznake linije)

    Funkciju moete upisati neposredno u komandu kao znakovni niz. Na primer za funkcijuf(x)=8x2+5cos(x) treba upisati 8*x^2+5*cos(x). Funkcija ne sme da sadri prethodno

    definisane prpomenljive.

    Granice su vektor [xmin,xmax] od dva elementa koji zadaju domen x ili vektor s 4

    elementa [xmin,xmax,ymin,ymax] koji zadaju domen x i domen y.

    Oznake linije su iste kao i u komandi plot.

    Primer:

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    12/14

    12

    fplot('x^2+4*sin(2*x)-1',[-3,3])

    12.Grafikon sa vie grafika

    Komanda plot

    Nacrtae onoliko grafika koliko parova vektora upiete u komandu. Komandaplot(x,y,u,v,t,h) nacrtae tri grafika: y u zavisnosti od x, v u zavisnosti od u i h uzavisnosti od t, sve na istom grafikonu. Automatski se crtaju grafici razliitih boja. Poslesvakog para vektora moete dodati oznaku linije tog grafika:plot(x,y,-b,u,v,r,t,h,g:).

    Komande holdoni holdoff

    Da bi se nacrtali grafici pomou ovih komandi potrebno je prvo nacrtati jedangrafik komandom plot. Zatim se upie komanda hold on. Time se ostavlja otvorenprozor s prvim grafikom, zajedno sa svojstvima osa i formatiranjem, ako ih je bilo.

    Sledee upisane komande plot nacrtae nove grafike na istoj slici. Postupak dodavanjagrafika se prekida komandom holdoff.

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    13/14

    13

    Komanda l ine

    Ovom komandom dodajemo grafike na postojei grafikon. Oblik komande:

    line(x,y,ImeSvojstva,VrednostSvojstva)

    Na primer:

    line(x,y,linestyle,- -,color,r,marker,o)

    postojeem grafikonu dodaje isprekidanu crvenu liniju sa krunim markerima. Glavnarazlika izmeu komandi line i plotje u tome to plot otpoinje novi grafikon svaki putkada se pokrene, dok line dodaje linije postojeem grafikonu. Najpre se komandomplot

    nacrta prvi grafik, a zatim komandom line dodaju novi.

    Formatiranje grafikona

    Grafikoni se mogu formatirati komandama koje slede komandama plot i fplot, ili

    pomou editora grafikona u grafikom prozoru. Prvi nain je pogodan kad je komandaukljuena u skript datoteku. Formatiranje u edotiru vai samo za taj grafikon i mora se

    ponavljati svaki put kad se nacrta grafikon.

    Komande xlabeli ylabel

    Slue za stavljanje natpisa na ose:

    xlabel(tekst kao znakovni niz); ylabel(tekst kao znakovni niz)

    Komanda t i t ledodaje naslov: title(tekst kao znakovni niz).

    Komande texti gtext smetaju natpis na grafikon: text(x,y,tekst kao znakovni niz);gtext(tekst kao znakovni niz). Komanda textsmeta tekst na grafik i to tako da njegovprvi znak bude na mestu ije su koordinate x i y. Gtext smeta tekst na mesto kojekorisnik naknadno sam odredi, jer se otvara grafiki prozor u kome moe da se zadamesto natpisa.

  • 7/30/2019 Uvod u Matlab Simic Seminarski

    14/14

    14

    Komanda legendpostavlja legendu na grafikon. Legenda prikazuje uzorak linije kojom

    je iscrtan svaki grafik i pored njega natpis koji zadaje korisnik. Oblik komande je:

    legend(znakovni niz1,zbakovniniz2,...,pol). Znakovni niz je natpis koji se postavlja

    pored uzorka linije. Redosled natpisa odgovara redosledu izrade grafika. pol je opcioni

    broj kojim se zadaje poloaj legende na slici.

    ZAKLJUAK:

    MATLAB je programski jezik koji je vrlo rasprostranjen u inenjerskoj struci. Po nekim

    podacima aktivno ga koristi preko million korisnika. Iako na prvi pogled vrlo sloen akose uenju pristupi na pravi nain vidi se sva njegova vrednost .U vreme velike tehnikotehnoloke konkurencije,znanje programskog jezika MATLAB a moe nam umnogome pomoi u reavanju raznih problema poev od matematikih pa do obradeslike I zvuka.