Inleiding tot MATLAB-functies

MATLAB Functies worden geschreven met verschillende coderegels die een variabele met een andere variabele relateren en elke uitvoer is precies gerelateerd aan een bepaalde invoer die een belangrijk onderdeel van een programmeertaal vormt. In de MATLAB-omgeving worden ze opgeslagen in een bepaald bestand zoals scriptbestanden, enz. Ze kunnen meer dan één invoerargument accepteren en kunnen ook meer dan één uitvoerargument retourneren. Ze werken op de gedefinieerde variabelen in hun vooraf gedefinieerde werkruimte, ook wel de lokale werkruimte genoemd.

Soorten functies in MATLAB

In Matlab kunnen functies worden gemaakt of gedefinieerd met behulp van de onderstaande syntaxis:

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

Hier is mijn plezier de functienaam die de invoerargumenten i1, i2..iN accepteert en uitvoer o1, o2… aan retourneert. De bovenstaande instructie moet in de eerste regel zijn en de functie declareren. Er zijn enkele regels die moeten worden gevolgd voor geldige functienamen en het opslaan van de functie:

  • Functienaam die begint met letters en cijfers, tekens of onderstrepingstekens kan bevatten, wordt als geldig beschouwd.
  • We kunnen de functie opslaan in een functiebestand dat functiedefinities bevat en de naam van het bestand moet overeenkomen met de eerste functienaam in het bestand.
  • We kunnen ook de functie opslaan die functiedefinities en opdrachten bevat. Aan het einde van het bestand moeten functies aanwezig zijn en de naam van het scriptbestand mag niet dezelfde naam hebben als de functie in het bestand.

Het eindwoord moet worden gebruikt om het einde van de functie aan te geven. Het is vereist als een functie in het bestand een geneste functie bevat of als een functie een lokale functie in het script en het functiebestand is. Functies werken in scripts in R2016b of hoger. Er zijn verschillende soorten functies die in MATLAB worden gebruikt. Ze zijn als volgt:

1. Anonieme functie

Het is de functie die niet is opgeslagen in een programmabestand, maar is gekoppeld aan de variabele waarvan het gegevenstype function_handle is. Het wordt gedefinieerd in een enkele instructie en heeft een willekeurig aantal invoer- of uitvoerargumenten. De syntaxis kan worden geschreven als:

(argumentlijst) uitdrukking

Voorbeeld:

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

Wanneer we de uitvoer uitvoeren, krijgen we het volgende resultaat:

RES1 = 6

RES2 = 12

RES3 = 20

We kunnen anonieme functies schrijven zonder ingangen of meerdere ingangen en uitgangen. Als de functie geen invoer heeft, kunnen we lege haakjes gebruiken om de anonieme functie aan te roepen. Enkele voorbeelden zijn

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. Lokale functies

Elk functiebestand bevat een primaire functie die op de eerste regel van de code verschijnt. Ze zijn zichtbaar voor functies in andere bestanden en kunnen worden opgeroepen in de opdrachtregel. Andere functies die aanwezig zijn in het bestand worden lokale functies genoemd. Ze kunnen niet worden opgeroepen vanaf de opdrachtregel en worden gezien als een bovenliggende of hoofdfunctie en functies die in hetzelfde bestand zijn geschreven. Ze worden ook wel subfuncties genoemd. Ze zijn equivalent aan subroutines zoals gebruikt in een andere programmeertaal. Ze kunnen ook in scriptbestanden worden geschreven zolang ze na de laatste regel van de scriptcode verschijnen.

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. Geneste functies

Functies die binnen een andere functie of bovenliggende functie zijn gedefinieerd, worden geneste functies genoemd. Ze kunnen de variabelen gebruiken of wijzigen die zijn gedefinieerd in de bovenliggende functie. Ze worden gedefinieerd binnen het bereik van de functie en hebben toegang tot de werkruimte waarin ze zijn gedefinieerd. Er zijn bepaalde vereisten waaraan elke geneste functie moet voldoen:

  • Voor alle functies is geen eindverklaring vereist. Om een ​​functie-eindverklaring te nesten, moet echter voor elke functie worden geschreven.
  • We kunnen geen geneste functies definiëren in besturingsopdrachten zoals if-else, switch case, etc.
  • Geneste functies kunnen direct op naam worden opgeroepen of met behulp van een willekeurige functiehandgreep.

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

4. Privéfuncties

Dit zijn de functies die alleen zichtbaar zijn voor een beperkte groep functies. Ze bevinden zich in subfuncties en worden aangeduid met het trefwoord 'privé'. Ze zijn alleen zichtbaar voor functies die aanwezig zijn in de bovenliggende map of de functies in de map direct boven de privé-submap. Ze zijn handig wanneer we de reikwijdte van de functie willen beperken. We kunnen de privéfuncties niet vanaf de opdrachtregel of vanuit de functies buiten de bovenliggende map aanroepen.

Code :

function priv
disp(“Hello “)

Wijzig de map die een privémap bevat en wijzig de bestandsnaam om te presenteren
functie aanwezig
priv

Verander de map naar een willekeurige locatie en roep de huidige functie aan
Cadeau

Uitgang: "Hallo"

Conclusie - MATLAB-functies

MATLAB Functies kunnen worden gebruikt voor verschillende taken en scenario's. Ze vormen een integraal onderdeel van elke programmeertaal. Ze kunnen zowel wereldwijd worden benaderd door globale variabelen te gebruiken of door privéfuncties te gebruiken als we willen dat bepaalde informatie of inhoud privé is. Ze worden gebruikt in elke organisatie voor de zakelijke behoeften om aan de eisen te voldoen.

Aanbevolen artikelen

Dit is een handleiding voor de MATLAB-functies. Hier bespreken we de introductie van de MATLAB-functies en de soorten functies. U kunt ook onze andere voorgestelde artikelen doornemen voor meer informatie -

  1. Bessel-functies in MATLAB
  2. Anonieme functies in Matlab
  3. Wiskundige functies in C #
  4. Overdrachtsfuncties in Matlab
  5. Matlab-compiler | Toepassingen van Matlab Compiler
  6. Voorbeelden van Matlab AND Operator
  7. Volledige gids voor het wisselen van behuizing in PowerShell

Categorie: