MATLAB funkciók 4 A MATLAB funkcióinak típusai és példák

Tartalomjegyzék:

Anonim

Bevezetés a MATLAB funkciókba

A MATLAB funkciók különböző kódsorokkal vannak írva, amelyek az egyik változót a másikhoz viszonyítják, és minden kimenet pontosan egy adott bemenethez kapcsolódik, amely minden programozási nyelv fontos részét képezi. A MATLAB környezetben egy bizonyos fájlban tárolódnak, például szkript fájlok stb. Egynél több bemeneti argumentumot is elfogadhatnak, és egynél több kimeneti argumentumot is visszaadhatnak. Az előre definiált munkaterületen (a helyi munkaterületként ismert) meghatározott változókon működnek.

A MATLAB funkcióinak típusai

A Matlabban a függvények az alábbi szintaxissal hozhatók létre vagy definiálhatók:

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

Itt szórakozásom a funkciónév, amely elfogadja az i1, i2..iN bemeneti argumentumokat, és az o1, o2… kimenetet adja vissza. A fenti kijelentésnek első sorban kell lennie, miközben deklarálja a funkciót. Van néhány szabály, amelyet be kell tartani az érvényes funkciónevekhez és a funkció mentéséhez:

  • A funkciónév, amely betűkkel kezdődik és számot, karaktereket vagy aláhúzást tartalmazhat, érvényesnek tekinthető.
  • A funkciót olyan funkciófájlba menthetjük, amely tartalmazza a funkciódefiníciókat, és a fájl nevének meg kell egyeznie a fájlban lévő első funkciónévvel.
  • Tárolhatjuk azt a funkciót is, amely funkciódefiníciókat és parancsokat tartalmaz. A funkcióknak a fájl végén kell lennie, és a szkriptfájl neve nem lehet azonos nevű, mint a fájlban szereplő funkció.

A vég kulcsszót kell használni a funkció végének jelölésére. Ez akkor szükséges, ha a fájl bármely funkciója beágyazott funkciót tartalmaz, vagy a használt függvény egy helyi függvény a szkriptben és a függvényfájlban. A függvények az R2016b vagy újabb szkriptekben működnek. A MATLAB-ban többféle funkció használható. Ezek a következők:

1. Anonim funkció

Ez a funkció nem tárolódik egy programfájlban, de hozzá van rendelve a változóhoz, amelynek adattípusa a function_handle. Ez egyetlen utasításban van meghatározva, és tetszőleges számú bemeneti vagy kimeneti argumentumot tartalmaz. A szintaxis így írható:

(argumentumlista) kifejezés

Példa:

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

A kimenet futtatásakor a következő eredményt kapjuk:

res1 = 6

res2 = 12

RES3 = 20

Anonim funkciókat tudunk írni bemenetek vagy több bemenet és kimenet nélkül. Ha a függvénynek nincs bemenete, akkor üres zárójelben használhatjuk az anonim függvényt. Néhány példa erre

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. Helyi funkciók

Bármely funkciófájl tartalmaz egy elsődleges funkciót, amely a kód első sorában jelenik meg. Láthatók más fájlok funkciói számára, és a parancssorban meghívhatók. A fájlban található egyéb funkciókat helyi funkcióknak hívjuk. Nem hívhatók meg a parancssorból, és egy szülő vagy fő funkció és ugyanazon fájlban írt függvények számára láthatók. Alfunkciókként is ismertek. Ezek megegyeznek a másik programozási nyelvben használt alprogramokkal. Szkriptfájlokba is írhatók, feltéve, hogy a szkriptkód utolsó sora után megjelennek.

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. Beágyazott funkciók

Egy másik függvényben vagy szülőfunkcióban meghatározott funkciókat beágyazott funkcióknak hívunk. Használhatják vagy módosíthatják a szülőfüggvényben meghatározott változókat. Ezeket a funkció keretein belül határozzák meg, és hozzáférhetnek a meghatározott munkaterülethez. Vannak bizonyos követelmények, amelyeket minden beágyazott függvénynek be kell tartania:

  • Az összes funkció nem igényli a záró mondatot. Bármely függvény beágyazására azonban minden függvényre be kell írni a végkifejezést.
  • Nem definiálhatunk beágyazott függvényeket egyetlen vezérlőmondatban sem, például az if-else, kapcsoló eset stb.
  • A beágyazott funkciókat közvetlenül névvel vagy bármilyen függvénykezelővel meg lehet hívni.

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

4. Privát funkciók

Ezek azok a funkciók, amelyek csak a funkciók korlátozott csoportja számára láthatók. Ezek alfunkciókban vannak, és a „privát” kulcsszóval vannak megjelölve. Csak azoknál a funkcióknál láthatók, amelyek a szülőmappában vannak, vagy a közvetlenül a magánmappa felett található mappában található funkciókhoz. Hasznosak, ha korlátozni akarjuk a funkció hatókörét. A privát funkciókat nem hívhatjuk meg a parancssorból vagy a szülőmappán kívüli funkciókból.

Kód :

function priv
disp(“Hello “)

Cserélje ki azt a mappát, amely magán mappát tartalmaz, és változtassa meg a jelenlegi fájlnevet
jelen van
priv

Változtassa meg a mappát bármilyen helyre, és hívja meg a jelenlegi funkciót
jelenlegi

Kimenet: “Hello”

Következtetés - MATLAB funkciók

A MATLAB funkciók számos feladathoz és forgatókönyvhöz felhasználhatók. Minden programozási nyelv szerves részét képezik. Globálisan is elérhetők globális változók vagy privát függvények használatával, ha bizonyos információk vagy tartalmak privát jellegűek. Ezeket minden szervezetben használják az üzleti igények kielégítésére.

Ajánlott cikkek

Ez egy útmutató a MATLAB funkciókhoz. Itt tárgyaljuk a MATLAB funkciók bevezetését és a funkciók típusait. A további javasolt cikkeken keresztül további információkat is megtudhat -

  1. Bessel-funkciók a MATLAB-ban
  2. Anonim funkciók a Matlab-ban
  3. C matematikai funkciók
  4. Funkciók átvitele a Matlab-ban
  5. Matlab fordító | A Matlab Compiler alkalmazásai
  6. Példák a Matlab-ra és az operátorra
  7. Teljes útmutató az esetváltáshoz a PowerShell-ben