Funkcie MATLABu 4 Typy funkcií v MATLABe a príklady

Obsah:

Anonim

Úvod do funkcií MATLABu

Funkcie MATLABu sa píšu s rôznymi riadkami kódu, ktoré súvisia s jednou premennou s inou premennou a každý výstup sa týka presne jedného konkrétneho vstupu, ktorý tvorí dôležitú súčasť ľubovoľného programovacieho jazyka. V prostredí MATLABu sú uložené v určitom súbore, ako sú súbory skriptov atď. Môžu akceptovať viac ako jeden vstupný argument a môžu tiež vrátiť viac ako jeden výstupný argument. Pracujú na definovaných premenných vo svojom preddefinovanom pracovnom priestore, známym ako miestny pracovný priestor.

Typy funkcií v MATLABe

V Matlabe môžu byť funkcie vytvorené alebo definované pomocou nasledujúcej syntaxe:

function (o1, o2, …, oN) = myfun(i1, i2, i3, …, iN)

Moja zábava je tu názov funkcie, ktorý akceptuje vstupné argumenty i1, i2..iN a vracia výstup o1, o2… on. Vyššie uvedené vyhlásenie by malo byť v prvom riadku pri deklarovaní funkcie. Existujú niektoré pravidlá, ktoré je potrebné dodržiavať pri platných názvoch funkcií a ukladaní funkcie:

  • Názov funkcie, ktorý začína na abecedách a môže obsahovať čísla, znaky alebo podčiarknutia, sa považuje za platný.
  • Funkciu môžeme uložiť do funkčného súboru, ktorý obsahuje definície funkcií a názov súboru sa musí zhodovať s prvým názvom funkcie v súbore.
  • Môžeme tiež uložiť funkciu, ktorá obsahuje definície funkcií a príkazy. Funkcie by mali byť na konci súboru a názov súboru skriptu nemôže mať rovnaké meno ako funkcia v súbore.

Koncové kľúčové slovo by sa malo použiť na označenie konca funkcie. Vyžaduje sa, keď niektorá funkcia v súbore obsahuje vnorenú funkciu alebo použitá funkcia je lokálna funkcia v skripte a funkčnom súbore. Funkcie fungujú v skriptoch v R2016b alebo novšom. Existuje niekoľko typov funkcií používaných v MATLABe. Sú to tieto:

1. Anonymná funkcia

Je to funkcia, ktorá nie je uložená v programovom súbore, ale je asociovaná s premennou, ktorej typ údajov je function_handle. Je definovaný v jedinom príkaze a má ľubovoľný počet vstupných alebo výstupných argumentov. Syntax môže byť napísaná ako:

(argumentlist) výraz

Príklad:

(x, y) x*y;
res1=mul(2, 3)
res2=mul(4, 3)
res3=mul(4, 5)

Keď spustíme výstup, dostaneme nasledujúci výsledok:

RES1 = 6

res2 = 12

res3 = 20

Môžeme písať anonymné funkcie bez vstupov alebo viacerých vstupov a výstupov. Ak funkcia nemá žiadny vstup, potom môžeme na vyvolanie anonymnej funkcie použiť prázdnu zátvorku. Niektoré z príkladov sú

1. curr= @() datestr(now);
d = curr()
Output: d= 22-Oct-2019 11:02:47
curr= @() 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. Miestne funkcie

Každý funkčný súbor obsahuje primárnu funkciu, ktorá sa objaví v prvom riadku kódu. Sú viditeľné pre funkcie v iných súboroch a dajú sa zavolať v príkazovom riadku. Ostatné funkcie, ktoré sú v súbore, sa nazývajú miestne funkcie. Nemôžu byť vyvolané z príkazového riadku a sú zobrazené rodičovi alebo hlavnej funkcii a funkciám zapísaným v tom istom súbore. Sú známe aj ako podfunkcie. Sú rovnocenné podprogramom používaným v inom programovacom jazyku. Môžu sa zapisovať aj do súborov skriptov, pokiaľ sa objavia za posledným riadkom kódu skriptu.

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. Vnorené funkcie

Funkcie definované v inej funkcii alebo nadradenej funkcii sa nazývajú vnorené funkcie. Môžu používať alebo modifikovať premenné, ktoré sú definované v nadradenej funkcii. Sú definované v rámci funkcie a majú prístup k pracovnému priestoru, v ktorom sú definované. Každá vnorená funkcia by mala spĺňať určité požiadavky:

  • Všetky funkcie nevyžadujú záverečný príkaz. Aby však bolo možné vnoriť akékoľvek koncové vyhlásenie o funkcii, malo by byť napísané pre každú funkciu.
  • Nemôžeme definovať vnorené funkcie vo vnútri žiadnych ovládacích príkazov ako if-else, switch case atď.
  • Vnorené funkcie je možné volať priamo podľa mena alebo pomocou ľubovoľného handle funkcie.

function current
nestfun1
nestfun2
function nestfun1
x = 7;
end
function nestfun2
x = 4;
end

4. Súkromné ​​funkcie

Sú to funkcie, ktoré sú viditeľné iba pre obmedzenú skupinu funkcií. Bývajú v podfunkciách a sú označené pomocou kľúčového slova „súkromné“. Zobrazujú sa iba pre funkcie, ktoré sa nachádzajú v nadradenom priečinku alebo pre funkcie v priečinku, ktoré sa nachádzajú bezprostredne nad súkromným podpriečinkom. Sú užitočné, keď chceme obmedziť rozsah funkcie. Nemôžeme volať súkromné ​​funkcie z príkazového riadku alebo z funkcií mimo nadradeného priečinka.

Kód :

function priv
disp(“Hello “)

Zmeňte priečinok, ktorý obsahuje súkromný priečinok, a zmeňte názov súboru na súčasný
prítomná funkcia
priv

Zmeňte priečinok na ľubovoľné miesto a zavolajte súčasnú funkciu
prítomný

Výstup: „Ahoj“

Záver - funkcie MATLABu

Funkcie MATLAB je možné použiť na niekoľko úloh a scenárov. Sú neoddeliteľnou súčasťou každého programovacieho jazyka. K nim je možné pristupovať globálne pomocou globálnych premenných alebo pomocou súkromných funkcií, ak chceme, aby niektoré informácie alebo obsah boli súkromné. Používajú sa v každej organizácii, aby podnik splnil požiadavky.

Odporúčané články

Toto je sprievodca funkciami MATLAB. Tu diskutujeme o zavedení funkcií MATLABu a druhoch funkcií. Viac informácií nájdete aj v ďalších navrhovaných článkoch -

  1. Besselove funkcie v MATLABe
  2. Anonymné funkcie v Matlabe
  3. Matematické funkcie v C #
  4. Prenos funkcií v Matlabe
  5. Kompilátor Matlab Aplikácie Matlab Compiler
  6. Príklady Matlabu A Operátora
  7. Kompletný sprievodca prepínaním skriniek v PowerShell