Uvod u funkcije MATLAB-a
Funkcije MATLAB pišu se raznim linijama koda koje povezuju jednu varijablu s drugom varijablom i svaki je izlaz povezan upravo s jednim određenim ulazom koji čini važan dio bilo kojeg programskog jezika. U MATLAB okruženju pohranjuju se u određenu datoteku kao što su datoteke skripti itd. Mogu prihvatiti više od jednog ulaznog argumenta i mogu vratiti više od jednog izlaznog argumenta. Oni djeluju na definiranim varijablama u unaprijed definiranom radnom prostoru, poznatom kao lokalni radni prostor.
Vrste funkcija u MATLAB-u
U Matlabu, funkcije se mogu stvoriti ili definirati pomoću sintakse u nastavku:
function (o1, o2, …, oN) = myfun(i1, i2, i3, …, iN)
Ovdje mi je zabavno ime funkcije koja prihvaća ulazne argumente i1, i2..iN i vraća izlazne o1, o2… on. Gornja izjava trebala bi biti prva linija tijekom deklariranja funkcije. Postoje neka pravila koja se moraju pridržavati valjanih naziva funkcija i spremanja funkcije:
- Naziv funkcije koji započinje slovima abecede i može sadržavati broj, znakove ili podvlake, smatra se važećim.
- Funkciju možemo spremiti u funkcijsku datoteku koja sadrži definicije funkcije, a naziv datoteke mora odgovarati prvom nazivu funkcije u datoteci.
- Također možemo spremiti funkciju koja sadrži definicije i naredbe funkcija. Funkcije trebaju biti prisutne na kraju datoteke, a naziv datoteke skripte ne može imati isto ime kao funkcija u datoteci.
Za označavanje kraja funkcije treba koristiti ključnu riječ kraj. Zahtijeva se kada bilo koja funkcija u datoteci sadrži ugniježđenu funkciju ili je korištena funkcija lokalna funkcija unutar datoteke skripte i funkcije. Funkcije djeluju na skriptama u R2016b ili novijoj verziji. U MATLAB se koristi nekoliko vrsta funkcija. Oni su kako slijedi:
1. Anonimna funkcija
To je funkcija koja se ne pohranjuje u programsku datoteku, ali je povezana s varijablom čiji je tip podataka function_handle. Definirana je u jednoj izjavi i ima bilo koji broj ulaznih ili izlaznih argumenata. Sintaksa se može napisati kao:
(argumentovnik) izraz
Primjer:
(x, y) x*y;
res1=mul(2, 3)
res2=mul(4, 3)
res3=mul(4, 5)
Kad pokrenemo izlaz, dobivamo sljedeći rezultat:
res1 = 6
res2 = 12
res3 = 20
Anonimne funkcije možemo pisati bez ulaza ili s više ulaza i izlaza. Ako funkcija nema ulaza, za pozivanje anonimne funkcije možemo koristiti prazne zagrade. Neki su primjeri
1. curr= @() datestr(now);
d = curr()
Output: d= 22-Oct-2019 11:02:47curr= @() datestr(now);
d = curr()
Output: d= 22-Oct-2019 11:02:47
2. (x, y)(x+y);
x=4
y=7
z=myfun(x, y)
Output: z=11 (x, y)(x+y);
x=4
y=7
z=myfun(x, y)
Output: z=11
2. Lokalne funkcije
Svaka funkcionalna datoteka sadrži primarnu funkciju koja se pojavljuje u prvom retku koda. Vidljive su funkcijama u drugim datotekama i mogu se pozvati u naredbenom retku. Ostale funkcije koje se nalaze u datoteci nazivaju se lokalnim funkcijama. Ne možete ih pozvati iz naredbenog retka i vide se nadređenom ili glavnom funkcijom i funkcijama zapisanim u istoj datoteci. Poznate su i kao potfunkcije. Oni su ekvivalentni potprogramima koji se koriste u drugom programskom jeziku. Također se mogu pisati u datoteke skripta sve dok se pojavljuju nakon posljednjeg retka koda skripte.
function (avg, med) = mystats(y)
a= length(y);
avg = mymean(y, a);
med = mymedian(y, a);
end
function a = mymean(v, n) ---- Example of a local function
a = sum(v)/n;
end
3. Gnijezdene funkcije
Funkcije koje su definirane unutar druge funkcije ili roditeljske funkcije nazivaju se ugniježđene funkcije. Mogu koristiti ili mijenjati varijable koje su definirane u roditeljskoj funkciji. Oni su definirani unutar obima funkcije i mogu pristupiti radnom prostoru u kojem su definirani. Postoje određeni zahtjevi kojih se svaka ugniježđena funkcija treba pridržavati:
- Sve funkcije ne zahtijevaju krajnju izjavu. Međutim, za gniježđenje bilo koje funkcije funkcije treba napisati za svaku funkciju.
- Ne možemo definirati ugniježđene funkcije unutar bilo kakvih kontrolnih izjava poput if-else, prekidača itd.
- Gnijezdene funkcije mogu se izravno nazvati imenom ili upotrebom bilo koje funkcijske ručke.
function current
nestfun1
nestfun2
function nestfun1
x = 7;
end
function nestfun2
x = 4;
end
4. Privatne funkcije
To su funkcije koje su vidljive samo ograničenoj grupi funkcija. Oni se nalaze u potfunkcijama i označeni su ključnom riječi "privatno". Vidljive su samo funkcije koje su prisutne u nadređenoj mapi ili funkcije u mapi neposredno iznad privatne podmape. Korisni su kada želimo ograničiti opseg funkcije. Ne možemo pozvati privatne funkcije iz naredbenog retka ili iz funkcija izvan roditeljske mape.
Šifra :
function priv
disp(“Hello “)
Promijenite mapu koja sadrži privatnu mapu i promijenite sadašnje ime datoteke
prisutna funkcija
privatni
Promijenite mapu na bilo koje mjesto i nazovite prisutnu funkciju
predstaviti
Izlaz: "Pozdrav"
Zaključak - MATLAB funkcije
MATLAB funkcije mogu se koristiti za nekoliko zadataka i scenarija. Oni su sastavni dio bilo kojeg programskog jezika. Njima se može pristupiti i na globalnoj razini pomoću globalnih varijabli ili korištenjem privatnih funkcija ako želimo da neke informacije ili sadržaj budu privatni. Koriste se u svakoj organizaciji za potrebe poslovanja radi ispunjavanja zahtjeva.
Preporučeni članci
Ovo je vodič o funkcijama MATLAB. Ovdje ćemo raspravljati o Uvođenju funkcija MATLAB i vrstama funkcija. Možete i proći naše druge predložene članke da biste saznali više -
- Bessel funkcije u MATLAB-u
- Anonimne funkcije u Matlabu
- Matematičke funkcije u C #
- Prijenosne funkcije u Matlabu
- Kompletnik Matlab | Primjene Matlab sastavljača
- Primjeri Matlaba I operatera
- Kompletan vodič za prebacivanje kućišta u PowerShell