next up previous contents
Next: 3.5.1 Prosljeđivanje varijabli Up: 3. Programi i funkcije Previous: 3.4.1 Klasa polinoma

3.5 Tipovi funkcija

U ovom poglavlju upoznali smo se s osnovnim tipom MATLAB funkcije koja je definirana M-datotekom. Tako definirana funkcija može biti različitog tipa: osim primarnog tipa kojeg smo razmatrali; podfunkcije (definirane unutar primarnih funkcija i ne vide se izvana), privatne (vidljive samo određenim funkcijama), funkcije s preusmjerivanjem (engl. overloaded functions, funkcije koje ovisno o tipu ulaza pozivaju različite funkcije), ugnjezđene funkcije (engl. nested) i MATLAB ugrađene funkcije (engl. built-in). Ovdje su ovi tipovi funkcija samo informativno navedeni i o njima neće biti više detalja.

Pored oblika funkcije kroz M-datoteku postoji i tip varijable - funkcijske varijable (engl. function handle)3.3. Osnovne prednost primjene funkcijske varijable su: mogućnost prenosa funkcije (engl. function handle) kao ulazne varijable drugoj funkciji, prilagodba i odabir funkcije odgovarajućeg tipa ulazne varijable, mogućnost pristupa podfunkcijama i privatnim funkcijama, poboljšane performanse kod uzastopnog izvršavanja. Funkcijsku varijablu definira se primjenom znaka @ ispred naziva funkcije

>> fhandle = @average;
Evaluacija funkcije fhandle može se provesti primjenom funkcije feval
>> feval(fhandle,0:0.1:1);
>> average(0:0.1:1);
Pri tome gornje naredbe daju isti rezultat. Pored ovog primjera postoje funkcije koje kao ulazne varijable imaju funkcijske varijable, npr. za određivanje minimuma i nultočke funkcije, optimizaciju, numeričku integraciju i za obične diferencijalne jednadžbe.



... handle)3.3
Uvedene u verziji 6, no u verziji 7 proširena je primjena na novi tip funkcije - anonimne funkcije: koje je moguće definirati u jednoj naredbi.


Podpoglavlja
next up previous contents
Next: 3.5.1 Prosljeđivanje varijabli Up: 3. Programi i funkcije Previous: 3.4.1 Klasa polinoma
Milan Vrdoljak, 2007-10-15