Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

MATLAB

MATLAB je okruenje za numerike proraune i


programski jezik etvrte generacije koji je razvila firma - MATLAB
MathWorks. MATLAB omoguava lako manipulisanje
matricama, prikazivanje funkcija i fitovanje, implementaciju
algoritama, stvaranje grafikog korisnikog interfejsa kao i
povezivanje sa programima pisanim u drugim jezicima meu
Prvobitni MathWorks
kojima su C, C++, C#, Java, Fortran i Python.
autor(i)
MATLAB je nastao kao skraenica za MATrix Prva verzija 1970ih
LABoratory (laboratorija za matrice). Izumeo ga je
Najnovija R2017a
kasnih 1970ih Kliv Moler (engl.- Cleve Moler), ef katedre
za informatiku na Univerzitetu Novi Meksiko. verzija 9. mart 2017.

Pisano u C, C++, Java


Iako je MATLAB namenjen za numerike proraune ali
opciona kutija za alat koristi MuPAD raunarski algebarski OS Vieplatformski
sistem ime se dobija pristup simbolikom raumanju. Tip Tehniko raunarstvo
MATLAB je mogue nabaviti zajedno sa Simulinkom kao i Licenca Vlasnika
brojnim dodacima.
Veb-sajt MATLAB
Dodaci su svrstani po sledeim kategorijama:

Matematika i optimizacija
Statistika i analiza podataka
Kontrola i analiza sistema
Procesiranje signala i komunikacija
Obrada slike
Test i mjerenja
Finansijsko modelovanje i analiza
Povezivanje sa drugim aplikacijama
Povezivanje baza podataka i izvjetavanje
Distribuirano raunanje

2004. godine procenjeno je da preko milion ljudi zapoljenih u industriji i na univerzitetima koristi MATLAB.

1 Istorija
2 Sintaksa
2.1 Promenljive
2.2 Vektori i matrice
2.3 Strukture
2.4 Funkcije
2.5 Klase i objektno-orjentisano programiranje
3 Grafika i GUI(eng. graphical user interface)
4 Veza sa drugim jezicima
5 Licence
6 Alternative
7 Proirenje fajlova
7.1 Literarura
8 Spoljanje veze
Istorija
MATLAB je izumeo kasnih 1970ih Kliv Moler (engl.- Cleve Moler), ef katedre za informatiku na Univerzitetu
Novi Meksiko. On ga je dizajnirao da bi studenti dobili pristup LINPACK i ESPAC bibliotekama bez znanja
Fortrana. Matlab se ubrzo proirio na druge univerzitete i dobio veliku podrsku od strane ljudi koji se bave
primenjenom matematikom. Inenjer Dek Litl (engl. -Jack Little) je u Molnerovoj poseti Stendford
Univerzitetu 1983. uvideo komercijalni potencijal MATLABa. On se udruio sa Molnerom i Stivom Bangertom
(engl.- Steve Bangert) i preradio MATLAB u C programskom jeziku. Zajedno su 1984. osnovali kompaniju
MathWorks. Matlab je ponovo preraen 2000. godine za laki rad sa matricama.

Sintaksa
MATLAB aplikacija je napravljena oko MATLAB skriptnog jezika. MATLAB aplikacija se najee koristi
kao interfejs za izvravanje fajlova u MATLAB programskom jeziku.

Promenljive

Promenljive se definiu pomou opratora, =. Promenljive mogu da se definiu bez da im se deklarie tip, osim
ukoliko su promenljive simboliki objekti, i njihov tip moe da se promeni. Vrednosti promenljivih mogu da se
dodeljuju konstantama, izrazimq u kojima figurisu druge promenljive i od funkcijama. Na primer:

>> x = 17
x =
17

>> x = 'hat'
x =
hat

>> y = x + 0
y =
104 97 116

>> x = [3*4, pi/2]


x =
12.0000 1.5708

>> y = 3*sin(x)
y =
-1.6097 3.0000

Vektori i matrice

Niz se definie korienjem tri vrdnosti izmeu kojih se nalazi dvotaka: init:increment:terminator. Na primer:

>> array = 1:2:9


array =
1 3 5 7 9

definie promenljivu array (ili dodeljuje novu vrednost promenljivoj array) koja je niz koji se sastoji od
brojeva 1, 3, 5, 7 i 9. Odnosno, niz poinje od 1 (init vrednost), svaki put se vrednost poveava za 2(increment
vrednost) , i prestaje kad dostigne 9(terminator vrednost).

>> array = 1:3:9


array =
1 4 7

increment vrednost moe da se izostavi i tada se korisi 1 kao podrazumevana vrednost.


>> ari = 1:5
ari =
1 2 3 4 5

dodeljuje promenljivoj ari niz vrednosti 1, 2, 3, 4 i 5, poto je podrazumevana vrednost za inkrement 1.


Matrice mogu da se definiu odvajanjemelemenata jednog reda razmakom ili takom i korienjem taka
zareza da se prekine red. Na poetku i na kraju treba da stoje uglaste zagrade: []. Zagrade: () se koriste za
pristup elementima podniza (takoe se koriste za argumente funkcije).

>> A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1]


A =
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1

>> A(2,3)
ans =
11

Jedinina matrica veliine n moe da se generi funkcijom eye, i matrice bilo koje veliine sa samo nulama i
jedinicama mogu da se generiu funkcijama zeros i ones, redom.

>> eye(3,3)
ans =
1 0 0
0 1 0
0 0 1

>> zeros(2,3)
ans =
0 0 0
0 0 0

>> ones(2,3)
ans =
1 1 1
1 1 1

Veina MATLAB funkcija prihvata matrice i izvravae se za svaki element. Na primer, mod(2*J,n) e
pomnoiti svaki element u "J" sa 2, i onda reduce each element modulo "n". U MATLABU postoje standardne
"for" i "while" petlje, ali(kao i u slinim aplikacijama poput R), korienjem vektora se dobija kod koji se bre
izvrava.

Strukture

MATLAB ima strukture kao tipove podataka.Poto su sve promenljive u MATLABu nizovi, adekvatnije ime je
"strukturni niz". Naalost, MATLAB JIT ne podrava MATLAB strukture, zbog eg korienje struktura kota.

Funkcije

Pri kreiranju MATLAB funkcije, ime fajla treba da bude isto kao ime prve funkcije u fajlu. Validna imena
funkcija poinju slovom i mogu da sadre brojeve i donje crte. Funkcije su esto osetljive na mala i velika
slova.

Klase i objektno-orjentisano pr ogramiranje

MATLAB podrava objektno orjentisano programiranje ukljuujui klase , nasleivanje, pakete, senmatike
prosleivanja po vrednosti i senmatike prosleivanja po referenci. Ipak sintaksa se znatno razlikuje od ostalih
jezika. MATLAB ima vrednosne i referentne klase,

Ponaanje metoda je razliito za vrednosne i referentne klase. Na primer, pozivanje


object .method ();

moe da promeni bilo koji lan objekta samo ako je objekat referentne klase. Na primer:

classdef hello
methods
function greet(this)
disp('Hello!' )
end
end
end

Kada se stavi u fajl sa nazivom hello.m, ovo moe da se izvrava uz pomo sledeih komandi:

>> x = hello;
>> x.greet();
Hello!

Grafika i GUI(eng. graphical user interface)


MATLAB obuhvata razvoj aplikacija sa GUI.Sadri funkcije za crtanje grafika.Npr. funkcija plot moe biti
iskoriena za crtanje grafika od vektora x i y.Primenom funkcija surf,plot3,mesh se mogu dobiti 3D grafici.

Veza sa drugim jezicima


MATLAB moe da pozove funkcije napisane za programske jezike C i Fortan.Od 2014. dodata je dvostruka
povezanost sa Pajtonom. Biblioteke napisane u Perlu ili Javi mogu biti direktno pozvane iz MATLABa,a i
mnoge bibloteke iz MATLABA (npr. XML) su implementirane u Javi.Pozivanje MATLABA u Javi je
komplikovanije ali se me moe izvesti pomou MATLAB toolbox.

Licence
MATLAB je vlasnitvo firme MathWorks.Iako MATLAB proizvodi mogu razviti MATLAB funkcije koje
mogu biti koriene sa .NET ili Java okruenja budui razvoj e i dalje biti povezan sa MATLAB jezikom.

Alternative
MATLAB ima mnogo konkurentnih programa.Reklamni konkurenti ukljuuju Mathematica,TK Solver,Maple i
IDL.Postoje takodje i besplatni konkurenti GNU Octave,Scilab,FreeMat,Julia i SageMath koji se smatraju
najveim konkurentima MATLAB-a.Medju ostalima jezicima koji koriste nizove kao osnovne subjekte su
APL,Fortran 90 i vie,S-Lang.Tu su i biblioteke koje dodaju slinu funkcionalnost i ostalim jezicima kao to su
IT++ za C++, Perl Data Language za Perl, ILNumerics za .NET.GNU Octave se izdvajaju od ostalih
konkurenata,jer su one nadskup MATLAB-a.

Proirenje fajlova
MATLAB

.m

MATLAB kod(funkcija,kalsa)

.mat
MATLAB podaci(binarni fajlovi za uvanje promenljivih)

.fig

MATLAB figure(napravljene pomou GUIDE)

.mlapp

MATLAB aplikacije(napravljene pomou App Designer)

Simulnik

.mdl

Simulnik model

.slpx

Simulnik zatien model

Simspace

.ssc

Simscape model

MuPAD

.mu MuPAD code

Literarura

Gilat, Amos (2004). MATLAB: An Introduction with Applications 2nd Edition. John Wiley & Sons.
ISBN 978-0-471-69420-5.
Ferreira, A.J.M. (2009). MATLAB Codes for Finite Element Analysis. Springer. ISBN 978-1-4020-9199-
5.
Quarteroni, Alfio (2006). Scientific Computing with MATLAB and Octave. Springer. ISBN 978-3-540-
32612-0.
Lynch, Stephen (2004). Dynamical Systems with Applications using MATLAB. Birkhuser. ISBN 978-0-
8176-4321-8.

Spoljanje veze

MATLAB na Vikimedijinoj
ostavi.

Programski jezici
Ada Algol APL Asembler AWK Bejsik/VB C C++ C# Vala Kobol ColdFusion Common Lisp Ajfel Fokus
Fort Fortran Haskell IDL Java Javaskript Limbo Lisp Lua Matlab Matematika Modula-2 Objective C
OCaml Paskal Perl PHP Prolog Pajton R Rubi SAS SQL Scheme Smalltalk SISAL Tcl/Tk UML

Numeriki softver
Slobodni softver Advanced Simulation Library ADMB Chapel Euler Fortress FreeFem++ FreeMat Genius
Gmsh GNU Octave gretl Julia Maxima OpenFOAM R SageMath SALOME ScicosLab
Scilab X10
Vlasniki softver DADiSP GAUSS LabVIEW Maple Mathcad Mathematica MATLAB Speakeasy VisSim

Lista numerike analize softvera Poreenje numerike analize softvera

Statistiki softver

Softver za obradu slika


3D Slicer AFNI CellCognition CellProfiler DicomIR Endrov Fiji FMRIB Software Library
Slobodni softver FreeSurfer GemIdent GNU Octave ilastik ImageJ ITK IVT InVesalius ITK-SNAP
KNIME Mango OpenCV OsiriX VIGRA VXL
Vlasniki softver Amira Analyze Bitplane IDL Mathematica MATLAB Mimics MountainsMap Visage SDK

https://sr.wikipedia.org/w/index.php?title=MATLAB&oldid=15493998

7. 2017. 17:28 .
;
. .

You might also like