Next: 3.5.1 Prosljeđivanje varijabli
Up: 3. Programi i funkcije
Previous: 3.4.1 Klasa polinoma
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: 3.5.1 Prosljeđivanje varijabli
Up: 3. Programi i funkcije
Previous: 3.4.1 Klasa polinoma
Milan Vrdoljak, 2007-10-15