MATLAB
MATLAB je okruženje za numeričke proračune i programski jezik četvrte generacije koji je razvila firma -MathWorks. MATLAB omogućava lako manipulisanje matricama, prikazivanje funkcija i fitovanje, implementaciju algoritama, stvaranje grafičkog korisničkog interfejsa kao i povezivanje sa programima pisanim u drugim jezicima među kojima su C, C++, C#, Java, Fortran i Python. MATLAB je nastao kao skraćenica za „MATrix LABoratory“ („laboratorija za matrice“). Izumeo ga je kasnih 1970ih Kliv Moler (engl.- Cleve Moler), šef katedre za informatiku na Univerzitetu „Novi Meksiko“. Iako je MATLAB namenjen za numeričke proračune ali opciona kutija za alat koristi MuPAD računarski algebarski sistem čime se dobija pristup simboličkom račumanju. MATLAB je moguće nabaviti zajedno sa Simulinkom kao i brojnim dodacima. Dodaci su svrstani po sledećim kategorijama:
Procenjeno je 2004. godine da preko milion ljudi zapošljenih u industriji i na univerzitetima koristi MATLAB.[тражи се извор] IstorijaMATLAB 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 proširio na druge univerzitete i dobio veliku podrsku od strane ljudi koji se bave primenjenom matematikom. Inženjer Džek Litl (engl. -Jack Little) je u Molnerovoj poseti Stendford Univerzitetu 1983. uvideo komercijalni potencijal MATLABa. On se udružio sa Molnerom i Stivom Bangertom (engl.- Steve Bangert) i preradio MATLAB u C programskom jeziku. Zajedno su 1984. osnovali kompaniju MathWorks. Matlab je ponovo prerađen 2000. godine za lakši rad sa matricama. SintaksaMATLAB aplikacija je napravljena oko MATLAB skriptnog jezika. MATLAB aplikacija se najčešće koristi kao interfejs za izvršavanje fajlova u MATLAB programskom jeziku. Promenljive
Promenljive se definišu pomoću opratora, >> 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 definiše korišćenjem tri vrdnosti između kojih se nalazi dvotačka: init >> array = 1:2:9
array =
1 3 5 7 9
definiše promenljivu >> array = 1:3:9
array =
1 4 7
increment vrednost može da se izostavi i tada se korisi 1 kao podrazumevana vrednost. >> ari = 1:5
ari =
1 2 3 4 5
dodeljuje promenljivoj >> 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
Jedinična matrica veličine n može da se generiš funkcijom eye, i matrice bilo koje veličine sa samo nulama i jedinicama mogu da se generišu 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
Većina MATLAB funkcija prihvata matrice i izvršavaće se za svaki element. Na primer, StruktureMATLAB ima strukture kao tipove podataka. Pošto su sve promenljive u MATLABu nizovi, adekvatnije ime je "strukturni niz". Nažalost, MATLAB JIT ne podržava MATLAB strukture, zbog čeg korišćenje struktura košta. FunkcijePri kreiranju MATLAB funkcije, ime fajla treba da bude isto kao ime prve funkcije u fajlu. Validna imena funkcija počinju slovom i mogu da sadrže brojeve i donje crte. Funkcije su često osetljive na mala i velika slova. Klase i objektno-orijentisano programiranjeMATLAB podržava objektno orijentisano programiranje uključujući klase , nasleđivanje, pakete, senmatike prosleđivanja po vrednosti i senmatike prosleđivanja po referenci. Ipak sintaksa se znatno razlikuje od ostalih jezika. MATLAB ima vrednosne i referentne klase, Ponašanje metoda je različito za vrednosne i referentne klase. Na primer, pozivanje object.method();
može 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 >> x = hello;
>> x.greet();
Hello!
Grafika i GUI(eng. graphical user interface)MATLAB obuhvata razvoj aplikacija sa GUI.Sadrži funkcije za crtanje grafika.Npr. funkcija plot može biti iskorišćena za crtanje grafika od vektora x i y.Primenom funkcija surf,plot3,mesh se mogu dobiti 3D grafici. Veza sa drugim jezicimaMATLAB može 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 može izvesti pomoću MATLAB toolbox. LicenceMATLAB je vlasništvo firme MathWorks.Iako MATLAB proizvodi mogu razviti MATLAB funkcije koje mogu biti korišćene sa .NET ili Java okruženja budući razvoj će i dalje biti povezan sa MATLAB jezikom. AlternativeMATLAB ima mnogo konkurentnih programa.Reklamni konkurenti uključuju Mathematica,TK Solver,Maple i IDL.Postoje takodje i besplatni konkurenti GNU Octave,Scilab,FreeMat,Julia i SageMath koji se smatraju najvećim konkurentima MATLAB-a.Medju ostalima jezicima koji koriste nizove kao osnovne subjekte su APL,Fortran 90 i više,S-Lang.Tu su i biblioteke koje dodaju sličnu 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. Proširenje fajlovaMATLAB .m MATLAB kod(funkcija,kalsa) .mat MATLAB podaci(binarni fajlovi za čuvanje promenljivih) .fig MATLAB figure(napravljene pomoću GUIDE) .mlapp MATLAB aplikacije(napravljene pomoću App Designer) Simulnik .mdl Simulnik model .slpx Simulnik zaštićen model Simspace .ssc Simscape model MuPAD .mu MuPAD code Literarura
Spoljašnje veze |
Portal di Ensiklopedia Dunia