Introduktion til MATLAB-funktioner
MATLAB-funktioner er skrevet med forskellige kodelinjer, der relaterer en variabel til en anden variabel, og hvert output er relateret nøjagtigt til et bestemt input, der udgør en vigtig del af ethvert programmeringssprog. I MATLAB-miljø gemmes de i en bestemt fil som script-filer osv. De kan acceptere mere end et inputargument og kan også returnere mere end et outputargument. De fungerer på de definerede variabler i deres foruddefinerede arbejdsområde, kendt som det lokale arbejdsområde.
Typer af funktioner i MATLAB
I Matlab kan funktioner oprettes eller defineres ved hjælp af nedenstående syntaks:
function (o1, o2, …, oN) = myfun(i1, i2, i3, …, iN)
Her er min sjov funktionsnavnet, der accepterer input-argumenterne i1, i2..iN og returnerer output o1, o2… på. Ovenstående udsagn skal være første linje, mens funktionen erklæres. Der er nogle regler, der skal følges for gyldige funktionsnavne og gemme funktionen:
- Funktionsnavn, der begynder med alfabeter og kan indeholde nummer, tegn eller understregninger betragtes som gyldigt.
- Vi kan gemme funktionen i en funktionsfil, der indeholder funktionsdefinitioner, og filens navn skal matche det første funktionsnavn i filen.
- Vi kan også gemme den funktion, der indeholder funktionsdefinitioner og kommandoer. Funktioner skal være til stede i slutningen af filen, og scriptfilnavnet kan ikke have det samme navn som funktionen i filen.
Slutnøgleordet skal bruges til at indikere slutningen af funktionen. Det kræves, når en funktion i filen indeholder en indlejret funktion, eller den anvendte funktion er en lokal funktion i script- og funktionsfilen. Funktioner fungerer i scripts i R2016b eller nyere. Der er flere typer funktioner, der bruges i MATLAB. De er som følger:
1. Anonym funktion
Det er den funktion, der ikke er gemt i en programfil, men den er tilknyttet den variabel, hvis datatype er funktionshåndtering. Det er defineret i en enkelt sætning og har et hvilket som helst antal input- eller output-argumenter. Syntaks kan skrives som:
(argumentliste) udtryk
Eksempel:
(x, y) x*y;
res1=mul(2, 3)
res2=mul(4, 3)
res3=mul(4, 5)
Når vi kører output, får vi følgende resultat:
RES1 = 6
RES2 = 12
RES3 = 20
Vi kan skrive anonyme funktioner uden indgange eller flere indgange og udgange. Hvis funktionen ikke har noget input, kan vi bruge tom parentes til at kalde den anonyme funktion. Nogle af eksemplerne er
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. Lokale funktioner
Enhver funktionsfil indeholder en primær funktion, der vises på den første linje i koden. De er synlige for funktioner i andre filer og kan kaldes på kommandolinjen. Andre funktioner, der er til stede i filen, kaldes lokale funktioner. De kan ikke kaldes fra kommandolinjen og ses for en overordnet eller hovedfunktion og funktioner skrevet i den samme fil. De er også kendt som underfunktioner. De svarer til underprogrammer, som de bruges i et andet programmeringssprog. De kan også skrives i scriptfiler, så længe de vises efter den sidste linje i scriptkoden.
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. Indlejrede funktioner
Funktioner, der er defineret inden for en anden funktion eller forældrefunktion kaldes nestede funktioner. De kan bruge eller ændre de variabler, der er defineret i overordnet funktion. De er defineret inden for omfanget af funktionen og har adgang til det arbejdsområde, hvori de er defineret. Der er visse krav, som hver indlejret funktion skal følge:
- Alle funktionerne kræver ikke slutangivelsen. For at rede enhver funktion skal slutangivelsen skrives for hver funktion.
- Vi kan ikke definere indlejrede funktioner inde i nogen kontrolangivelser som if-else, switch case osv.
- Indlejrede funktioner kan kaldes direkte ved navn eller ved hjælp af ethvert funktionshåndtag.
function current
nestfun1
nestfun2
function nestfun1
x = 7;
end
function nestfun2
x = 4;
end
4. Private funktioner
Det er de funktioner, der kun er synlige for en begrænset gruppe af funktioner. De bor i underfunktioner og betegnes ved hjælp af nøgleordet "privat". De er kun synlige for funktioner, der findes i den overordnede mappe eller funktionerne i mappen umiddelbart over den private undermappe. De er nyttige, når vi vil begrænse omfanget af funktionen. Vi kan ikke kalde de private funktioner fra kommandolinjen eller fra funktionerne uden for overordnet mappe.
Kode :
function priv
disp(“Hello “)
Skift den mappe, der indeholder en privat mappe, og skift filnavnet til at blive vist
funktion til stede
priv
Skift mappen til ethvert sted, og ring til den aktuelle funktion
til stede
Output: ”Hej”
Konklusion - MATLAB-funktioner
MATLAB-funktioner kan bruges til flere opgaver og scenarier. De udgør en integreret del af ethvert programmeringssprog. Du kan få adgang til dem begge globalt ved hjælp af globale variabler eller ved hjælp af private funktioner, hvis vi ønsker, at nogle oplysninger eller indhold skal være private. De bruges i enhver organisation til forretningsbehov for at opfylde kravene.
Anbefalede artikler
Dette er en guide til MATLAB-funktionerne. Her diskuterer vi introduktionen af MATLAB-funktionerne og typerne af funktioner. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -
- Bessel-funktioner i MATLAB
- Anonyme funktioner i Matlab
- Matematiske funktioner i C #
- Overfør funktioner i Matlab
- Matlab Compiler | Anvendelser af Matlab Compiler
- Eksempler på Matlab AND Operator
- Komplet guide til at skifte sag i PowerShell